[xyzzy:08195] 自作モードにおいてスペースでインデントする方法
- Subject: [xyzzy:08195] 自作モードにおいてスペースでインデントする方法
- From: toru <toru@xxxxxxxxxxxxxxxxxx>
- X-mailer: Becky! ver. 2.00.11
ふるかわです。
setq と四則演算くらいしか書いたことありませんが、自作のモードを書こうと
しています。
そのモードの中で、タブではなく、スペースでインデントさせる方法を教えてい
ただけませんでしょうか。
smart-indentation が評価されるとき、*foo-indent-tabs-mode* は参照されて
るのですか。c-mode.l 等を見ても、この変数を直接参照している関数は見当た
らないので「組み込み関数が自動的に見てくれるんだろう」と思い込んで、以下
のようなのを書いてみました。
私の意図では、スペースのみでインデントさせるつもりなのですが、
"M-x foo-indent" としても、タブでインデントされてしまいます。
--- 例 ----
(provide "foo-mode")
(in-package "editor")
(export '(*foo-mode-hook* *foo-indenta-tabs-mode*))
(export '(foo-mode foo-indent))
(defvar *foo-mode-hook* nil)
(defvar *foo-indent-tabs-mode* nil)
(defun foo-mode ()
(interactive)
(kill-all-local-variables)
(setq mode-name "foo")
(setq buffer-mode 'foo-mode)
(run-hooks '*foo-mode-hook*))
(defun foo-indent ()
(interactive)
(smart-indentation 4))
--- 例おわり ----
スペースでインデントさせる方法か、それが書かれている文書を教えていただけ
れば、とても幸せです。
ふるかわとおる