monnier pushed a commit to branch master
in repository elpa.
commit 60233ece2e433f888028e8f432730f2f5f3fa1db
Author: Teemu Likonen <[email protected]>
Date: Sun Jan 2 10:43:39 2011 +0000
Siirretään makrojen määritykset samaan paikkaan
---
wcheck-mode.el | 69 +++++++++++++++++++++++++++++--------------------------
1 files changed, 36 insertions(+), 33 deletions(-)
diff --git a/wcheck-mode.el b/wcheck-mode.el
index eb4e1a8..df9fe82 100644
--- a/wcheck-mode.el
+++ b/wcheck-mode.el
@@ -562,6 +562,42 @@ This is used when language does not define a face."
"Process name for `wcheck-mode'.")
+;;; Macros
+
+
+(defmacro wcheck-loop-over-reqs-engine (key var &rest body)
+ `(dolist (,var (delq nil (mapcar (lambda (buffer)
+ (when (wcheck-buffer-data-get
+ :buffer buffer ,key)
+ buffer))
+ (wcheck-buffer-data-get-all :buffer))))
+ (when (buffer-live-p ,var)
+ (with-current-buffer ,var
+ ,@body))))
+
+(defmacro wcheck-loop-over-read-reqs (var &rest body)
+ `(wcheck-loop-over-reqs-engine :read-req ,var ,@body))
+(defmacro wcheck-loop-over-paint-reqs (var &rest body)
+ `(wcheck-loop-over-reqs-engine :paint-req ,var ,@body))
+
+
+(defmacro wcheck-with-language-data (language bindings &rest body)
+ (let ((lang-var (make-symbol "--wck-language--")))
+ `(let* ((,lang-var ,(cadr language))
+ ,@(when (car language)
+ `((,(car language) ,lang-var)))
+ ,@(mapcar
+ (lambda (var)
+ (cond ((symbolp var)
+ (list var `(wcheck-query-language-data
+ ,lang-var ',var)))
+ ((and var (listp var))
+ (list (car var) `(wcheck-query-language-data
+ ,lang-var ',(cadr var))))))
+ bindings))
+ ,@body)))
+
+
;;; Interactive commands
@@ -729,22 +765,6 @@ right-click mouse menu)."
(setq wcheck-timer nil)))
-(defmacro wcheck-loop-over-reqs-engine (key var &rest body)
- `(dolist (,var (delq nil (mapcar (lambda (buffer)
- (when (wcheck-buffer-data-get
- :buffer buffer ,key)
- buffer))
- (wcheck-buffer-data-get-all :buffer))))
- (when (buffer-live-p ,var)
- (with-current-buffer ,var
- ,@body))))
-
-(defmacro wcheck-loop-over-read-reqs (var &rest body)
- `(wcheck-loop-over-reqs-engine :read-req ,var ,@body))
-(defmacro wcheck-loop-over-paint-reqs (var &rest body)
- `(wcheck-loop-over-reqs-engine :paint-req ,var ,@body))
-
-
(defun wcheck-timer-read-event ()
"Send windows' content to checker program or function.
@@ -795,23 +815,6 @@ marking strings in buffers."
3))
-(defmacro wcheck-with-language-data (language bindings &rest body)
- (let ((lang-var (make-symbol "--wck-language--")))
- `(let* ((,lang-var ,(cadr language))
- ,@(when (car language)
- `((,(car language) ,lang-var)))
- ,@(mapcar
- (lambda (var)
- (cond ((symbolp var)
- (list var `(wcheck-query-language-data
- ,lang-var ',var)))
- ((and var (listp var))
- (list (car var) `(wcheck-query-language-data
- ,lang-var ',(cadr var))))))
- bindings))
- ,@body)))
-
-
(defun wcheck-send-strings (buffer strings)
"Send STRINGS for the process that handles BUFFER.
STRINGS is a list of strings to be sent as input for the external