emacs org-mode emacs23

Modo Org de Emacs: desactivar los números de línea



org-mode emacs23 (6)

Recientemente me mudé de vim a Emacs porque quiero usar org-mode . Abrí un archivo de ~ 10000 líneas, 50kb en Emacs23 Org-mode Emacs23 y procedí a agregar aproximadamente 10 encabezados de primer nivel. El rendimiento en un quad-core con 3GB de RAM en Emacs23 bajo Ubuntu 10.04 / 32bit fue tan lento que fue inutilizable. Encontré two threads en la lista de correo electrónico en Org-mode discutían esto. Parece que habilitar linum provoca el rendimiento lento. Puedo vivir sin números de línea en los archivos .org si es necesario, pero no quiero desactivar los números de línea para todos los archivos que edito. Si voy a "vivir" en `Emacs '', quiero números de línea para todos los demás archivos.

¿Cómo puedo deshabilitar linum para algunos o todos los archivos .org ? ¿Es posible hacer esto si tengo varios archivos abiertos en Emacs y cambio entre ellos? Encontré algo de discusión sobre la desactivación de los números de línea para los modos principales here , pero no había nada que pudiera implementar (aunque el script linum-off.el mentioned en la página parece prometedor, no (aún) sé (E) Lisp, así que no puedo cambiarlo como lo necesitaría).

Actualicé el Org-mode de la versión 6.21b que venía con Emacs23 a la versión 7.5, pero no hizo ninguna diferencia. El rendimiento en la GUI de Emacs es tan malo que la aplicación no responde en absoluto. El rendimiento con -nw es "mejor", pero sigue siendo inutilizable.


Intenta agregar esto a tus .emacs:

(defun nolinum () (global-linum-mode 0) ) (add-hook ''org-mode-hook ''nolinum)

Esto es asumiendo que usas linum y no otra cosa para numerar líneas. De todos modos, puedes agregar este gancho al modo org para deshabilitar cualquier cosa que pueda hacer que la organización sea lenta solo cuando estás usando el modo org.

Descargo de responsabilidad: no tengo instalado linum, así que no puedo probar esto, pero debería funcionar.


Probé lo siguiente que funcionó bastante bien:

(defun nolinum () (interactive) (message "Deactivated linum mode") (global-linum-mode 0) (linum-mode 0) ) (global-set-key (kbd "<f6>") ''nolinum) (add-hook ''org-mode-hook ''nolinum)

Por supuesto, no es necesario el enlace de teclas. Le sugiero que lo deje para fines de prueba y lo deshabilite si todo funciona bien.


Si escribe Mx personalizar, vaya a Linum en el grupo Conveniencia, desactive la opción Desactivar Linum o desactive la opción Retraso Linum, esto mejorará considerablemente el rendimiento.

En mi computadora portátil (3 GB de RAM, doble núcleo), el inconveniente de rendimiento (de esto frente a tener linum apagado) no se nota, sin embargo, en mi netbook todavía puede haber algunos problemas leves de rendimiento con un archivo de 130KB de ~ 3000 líneas (~ 50-150 ms) retraso en la paginación).


Solo necesita agregar (add-hook ''org-mode-hook (lambda () (linum-mode 0))).


Utilice nlinum , una alternativa mucho más rápida.


linum-off.el mencionado en mi pregunta ha resuelto esto. Las instrucciones están en el archivo: coloque el archivo en la ruta de carga de Emacs y agregue (require ''linum-off) a ~ / .emacs. Este script desactiva la numeración de líneas para los modos especificados solamente. Lo he probado y funciona bien.