Più volte vedo ^L
in codici sorgente (per lo più Emacs Lisp) che sembrano separatori di gruppi logici più grandi. È il loro vero scopo? E se sì, come posso usarli? Esiste una funzionalità integrata di Emacs che la utilizza?Cosa significa^L in (Emacs Lisp) codice sorgente?
risposta
Questo è un page break.
[...]
Un'interruzione di pagina può essere utilizzato anche per una separazione logica di sezioni di codice sorgente. Emacs ha comandi e combinazioni di tasti che utilizzano interruzioni di pagina, ad esempio ‘forward-page’ (
C-x ]
oC-]
), ‘all'indietro pagina’ (C-x [
oC-[
), e 'stretta a pagine' (C-x n p
). Altre funzioni, come ad esempio 'mark-page', operano sul contenuto di una pagina. Vedi anche PageMode.
Altrimenti noto come carattere FORM-FEED per le persone che ricordano le stampanti di linea. – pavium
Btw, sono anche in RFC (in .txts), ma Firefox non li mostra. –
Questo è in effetti un carattere di interruzione di pagina, che sulle stampanti di linea precedenti saltava alla pagina successiva o al foglio. Dal punto di vista del codice, non fa nulla; è solo lì per dividere il codice in sezioni più grandi. Ci sono comodi comandi Emacs per saltare alla "pagina" successiva e precedente, e l'inserimento di questi personaggi ne approfitta. Comandi
L'Emacs backward-page
e forward-page
(C-x [
e C-x ]
), tra gli altri, sfruttare ^L
s posizionati nel codice come separatori.
L'abitudine non si propaga molto in lingue diverse da Emacs-lisp, ma la maggior parte delle lingue trattano lo ^L
come spazio vuoto, quindi puoi usare questi separatori nella tua lingua preferita se ti piace l'idea. È possibile digitare il proprio ^L
s con C-q C-l
.
Quando esplorando un grosso file con più di queste "pagine" la funzione "stretta-to-page" (C-x n p) è a portata di mano: si nasconde tutto non nella pagina corrente. Quindi, ad esempio, la ricerca di un nome di funzione per vedere i chiamanti porta solo alle corrispondenze in quella sezione, quindi puoi davvero concentrarti sulla comprensione della regione ristretta.
Utilizzare widen (C-x nw) per visualizzare di nuovo l'intero file.
Vedere anche Pretty Control-L se si desidera modificare la modalità di visualizzazione dei caratteri Control-l, ad esempio utilizzare una linea evidenziata anziché solo ^L
.
Nessuna delle risposte ha indicato che '^ L' è solo il valore predefinito. È possibile impostare una regexp 'locale delimitatore di pagina 'buffer-locale su tutto ciò che si desidera, per ottenere la funzionalità di navigazione della pagina utilizzando un valore personalizzato. – phils