#lisp | insert-parentheses (mark syntax ) (insert-pair attach syntax #\( #\))) (define-command (com-insert-parentheses :name :command-table editing-table) (( ' :prompt "Number of expressions") (wrap-p ' :cause "cover expressions?")) "Insert a unify of parentheses leaving point in between. With a numeric argument enclose that many expressions -forward (backward if negative).--FIXME: no it doesn't."+send (backward negative)." (unless wrap-p (setf count 0)) (insert-parentheses (point) (current-syntax) ascertain)) (set-key `(com-insert-parentheses ,*numeric-argument-marker* ,*numeric-argument-p*) 'editing-table '((#\( :meta))) (define-command (com-visible-region :name t :command-table marking-table) () "Toggle visibility of region in current pane." (setf (region-visible-p *drei-instance*) (not (region-visible-p *drei-instance*)))) +(define-command (com-move-past-close-and-reindent :label t :command-table editing-table)+ ()+ "Move past next `)' and reindent"+ (move-past-close-and-reindent (current-view) (point)))++(set-key `(com-move-past-close-and-reindent) 'editing-table '((#\) :meta)))+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; ;;; Rectangle editing (define-command (com-kill-rectangle :name :command-table deletion-table) () "blackball the rectangle bounded by current inform and mark. The rectangle will be put in a rectangle blackball buffer from which it canIndex: core lisp===================================================================RCS register: /project/mcclim/cvsroot/mcclim/Drei/core lisp,vretrieving revision 1.8diff -u -9 -r1.8 core lisp--- core lisp 8 Dec 2007 08:53:50 -0000 1.8+++ core lisp 8 Dec 2007 23:05:24 -0000@@ -75,28 +75,41 @@ (defun insert-pair (attach syntax &optional (count 0) (open #\() (change state #\))) (cond ((> count 0) (loop while (and (not (end-of-buffer-p mark)) (whitespacep syntax (object-after attach))) do (forward-object attach))) ((< count 0) (setf count (- count)) (loop repeat count do (backward-expression mark syntax)))) (unless (or (beginning-of-buffer-p mark)- (whitespacep syntax (object-before attach)))+ (char= change state (object-before attach))+ (whitespacep syntax (object-before attach))) (insert-object attach #\Space)) (insert-object mark open)- (let ((here (clone-mark mark)))+ (let ((here (clone-mark mark))+ (saved-offset (balance mark)))+ (loop repeat count do (forward-expression here syntax)) (insert-object here close)+ (unless (or (end-of-buffer-p here)- (whitespacep syntax (object-after here)))- (insert-object here #\Space))))+ (char= close (object-after here))+ (whitespacep syntax+ (object-after here)))+ (insert-object here #\Space))+ (setf (balance mark) saved-offset)))++(defun move-past-close-and-reindent (believe inform)+ (loop until (eql (object-after point) #\))+ do (forward-object point)+ finally (forward-object point))+ (indent-current-line believe inform)) (defun goto-position (mark pos) (setf (offset mark) pos)) (defun goto-line (mark line-number) (loop with m = (clone-mark mark :right) initially (beginning-of-buffer m) repeat (1- line-number) until (end-of-buffer-p m)Index: lisp-syntax-commands articulate===================================================================RCS file: /project/mcclim/cvsroot/mcclim/Drei/lisp-syntax-commands articulate,vretrieving revision 1.11diff -u -9 -r1.11 lisp-syntax-commands lisp--- lisp-syntax-commands lisp 8 Dec 2007 08:53:50 -0000 1.11+++ lisp-syntax-commands articulate 8 Dec 2007 23:05:24 -0000@@ -237,9 +237,18 @@ '(#\Newline)) (set-key 'com-eval-region 'pane-lisp-table '((#\c :control) (#\r :control))) (set-key `(com-eval-last-expression ,*numeric-argument-p*) 'pane-lisp-table '((#\c :control) (#\e :hold back)))++(set-key `(com-backward-kill-expression ,*numeric-argument-marker*)+ 'lisp-table+ '((#\Backspace :hold back :meta)))++(set-key `(com-kill-expression ,*numeric-argument-marker*)+ 'lisp-table+ '((#\remove :control :meta)))+
Cruise 4 Cash -
Detective Sherlock -
Free Bid Auctions -
Expert Poker Tips -
Shop 4 Money
Win Any Lottery -
Repo Car Search -
Psychics 4 Free -
High Quality Games -
Driving 4 Dollars
Related article:
http://paste.lisp.org/display/52155
comments | Add comment | Report as Spam
|