xyzzyでもBackward Up Listの動きが気に入らない
EmacsのBackward Up Listの動きが気に入らない - 'T - cadr group
M-C-b, f, @はそこそこ使ってたんだけどM-C-uを何故か知らなかった。俺は今まで何を学んできたというのか。
xyzzyでbackward-up-list-or-stringやるならscan-bufferでsyntax文字検索(\s)かなーと思って書き始めたら色々はまった上、結局正規表現検索を使わない方が速かったという。
(in-package "editor") (export '(up-list-or-string backward-up-list-or-string)) (defun up-list-or-string (&optional (arg 1)) (interactive "p") (unless (zerop arg) (let* ((n (signum arg)) (skip (if (> n 0) #'skip-syntax-spec-forward #'skip-syntax-spec-backward))) (when #1=(eq :string (parse-point-syntax)) (loop do (progn (funcall skip "^\"") (forward-char n)) while #1#) (decf arg n)) (up-list arg t)))) (defun backward-up-list-or-string (&optional (arg 1)) (interactive "p") (up-list-or-string (- arg))) (define-key esc-map #\C-u 'backward-up-list-or-string)
大分快適になった。これと ~/lisp/sexp.l にあるコマンドはちゃんと覚えておこう。