Encendido de Linum-modo cuando en Python modo / c
-
28-09-2019 - |
Pregunta
Quiero activar el modo de Linum (-x M Linum-mode) automáticamente con el pitón y el modo c. Agrego el siguiente código en .emacs, pero no parece funcionar.
(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)
¿Qué podría estar mal?
Solución
line-number-mode
y linum-mode
no son los mismos.
Prueba esto:
(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)
Otros consejos
También tiene la opción de configurar Linum modo global.
;; In your .emacs
(global-linum-mode 1)
Editar
En mi configuración tengo global-linum-mode
activo y inhibirla para ciertos modos principales:
(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)
No estoy seguro que engancha C-modo se supone que el uso (C-modo nunca utilizado), pero esto se debe hacer lo que quiera:
(dolist (hook '(python-mode-hook
c-mode-common-hook))
(add-hook hook (lambda () (linum-mode t))))
Todo modo mayor para los lenguajes de programación se derivan de modo progresivo, por lo
(add-hook 'prog-mode-hook 'linum-mode)
permitirá Linum modo para todos los modos de programación.