xyzzy設定
備忘録
※てっきり”ぼうびろく”と思ったら変換できず。”びぼうろく”なのね
(require "ni/setup") ;; 自動設定を利用する ;;proxy設定 (ni-autoload) ;; javascript-mode の設定 (require "javascript-mode") ;; info-modoki-mode の設定 (require "info-modoki-mode") (define-key ed::*lisp-mode-map* #\F1 'imm-refer-selection) (define-key ed::*lisp-interaction-mode-map* #\F1 'imm-refer-selection) ;; lisp-mode色づけ設定 (in-package "editor") (defvar *lisp-keyword-hash-table* nil) (defun use-lisp-keyword () "キーワード色付け" (if (null *lisp-keyword-hash-table*) (setq *lisp-keyword-hash-table* (load-keyword-file "lisp"))) (when *lisp-keyword-hash-table* (make-local-variable 'keyword-hash-table) (setq keyword-hash-table *lisp-keyword-hash-table*))) (add-hook '*lisp-mode-hook* #'(lambda () (use-lisp-keyword) (define-key *lisp-mode-map* #\C-. 'lisp-complete-symbol))) (add-hook '*lisp-interaction-mode-hook* #'(lambda () (use-lisp-keyword) (define-key *lisp-interaction-mode-map* #\C-. 'lisp-complete-symbol))) (in-package "user") ;;; 右クリックしながらホイール回転でバッファを移動 (defvar *mouse-right-button-state* nil) (defun mouse-right-button-down () (interactive) (setf *mouse-right-button-state* :pressed) (continue-pre-selection)) (defun my-mouse-wheel-scroll (window n lines) (if *mouse-right-button-state* (let ((*next-buffer-in-tab-order* t)) (declare (special *next-buffer-in-tab-order*)) (if (> n 0) (next-buffer) (previous-buffer)) (setf *mouse-right-button-state* :rotated)) (ed::mouse-wheel-scroll window n lines))) (defun mouse-right-button-up () (interactive) (unless (eq *mouse-right-button-state* :rotated) (mouse-menu-popup)) (setf *mouse-right-button-state* nil)) (setq-default mouse-wheel-handler #'my-mouse-wheel-scroll) (global-set-key #\RBtnDown 'mouse-right-button-down) (global-set-key #\RBtnUp 'mouse-right-button-up) ;; *scratch* を終了時に保存 (add-hook '*kill-xyzzy-hook* #'(lambda () (save-excursion (set-buffer (find-buffer "*scratch*")) (write-file "~/scratch")))) ;; *scratch*, .xyzzy を起動時にロード (add-hook '*post-startup-hook* #'(lambda () (save-excursion (set-buffer (find-buffer "*scratch*")) (insert-file-contents "~/scratch" t) (if (find-buffer ".xyzzy") () (progn (switch-to-buffer ".xyzzy") (set-buffer-file-name "~/.xyzzy" ".xyzzy") (insert-file-contents "~/.xyzzy" t)))))) ;; .xyzzy を自動的に lisp-mode へ (pushnew '("\\.xyzzy" . lisp-mode) *auto-mode-alist* :test 'equal) ;; paren用設定 (require "paren") (turn-on-global-paren) ;; xml-mode (require "xml/xml-mode") (require "xml/xhtml") (require "xml/xslt") (require "xml/relaxng") (require "xml/xlink") (use-package 'xml) ;; wiki-mode (require "wiki-mode") ;; ruby-mode (load-library "ruby-mode") (push '("\\.rb$" . ruby-mode) *auto-mode-alist*) ;; キーバインド設定 (global-set-key #\S-F15 #'(lambda() (interactive) (insert "\t")) ) (set-extended-key-translate-table exkey-S-tab #\S-F15) ;; Shift-Ctrl-f で単語移動 (global-set-key #\C-M-f 'forward-word) ;; Shift-Cntl-b で単語移動 (global-set-key #\C-M-b 'backward-word) ;; C-F8で全行一発インデント (defun indent-current-buffer () (interactive) (indent-region (point-min) (point-max)) (message "indent buffer")) (global-set-key #\C-F8 'indent-current-buffer) ;; 引用貼り付け (require "quote-menu")