人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【Emacs】モードローカルな変数の設定方法

Meadow 3 を使ってます。

http://www.bookshelf.jp/cgi-bin/goto.cgi?file=meadow&node=meadow%20time-stamp
を参考に、モードごとに自動タイムスタンプ挿入したいと思っています。

しかしながら、現状ではどのモードでもruby-mode用の設定が効いてしまいます。
モード毎にtime-stamp-start変数を設定するにはどうすれば良いのでしょうか?

.emacs ----------
;; global
(setq time-stamp-start "\$LAST_MODIFIED *= *['\"]")
(setq time-stamp-end "['\"]")
(setq tab-width 4) ; test用
(setq v "GLOBAL") ; test用

;; ruby-mode
(add-hook 'ruby-mode-hook
'(lambda ()
(setq time-stamp-start "::Version *= *['\"]")
(setq tab-width 20) ; test用
(setq v "local") ; test用
))
-----------------

ruby-modeバッファでdescribe-variable --------
time-stamp-start ... Its value is "::Version *= *['\"]"

tab-width ... Its value is 20
Local in buffer t.rb; global value is 4
Automatically becomes buffer-local when set in any fashion.

v's value is "local"
--------------------

*scratch*バッファでdescribe-variable ------------
time-stamp-start ... Its value is "::Version *= *['\"]"

tab-width ... Its value is 20

v's value is "local"
--------------------

tab-widthだけが正しい...

●質問者: nannde
●カテゴリ:コンピュータ
✍キーワード:.emacs ADD Emacs HOOK iTS
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● mulukhiyya
●100ポイント ベストアンサー

「make-local-variable」「バッファローカル(buffer-local)」がキーワードですね。

(set (make-local-variable '変数名) 値)

と書く流儀があるみたいです。(今調べたばかりですへっへっへ)

◎質問者からの返答

ありがとうございます!

ちょっとサッカー終わってから試してみます(^^;

完璧でした!!

ありがとうございましたm(_ _)m

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ