Mercurial > emacs
comparison lisp/emulation/viper-macs.el @ 64215:a4c59075cac8
* viper-cmd.el (viper--key-maps): new variable.
(viper-normalize-minor-mode-map-alist): use viper--key-maps and
emulation-mode-map-alists.
(viper-envelop-ESC-key): use viper-subseq.
(viper-search-forward/backward/next): disable debug-on-error.
* viper-keym.el (viper-toggle-key,viper-quoted-insert-key,
viper-ESC-key): new defcustoms.
* viper-macs.el (ex-map-read-args): use viper-subseq.
* viper-util.el (viper-key-to-emacs-key): use viper-subseq.
(viper-subseq): copy of subseq from cl.el.
* viper.el (viper-go-away,viper-set-hooks): use
emulation-mode-map-alists, advise self-insert-command, add-minor-mode.
* viper-mous.el (viper-current-frame-saved): use defvar.
* viper-init.el: got rid of -face in face names.
* ediff-diff.el (ediff-extract-diffs,ediff-extract-diffs3):
Make it work with longlines mode
* ediff-mult.el (ediff-meta-mode-hook): new variable.
* ediff-ptch.el (ediff-file-name-sans-prefix): quote regexp.
* ediff-init: got rid of -face in face names.
author | Michael Kifer <kifer@cs.stonybrook.edu> |
---|---|
date | Sun, 10 Jul 2005 18:46:24 +0000 |
parents | 18a818a2ee7c |
children | 34bd8e434dd7 fbb2bea03df9 |
comparison
equal
deleted
inserted
replaced
64214:0441edbff1bf | 64215:a4c59075cac8 |
---|---|
176 (setq key-seq (vconcat key-seq (if key (vector key) []))) | 176 (setq key-seq (vconcat key-seq (if key (vector key) []))) |
177 ;; the only keys available for editing are these-- no help while there | 177 ;; the only keys available for editing are these-- no help while there |
178 (if (member | 178 (if (member |
179 key | 179 key |
180 '(?\b ?\d '^? '^H (control h) (control \?) backspace delete)) | 180 '(?\b ?\d '^? '^H (control h) (control \?) backspace delete)) |
181 (setq key-seq (subseq key-seq 0 (- (length key-seq) 2)))) | 181 (setq key-seq (viper-subseq key-seq 0 (- (length key-seq) 2)))) |
182 (setq message | 182 (setq message |
183 (format | 183 (format |
184 ":map%s %s" | 184 ":map%s %s" |
185 variant (if (> (length key-seq) 0) | 185 variant (if (> (length key-seq) 0) |
186 (prin1-to-string (viper-display-macro key-seq)) | 186 (prin1-to-string (viper-display-macro key-seq)) |
240 (setq key-seq (vconcat key-seq (if key (vector key) []))) | 240 (setq key-seq (vconcat key-seq (if key (vector key) []))) |
241 ;; the only keys available for editing are these-- no help while there | 241 ;; the only keys available for editing are these-- no help while there |
242 (cond ((member | 242 (cond ((member |
243 key | 243 key |
244 '(?\b ?\d '^? '^H (control h) (control \?) backspace delete)) | 244 '(?\b ?\d '^? '^H (control h) (control \?) backspace delete)) |
245 (setq key-seq (subseq key-seq 0 (- (length key-seq) 2)))) | 245 (setq key-seq (viper-subseq key-seq 0 (- (length key-seq) 2)))) |
246 ((member key '(tab (control i) ?\t)) | 246 ((member key '(tab (control i) ?\t)) |
247 (setq key-seq (subseq key-seq 0 (1- (length key-seq)))) | 247 (setq key-seq (viper-subseq key-seq 0 (1- (length key-seq)))) |
248 (setq message | 248 (setq message |
249 (format | 249 (format |
250 ":unmap%s %s" | 250 ":unmap%s %s" |
251 variant (if (> (length key-seq) 0) | 251 variant (if (> (length key-seq) 0) |
252 (prin1-to-string | 252 (prin1-to-string |
616 macro-alist-elt (assoc keyseq macro-alist) | 616 macro-alist-elt (assoc keyseq macro-alist) |
617 next-best-match (viper-find-best-matching-macro macro-alist keyseq)) | 617 next-best-match (viper-find-best-matching-macro macro-alist keyseq)) |
618 | 618 |
619 (if (null macro-alist-elt) | 619 (if (null macro-alist-elt) |
620 (setq macro-alist-elt (car next-best-match) | 620 (setq macro-alist-elt (car next-best-match) |
621 unmatched-suffix (subseq event-seq (cdr next-best-match)))) | 621 unmatched-suffix (viper-subseq event-seq (cdr next-best-match)))) |
622 | 622 |
623 (cond ((null macro-alist-elt)) | 623 (cond ((null macro-alist-elt)) |
624 ((setq macro-body (viper-kbd-buf-definition macro-alist-elt))) | 624 ((setq macro-body (viper-kbd-buf-definition macro-alist-elt))) |
625 ((setq macro-body (viper-kbd-mode-definition macro-alist-elt))) | 625 ((setq macro-body (viper-kbd-mode-definition macro-alist-elt))) |
626 ((setq macro-body (viper-kbd-global-definition macro-alist-elt)))) | 626 ((setq macro-body (viper-kbd-global-definition macro-alist-elt)))) |
699 ;; whether SEQ1 is a prefix of SEQ2 | 699 ;; whether SEQ1 is a prefix of SEQ2 |
700 (defun viper-prefix-subseq-p (seq1 seq2) | 700 (defun viper-prefix-subseq-p (seq1 seq2) |
701 (let ((len1 (length seq1)) | 701 (let ((len1 (length seq1)) |
702 (len2 (length seq2))) | 702 (len2 (length seq2))) |
703 (if (<= len1 len2) | 703 (if (<= len1 len2) |
704 (equal seq1 (subseq seq2 0 len1))))) | 704 (equal seq1 (viper-subseq seq2 0 len1))))) |
705 | 705 |
706 ;; find the longest common prefix | 706 ;; find the longest common prefix |
707 (defun viper-common-seq-prefix (&rest seqs) | 707 (defun viper-common-seq-prefix (&rest seqs) |
708 (let* ((first (car seqs)) | 708 (let* ((first (car seqs)) |
709 (rest (cdr seqs)) | 709 (rest (cdr seqs)) |
764 match unmatched-start-idx found macro-def) | 764 match unmatched-start-idx found macro-def) |
765 (while (and (not found) lis) | 765 (while (and (not found) lis) |
766 (setq macro-def (car lis) | 766 (setq macro-def (car lis) |
767 def-len (length (car macro-def))) | 767 def-len (length (car macro-def))) |
768 (if (and (>= str-len def-len) | 768 (if (and (>= str-len def-len) |
769 (equal (car macro-def) (subseq str 0 def-len))) | 769 (equal (car macro-def) (viper-subseq str 0 def-len))) |
770 (if (or (viper-kbd-buf-definition macro-def) | 770 (if (or (viper-kbd-buf-definition macro-def) |
771 (viper-kbd-mode-definition macro-def) | 771 (viper-kbd-mode-definition macro-def) |
772 (viper-kbd-global-definition macro-def)) | 772 (viper-kbd-global-definition macro-def)) |
773 (setq found t)) | 773 (setq found t)) |
774 ) | 774 ) |