Estoy intentando cambiar a Emacs como mi principal editor de código fuente. Realmente echo de menos una cosa (común incluso en editores mucho más simples) - guías de sangría (líneas verticales discretas que muestran el nivel de sangría). ¿Emacs puede mostrarlos?¿Cómo mostrar las guías de sangría en Emacs?
Respuesta
que he hecho una función highlight-indentation
para este propósito, code is on github.
Cuando se invoca highlight-indentation
sin un argumento prefijo nivel de sangría actual se supuso ingenuamente de modo mayor (Python, Ruby y lenguajes basados en cc-mode). Solo funciona para indentaciones espaciales. Personalice highlight-indent-face
para cambiar la apariencia de las líneas de sangría.
Ejemplos (Ruby, Python):
También uso con frecuencia este fragmento que se dobla todo el código en un nivel de sangría mayor que la línea actual. Es una gran manera de obtener una visión general rápida del esquema.
(defun aj-toggle-fold()
"Toggle fold all lines larger than indentation on current line"
(interactive)
(let ((col 1))
(save-excursion
(back-to-indentation)
(setq col (+ 1 (current-column)))
(set-selective-display
(if selective-display nil (or col 1))))))
(global-set-key [(M C i)] 'aj-toggle-fold)
Para cargar esto automáticamente para archivos JavaScript y Python, agregué lo siguiente a mis .emacs:' (requiere 'highlight-indentation) (add-hook' python-mode-hook 'highlight-indentation -mode) (add-hook 'js2-mode-hook' highlight-indentation-mode) ' – Tom
Hola, he agregado esto a mis .emacs, pero no parece que mis archivos python tengan el mismo aspecto que en la pantalla. No veo ninguna línea de sangría como en tu ejemplo. ¿podrías aconsejar? –
+1 para alternar. Tenga en cuenta que, si habilita 'highlight-indentation-mode' y no ve nada, es probable que sea porque está usando * pestañas *. – harpo
que yo sepa, nadie ha implementado guías de sangrado para Emacs hasta el momento. Lo más parecido que puede obtener es la visualización de TAB con el paquete de espacio en blanco, consulte Show tabs with a different character (Emacs).
Tenga en cuenta que también puede visualizar espacios: 'M-x customize-variable RET whitespace-space' luego' M-x customize-variable RET whitespace-style' y agregue estos dos tokens a la expresión Lisp: 'spaces spaces-mark'. Por ejemplo, mi 'whitespace-style' se ve así:' '(pestañas líneas de cola-cola espacio-antes-pestaña nueva línea hueca espacio-después-pestaña de tab-marca espacios marca-espacio) ' –
@NoahSussman the' customize-variable 'no tiene esa variable oo –
Supongamos que puede doblar ColumnMarker según sus necesidades pero resaltará una columna que no le da un solo píxel.
me guión con 8 espacios así que nunca he pensado en ello; P
- 1. ¿Eclipse tiene guías de sangría?
- 2. Sangría CSS en emacs
- 3. ¿Es posible mostrar guías de sangrado en Vim?
- 4. Sangría varias líneas en Emacs
- 5. Problemas de sangría de CoffeeScript en Emacs
- 6. mostrar las teclas en Emacs Keymap Valor
- 7. Java argumento modo de sangría en Emacs
- 8. cambio de sangría en emacs ess
- 9. ¿Cómo usar las guías en C#?
- 10. Plantillas C++ y Emacs: Personalización de sangría
- 11. Mostrar espacios en blanco en emacs sólo en líneas
- 12. Cómo cambiar la sangría en modo texto para emacs
- 13. guía del evento sangría Líneas En Xcode
- 14. ¿Cómo habilitar las guías de pestañas en Visual Studio 2010?
- 15. Establecer sangría de pitón en 2 espacios en emacs 23?
- 16. Deshabilitar la sangría automática de forma global en Emacs
- 17. ¿Cómo mostrar ventana emergente en Emacs?
- 18. Mejor sangría en el modo de dos modos en Emacs
- 19. Valor de rendimiento de las guías COMB
- 20. Cómo crear guías deterministas
- 21. Categoría/funciones de plantilla de sangría de Emacs
- 22. Problema de SQLite Problema con las guías
- 23. Cómo desactivar las advertencias de sangría JSLint?
- 24. Emacs ruby-mode, sangría salvajemente dentro de paréntesis?
- 25. ¿Cómo decirle al diff de svn que ignore las diferencias en la sangría de espacio/tabulación?
- 26. Haciendo que Python Interactive Mode de Emacs Resalte y sangría
- 27. Emacs sangría de descanso después de instrucción switch
- 28. Generación de guías en Ruby
- 29. No se puede cambiar la sangría predeterminada de Emacs entre las etiquetas HTML
- 30. cambiar emacs ruby-mode sangría a 4 espacios
Es útil al leer algunos códigos. – Thotep
Como sucede, las guías de sangría serían realmente útiles al editar código Lisp. –
@ user181548 más información es igual a menos errores. en vim utilizo 'set listchars = tab: ░ \' (char antes de que "\" sea un bloque de caracteres que no aparezca aquí, creo, puede ser reemplazado por "|" y aún se ve bien. después de la "\" es un personaje de espacio) – gcb