Impedisci alla modalità org di ingoiare le variabili file-local


12

A volte è conveniente definire le variabili locali del file con commenti come i seguenti, che devono trovarsi alla fine di un file.

# Local Variables:
# fill-column: 80
# End:

Tuttavia, nei buffer in modalità org, questi commenti sono considerati "all'interno" dell'ultimo titolo. Ad esempio, nel seguente buffer, i commenti saranno nascosti ogni volta che vengono sostituiti Co Bnascosti.

* A
* B
** C

# Local Variables:
# fill-column: 80
# End:

Non mi dispiace davvero questo nascondiglio.
Il vero problema è che i commenti verranno portati avanti ogni volta che Csposterò la sottostruttura da qualche altra parte. Ad esempio, se chiamo org-refilesu C, o se la muovo intorno con org-metaup(e simili), i commenti sono spostati lungo con la sottostruttura, e quindi ovviamente funzionamento di arresto.

C'è un modo per dire org-modedi smettere di farlo?

Risposte:


11

Basandomi su una breve rassegna della documentazione sulla sintassi dell'organizzazione , non penso che ci sia un modo integrato per farlo.

Una possibile soluzione alternativa sarebbe quella di aggiungere un titolo di primo livello come

* File-local variables

sopra la sezione delle variabili locali e tag con :noexport:. Naturalmente, il tag è necessario solo se si prevede di esportare il documento principale.


Se vuoi esaminare l'implementazione di una soluzione personalizzata, può essere utile esaminare come gli org-modeusi della org-list-empty-line-terminates-plain-listsvariabile . Come suggerisce il nome, quando questa variabile è impostata su un non valore, è sufficiente una singola riga vuota per terminare un semplice elenco, quindi potrebbe essere possibile ottenere qualcosa di simile per i sottotitoli.nil


1
Ho inserito * The End(o ;;;* The Endsimile) alla fine dei miei buffer in modalità Struttura. Bello da sapere :noexport:per la modalità Org.
Gilles 'SO- smetti di essere malvagio' il

7
* COMMENT Local Variablesfunziona anche per me.
rvf0068,

Consiglio di utilizzare COMMENT, come suggerito da @ rvf0068. In questo modo, l'intero titolo con i suoi contenuti viene trattato come un vero commento.
Quarky,

8

Tengo un titolo di primo livello alla fine dei miei file Org chiamati * Configuration.

Mi assicuro che sia taggato :NOEXPORT:ARCHIVE:

Con ciò non viene esportato (grazie al :noexport:tag) e inoltre il contenuto non viene rivelato quando si pedala a livello globale (grazie al :ARCHIVE:tag).

Ho anche messo le varie opzioni di configurazione relazione Org ( #+TITLE:, #+AUTHOR, #+OPTIONS, ecc) sotto questo titolo in modo da non occupare spazio visivo meno che non voglio per modificarli.


5

Ho evitato questo problema inavvertitamente perché uso sempre delle note a piè di pagina nei miei documenti. In questo modo C-c C-x fverrà inserita una nota a piè di pagina che creerà automaticamente la * Footnotessezione alla fine del buffer.

Questo è un buffer speciale e non viene mai esportato come sezione dalla modalità org. Quindi non avresti mai bisogno di spostare questa sezione nella gerarchia.

Anche se non usi le note a piè di pagina, non farà male mantenere una * Footnotessezione vuota alla fine in quanto non verrà mai esportata come sezione.

Ecco cosa farei:

  • Fare C-c C-x f
  • Dai alla nota a piè di pagina un testo del tipo "Questa è una nota a piè di pagina fittizia".
  • Elimina il riferimento creato automaticamente [fn:1]dall'area principale (non la sezione Note a piè di pagina).

Ho suggerito di farlo poiché non sono sicuro che la modalità org rilevi la presenza di descrizioni di note a piè di pagina valide nella sezione Note a piè di pagina per contarle come una sezione speciale.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.