質問

PythonおよびCモードで自動的にLinumモード(MX Linum-Mode)をオンにしたい。次のコードを.emacsに追加しますが、機能していないようです。

(defun my-c-mode-common-hook ()
  (line-number-mode 1))
(add-hook 'c-mode-common-hook 'my-c-mode-common-hook)

(defun my-python-mode-common-hook ()
  (line-number-mode 1))
(add-hook 'python-mode-common-hook 'my-python-mode-common-hook)

何が間違っているのでしょうか?

役に立ちましたか?

解決

line-number-modelinum-mode 同じではありません。

これを試して:

(defun my-c-mode-hook () 
  (linum-mode 1)) 
(add-hook 'c-mode-hook 'my-c-mode-hook) 

(defun my-python-mode-hook () 
  (linum-mode 1)) 
(add-hook 'python-mode-hook 'my-python-mode-hook) 

他のヒント

また、Linum-Modeをグローバルに設定するオプションもあります。

;; In your .emacs
(global-linum-mode 1)

編集:私の構成には私が持っています global-linum-mode 特定の主要なモードに対してアクティブで阻害します:

(setq linum-mode-inhibit-modes-list '(eshell-mode
                                      shell-mode
                                      erc-mode
                                      jabber-roster-mode
                                      jabber-chat-mode
                                      gnus-group-mode
                                      gnus-summary-mode
                                      gnus-article-mode))

(defadvice linum-on (around linum-on-inhibit-for-modes)
  "Stop the load of linum-mode for some major modes."
    (unless (member major-mode linum-mode-inhibit-modes-list)
      ad-do-it))

(ad-activate 'linum-on)

C-Modeが使用するはずのフック(使用されていないCモード)はわかりませんが、これは必要なことを行うはずです。

(dolist (hook '(python-mode-hook
            c-mode-common-hook))
  (add-hook hook (lambda () (linum-mode t))))

プログラミング言語のすべての主要なモードは、Prog-Modeに由来するため、(add-hook 'prog-mode-hook 'linum-mode) すべてのプログラミングモードにLinum-Modeを有効にします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top