Sto provando a passare a Emacs come al mio editor di codice sorgente principale. Mi manca davvero una cosa (comune in editor anche molto più semplici) - guide di indentazione (linee verticali non invadenti che mostrano il livello di indentazione). Emacs è in grado di visualizzarli?Come visualizzare le guide di indentazione in Emacs?
risposta
che ho fatto una funzione highlight-indentation
per questo scopo, code is on github.
Quando si richiama highlight-indentation
senza un argomento prefisso il livello di indentazione corrente è ingenuamente indovinato dalla modalità principale (python, ruby e lingue basate su cc-mode). Funziona solo per le rientranze spaziali. Personalizza highlight-indent-face
per modificare l'aspetto delle linee di indentazione.
Esempi (rubino, pitone):
Inoltre uso spesso questo frammento che si ripiega tutto il codice su un livello di rientro maggiore della riga corrente. È un ottimo modo per ottenere una rapida panoramica della struttura.
(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)
Per caricare automaticamente questo file per JavaScript e Python, ho aggiunto quanto segue al mio .emacs:' (richiede 'indentazione highlight') (punto di aggancio per evidenziare "hook-mode-hook" add-hook -mode) (aggancio-aggancio 'js2-mode-hook' highlight-indentation-mode) ' – Tom
Ciao, l'ho aggiunto al mio .emacs, ma non sembra che i miei file python abbiano lo stesso aspetto sullo schermo. Non vedo linee di indentazione come nel tuo esempio. potresti consigliarti? –
+1 per la piegatura. Nota agli altri, se abiliti 'highlight-indentation-mode' e non vedi nulla, è probabilmente perché stai usando * tab *. – harpo
a mia conoscenza nessuno ha implementato le guide all'indentazione per Emacs finora. La cosa più vicina che puoi ottenere sono la visualizzazione dei TAB con il pacchetto spazi bianchi, vedi Show tabs with a different character (Emacs).
Nota puoi anche visualizzare gli spazi: 'M-x personalizzare-variabile RET spazio-spazio' poi' M-x personalizzare-variabile RET spazio-stile 'e aggiungere questi due token all'espressione Lisp: 'spazi spazi-mark'. Ad esempio, il mio 'whitespace-style' al momento assomiglia a questo:' '(tabulazioni trailing lines-tail space-before-tab rientro di nuova riga spazio vuoto-dopo-scheda tab-mark spazi spazio-mark) ' –
@NoahSussman' personalizzabile 'Non ho una tale variabile oo –
Supponiamo di poter piegare ColumnMarker alle proprie esigenze ma si evidenzierà una colonna non concedendo un singolo pixel.
mi trattino con 8 posti così ho mai pensato; P
- 1. indentazione adattiva in emacs?
- 2. Emacs Haskell indentazione
- 3. Rientri indentazione di cl-flet di Emacs?
- 4. Emacs Rubino parametro del metodo di indentazione
- 5. Come visualizzare le scelte di completamento automatico in emacs?
- 6. Come visualizzare Git Log in Emacs?
- 7. indentazione non funziona correttamente in emacs per Python
- 8. indentazione automatica su comune lisp emacs + slime + sbcl in windows
- 9. Come visualizzare le visualizzazioni e-mail nel browser utilizzando le guide
- 10. Come posso visualizzare l'agenda in modalità Org sull'avvio di Emacs?
- 11. Emacs: come mantenere il livello di indentazione di una linea molto lunga spostata
- 12. Come abilitare le guide di tabulazione in Visual Studio 2010?
- 13. Codice indentazione Lua in Lua
- 14. usando sort_by in ruby (per le guide)?
- 15. Come posso far funzionare le opzioni di indentazione jshint
- 16. Impossibile installare le guide gemelle
- 17. Come aggiungo le date in Emacs usando Emacs Lisp?
- 18. È possibile accedere alle guide delle guide per le guide 2.3?
- 19. indentazione corretta in IntelliJ
- 20. Non indentazione in Netbeans
- 21. Come trasformare le query in modo efficiente nelle guide?
- 22. In Emacs, come faccio a visualizzare un messaggio nel minibuffer con le proprietà del carattere?
- 23. Esistono plug-in di test di sicurezza per le guide?
- 24. indentazione corretta di PHP?
- 25. Come eseguire il downgrade di bundler o aggiornare le guide?
- 26. Come precompilare le risorse nelle guide nell'ambiente di sviluppo?
- 27. Come avvolgere le parole in Emacs?
- 28. Mettere le guide su un database esistente
- 29. Come disattivare gli avvisi di indentazione JSLint?
- 30. Modifica di Python in Emacs
È utile durante la lettura del codice. – Thotep
In questo caso, le guide di indentazione sarebbero davvero utili quando si modifica il codice Lisp. –
@ user181548 più informazioni equivalgono a meno errori. su vim io uso 'set listchars = scheda: ░ \' (char prima di "\" è un blocco char che non verrà mostrato qui penso, può essere sostituito da "|" e sembra ancora buono. dopo "\" è un carattere spaziale) – gcb