[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/rec-mode eea5220 03/98: rec-mode: initial version of re
From: |
Stefan Monnier |
Subject: |
[elpa] externals/rec-mode eea5220 03/98: rec-mode: initial version of rec-cmd-compile |
Date: |
Thu, 12 Nov 2020 13:18:29 -0500 (EST) |
branch: externals/rec-mode
commit eea522021fcefc7e2ba2c9945bcab02736587f79
Author: Jose Marchesi <jco@wilhelm.(none)>
Commit: Antoine Kalmbach <ane@iki.fi>
rec-mode: initial version of rec-cmd-compile
---
etc/rec-mode.el | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/etc/rec-mode.el b/etc/rec-mode.el
index ddef01e..d4bffe9 100644
--- a/etc/rec-mode.el
+++ b/etc/rec-mode.el
@@ -30,6 +30,8 @@
;;; Code:
+(require 'compile)
+
;;;; Customization
(defgroup rec-mode nil
@@ -49,6 +51,9 @@ Valid values are `edit' and `navigation'. The default is
`edit'"
(defvar rec-recinf "recinf"
"Name of the 'recinf' utility from the GNU recutils.")
+(defvar rec-recfix "recfix"
+ "Name of the 'recfix' utility from the GNU recutils.")
+
;;;; Variables and constants that the user does not want to touch (really!)
(defconst rec-keyword-rec "%rec"
@@ -111,6 +116,7 @@ Valid values are `edit' and `navigation'. The default is
`edit'"
(define-key map "\C-cl" 'rec-cmd-sel)
(define-key map "\C-cs" 'rec-cmd-search)
(define-key map "\C-cm" 'rec-cmd-trim-field-value)
+ (define-key map "\C-cc" 'rec-cmd-compile)
(define-key map [remap move-beginning-of-line] 'rec-cmd-beginning-of-line)
(define-key map (kbd "TAB") 'rec-cmd-goto-next-field)
(define-key map (concat "\C-c" (kbd "RET")) 'rec-cmd-jump)
@@ -132,6 +138,7 @@ Valid values are `edit' and `navigation'. The default is
`edit'"
(define-key map "l" 'rec-cmd-sel)
(define-key map "s" 'rec-cmd-search)
(define-key map "m" 'rec-cmd-trim-field-value)
+ (define-key map "c" 'rec-cmd-compile)
(define-key map "\C-ct" 'rec-find-type)
(define-key map [remap move-beginning-of-line] 'rec-cmd-beginning-of-line)
(define-key map "#" 'rec-cmd-count)
@@ -1534,6 +1541,20 @@ records of the current type"
(rec-delete-field)
(rec-insert-field field))))
+(defun rec-cmd-compile ()
+ "Compile the current file with recfix."
+ (interactive)
+ (let ((cur-buf (current-buffer))
+ (cmd (concat rec-recfix " "))
+ (tmpfile (make-temp-file "rec-mode-")))
+ (if buffer-file-name
+ (setq cmd (concat cmd buffer-file-name))
+ (with-temp-file (make-temp-file "rec-mode-")
+ (insert-buffer cur-buf))
+ (setq cmd (concat cmd tmpfile)))
+ (compilation-start cmd)))
+
+
(defun rec-cmd-beginning-of-line ()
"Move the point to the beginning of the current line.
- [elpa] externals/rec-mode d505c30 61/98: rec-mode: visiting an empty file works again., (continued)
- [elpa] externals/rec-mode d505c30 61/98: rec-mode: visiting an empty file works again., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 903c1dc 59/98: rec-mode: check for the validity of the contents of the buffers before going to navigation mode., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 979fcef 69/98: ob-rec.el: support for :groupby and :join added., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 34714d3 85/98: rec-mode: fix typo and run the actual hooks., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode e1ad9fe 84/98: rec-mode: fix setq typo, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode e4419ae 87/98: Copyright years updated to 2019., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 105ff13 88/98: Updated copyright years, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 053f28a 90/98: Lexical binding, style and compatibility fixes, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode cd42c9f 93/98: Docstring improvements (via checkdoc), Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode c0ae8da 96/98: Loop fix and autoload cookie, docstring clarifications, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode eea5220 03/98: rec-mode: initial version of rec-cmd-compile,
Stefan Monnier <=
- [elpa] externals/rec-mode de7c261 12/98: Copyright year updated., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode c92fd4c 15/98: Highlight %sort, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode fd8fdd3 10/98: auto added to rec-font-lock-keywords in rec-mode.el, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 011411c 28/98: rec-mode: several functions to support field types., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 5666b5d 27/98: rec-mode: misc fixes., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode f7b30a1 34/98: rec-mode: folding of fields., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode cdf4a16 48/98: rec-mode: rec-cmd-count now suggests a default selection expression when invoked with a numeric prefix., Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 033a600 64/98: rec-mode: new constant rec-mode-version, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode 460a48d 65/98: copyright years updated in some files, Stefan Monnier, 2020/11/12
- [elpa] externals/rec-mode a997b92 70/98: src, doc, elisp: remove support for hyphens in field names., Stefan Monnier, 2020/11/12