バッファをtoggleする関数とか
ありそうで無いみたいだったので書いてみました.最近行ったバッファから順に切り替わるようになってます.
;;カレントバッファをトグルする関数群 (defun next-string-from-buffer-list (string buffer-list counter) (if (string= string (nth counter buffer-list)) (if (= counter (1- (length buffer-list))) 0 (1+ counter)) (next-string-from-buffer-list string buffer-list (1+ counter)))) (defun prev-string-from-buffer-list (string buffer-list counter) (if (string= string (nth counter buffer-list)) (if (= 0 counter) (1- (length buffer-list)) (1- counter)) (prev-string-from-buffer-list string buffer-list (1+ counter)))) (defun unimportant-buffer-p (buffer-name) (string-lessp buffer-name " \d")) (defun toggle-buffer () (interactive) (let *1 buff-str-list 0) buff-str-list) t))) (defun toggle-buffer-backward () (interactive) (let *2 buff-str-list 0) buff-str-list) t))) ;;以下のキーシーケンスに割り当てる (global-set-key "\C-t" 'toggle-buffer) (global-set-key "\C-q" 'toggle-buffer-backward)
*1:buff-str-list (remove-if (function unimportant-buffer-p) (mapcar (function buffer-name) (buffer-list))))) (switch-to-buffer (nth (next-string-from-buffer-list (buffer-name (current-buffer
*2:buff-str-list (remove-if (function unimportant-buffer-p) (mapcar (function buffer-name) (buffer-list))))) (switch-to-buffer (nth (prev-string-from-buffer-list (buffer-name (current-buffer