2012-02-24 11 views
14

自分のシステムにEmacs24をコンパイルしてビルドしました。その後、私の.emacsのカスタマイズの一部が動作しなくなりました。Emacs:メニューバーモードとツールバーモードが自動的にtに設定されました

最も重要な問題は次のとおりです。私はmenu-bar-modeとtool-bar-modeをnilに設定しました。

;;; No Menu Bar 
(menu-bar-mode nil) 
;;; No tool bar 
(tool-bar-mode nil) 

;;; No Scrollbar 
(scroll-bar-mode nil) 

しかし、私がEmacsを起動すると、それらは常にtに設定されます。

さらに悪いことに、ミニバッファを使ってnilに設定してからスクラッチに行き、menu-bar-modeと入力して式を評価すると、常にtに変更されます。

これがなぜ問題なのか、どのように修正できますか?従来は1マイナーモードを無効にするために、負の引数を与える必要があり

+0

関数を呼び出すのではなく、グローバル変数tool-bar-modeをnilに設定しました。これはうまくいくようです。さもなければ@kindaheroが言うように、負の数で関数を呼び出します。あなたはM-x apropos –

答えて

25

は、これらの

(tool-bar-mode -1) 
(menu-bar-mode -1) 
(scroll-bar-mode -1) 

UPDATEを試してみてください。 emacsのマニュアルpageを参照してください。 (emacsタイプの場合:C-h r mマイナーモードRET

+0

を使ってツールバーモードのドキュメントでこれを見ることができます。 ありがとう! nilが認識されない理由は何ですか? – user916315

+0

が答えを更新しました – kindahero

11

以前は、マイナーモードに渡された引数がnilであったため、マイナーモードが切り替わることになりました。つまり、使用しているコードによって、 Emacs-24では、nilが無条件に "enable"を意味するように変更しました。この決定は、argが単に与えられていないときに通常起こるので、この決定が行われました。 (flyspell-mode)または(add-hook 'text-mode-hook' flyspell-mode)で使用することができ、そのような場合、ユーザーは通常、「切り替え」ではなく「有効」を意味します。

関連する問題