Domanda

  

Possibile duplicato:
   Come ottenere effetti di piegatura del codice in emacs

Una caratteristica eccellente di Dreamweaver è la piegatura del codice di qualsiasi riga di testo - ricorsivamente!

È fantastico, posso piegare qualsiasi testo o codice, indipendentemente dalla lingua. Lavoro con sistemi esistenti; Non modifico codice ben scritto o codice in una lingua, ecc., Principalmente HTML mischiato a dio-sa-cosa. Le linee pieghevoli rendono la comprensione molto più semplice e veloce. Purtroppo, questa è la unica funzione che mi piace in Dreamweaver.

Esiste un codice pieghevole per Emacs con un obiettivo simile?

È stato utile?

Soluzione

C'è modalità pieghevole , una modalità minore. Sfortunatamente è invadente: devi annotare manualmente le pieghe con commenti specializzati, che ingombrano il codice quando non stai utilizzando la modalità (o quando condividi il codice con altri che non lo usano). Una modalità migliore non cambierebbe il tuo codice per funzionare.

Lasciami aggiungere: c'è un duplicato di questo che vale la pena dare un'occhiata: Come ottenere effetti di piegatura del codice in Emacs .

Altri suggerimenti

hide-show ( hs-minor-mode ) è una modalità minore che farà qualcosa del genere ...

L'associazione dei tasti predefinita per attivare la piegatura è C-c @ C-c che trovo piuttosto ingombrante. Ma poi non lo uso neanche molto.

Potresti cercare la funzione set-selettiva-visualizzazione e la variabile selettiva-visualizzazione . Non esattamente quello che vuoi ma ti consente di nascondere le linee in base al livello di rientro.

Uso fold-dwim.el. Dalla wiki di emacs:

fold-dwim.el è un'interfaccia utente unificata per le modalità di piegatura / definizione di Emacs. Supporta pieghevole.el, hideshow.el, outline.el, TeX-fold.el e nxml-outln.el

Puoi ottenerlo qui:

http://www.emacswiki.org/emacs/FoldDwim

Ho questo nel mio .emacs:

(require 'fold-dwim)
(global-set-key [(C kp-4)] 'fold-dwim-hide-all)
(global-set-key [(C kp-5)] 'fold-dwim-toggle)
(global-set-key [(C kp-6)] 'fold-dwim-show-all)

Tieni presente che devi ancora attivare la modalità hs-minor, la modalità pieghevole, ecc. ma trovo più facile usarli in questo modo.

Qualcos'altro che potresti esaminare è nxhtml-mode ; non piega , ma evidenzia in modo diverso il codice misto (ovvero HTML e PHP) a seconda del tipo. Ciò ti dà un simile guadagno in termini di comprensibilità senza l'imbarazzo della modalità pieghevole. Penso che questo approccio sia comunque più adatto a Emacs, in primo luogo perché la piegatura del codice sembra un'idea orientata al mouse che non si adatta bene all'interfaccia Emacs sostanzialmente incentrata sulla tastiera, e in secondo luogo perché Emacs facilita la navigazione di un file di grandi dimensioni in misura quel codice può rimanere visibile senza ostacolarti.

Se in realtà hai bisogno di qualcosa per nascondere una determinata regione piuttosto che cercare di capire la sintassi " (a differenza di hideshow e altre soluzioni basate sull'analisi) e tu non vuoi modificare il [tuo] codice " (a differenza del pieghevole), quindi, presumo, intendi che non vuoi che le regioni siano persistenti tra le diverse sessioni di modifica. Quindi potresti usare http://www.emacswiki.org/emacs/HideRegion per nascondere l'utente regioni selezionate ...

(Ma è strano. La modalità minore pieghevole con segni persistenti sembra essere una soluzione molto più conveniente.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top