Zapobiegaj przełykaniu zmiennych lokalnych zależnych od pliku w trybie organizacji

12

Czasami wygodnie jest zdefiniować lokalne zmienne pliku z komentarzami, takimi jak poniższe, które muszą znajdować się na końcu pliku.

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

Jednak w buforach w trybie org komentarze te są uważane za „wewnątrz” ostatniego nagłówka. Na przykład w poniższym buforze komentarze będą ukryte za każdym razem, gdy poddrzewa się Club Bsą ukryte.

* A
* B
** C

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

Tak naprawdę nie przeszkadza mi to ukrywanie się.
Prawdziwy problem polega na tym, że komentarze będą się pojawiać za każdym razem, gdy przenoszę Cpoddrzewo gdzie indziej. Na przykład, jeśli zadzwonię org-refilena C, czy przenieść ją wokół z org-metaup(i lubi), komentarze są przenoszone wraz z poddrzewa, a potem oczywiście przestać działać.

Czy istnieje sposób, aby powiedzieć, org-modeaby przestać to robić?

Malabarba
źródło

Odpowiedzi:

11

Opierając się na szybkim przejrzeniu dokumentacji składni Org , nie sądzę, że istnieje wbudowany sposób na zrobienie tego.

Jednym z możliwych obejść byłoby dodanie nagłówka najwyższego poziomu, takiego jak

* File-local variables

powyżej sekcji zmiennych lokalnych i oznacz ją tagiem :noexport:. Oczywiście znacznik jest konieczny tylko wtedy, gdy planujesz wyeksportować dokument nadrzędny.


Jeśli chcesz przyjrzeć się implementacji niestandardowego rozwiązania, pomocne może być sprawdzenie, w jaki sposób org-modeużywana jest org-list-empty-line-terminates-plain-listszmienna . Jak sama nazwa wskazuje, gdy ta zmienna jest ustawiona na wartość inną niż , wystarczy jeden pusty wiersz, aby zakończyć zwykłą listę, więc może być możliwe uzyskanie czegoś podobnego działającego w poddrzewach.nil

itsjeyd
źródło
1
Umieszczałem * The End(lub ;;;* The Endpodobnie) na końcu moich buforów trybu konspektu. Miło wiedzieć o :noexport:trybie Org.
Gilles „SO- przestań być zły”
7
* COMMENT Local Variablesdziała również dla mnie.
rvf0068
Polecam używanie COMMENT, jak sugeruje @ rvf0068. W ten sposób cały nagłówek wraz z zawartością jest traktowany jako prawdziwy komentarz.
Quarky
8

Trzymam nagłówek najwyższego poziomu na końcu moich plików organizacji o nazwie * Configuration.

Zapewniam, że jest oznaczony :NOEXPORT:ARCHIVE:

Dzięki temu nie jest eksportowany (dzięki :noexport:tagowi), a ponadto zawartość nie jest ujawniana podczas globalnego jazdy na rowerze (dzięki :ARCHIVE:tagowi).

I również umieścić różne opcje konfiguracyjne relacja Org ( #+TITLE:, #+AUTHOR, #+OPTIONSitd) pod tym tytułem, więc nie zajmują przestrzeni wizualnej, chyba że chcesz je edytować.

Jonathan Leech-Pepin
źródło
5

Nieumyślnie uniknąłem tego problemu, ponieważ zawsze używam przypisu w swoich dokumentach. Wykonanie C-c C-x fspowoduje wstawienie przypisu, który automatycznie utworzy * Footnotessekcję na końcu bufora.

Jest to specjalny bufor i nigdy nie jest eksportowany jako sekcja w trybie org. Dlatego nigdy nie będziesz musiał przenosić tej sekcji w hierarchii.

Nawet jeśli nie użyjesz przypisów, pozostawienie pustej * Footnotessekcji na końcu nie zaszkodzi, ponieważ nigdy nie wyeksportuje się jako sekcja.

Oto co bym zrobił:

  • Robić C-c C-x f
  • Podaj przypisowi tekst w rodzaju „To jest obojętny przypis”.
  • Usuń automatycznie utworzone odwołanie [fn:1]z głównego obszaru (nie z sekcji przypisów).

Zasugerowałem zrobienie tego, ponieważ nie jestem pewien, czy tryb org wykryje obecność prawidłowych opisów przypisów w sekcji Przypisy, aby zaliczyć je do sekcji specjalnej.

Kaushal Modi
źródło