Jeśli wszystko, czego chcesz, to selektywne pokazywanie sekcji i nawigacja między nagłówkami, nie potrzebujesz trybu Org. Wszystko czego potrzebujesz to tryb konspektu . Tryb konspektu to zasadniczo poziom nagłówka i zarządzanie widocznością sekcji w trybie organizacji. W rzeczywistości tryb Org był pierwotnie rozszerzeniami autora do trybu konspektu, a także rósł, rósł i rósł ... Nawet dzisiaj org-modewywodzi się z niego outline-mode.
Tryb konspektu istnieje zarówno jako tryb główny, jak i tryb pomocniczy. Tryb podrzędny może być używany w dowolnym trybie głównym. Można go skonfigurować tak, aby używał formatu nagłówka zgodnego ze składnią programu, a robi to wiele głównych trybów, ustawiając outline-regexpzmienną na wyrażenie regularne pasujące do początku nagłówka. Na przykład jest to wartość domyślna w trybie Emacs Lisp:
";;;\\(;* [^ \t\n]\\|###autoload\\)\\|("
tzn. nagłówki sekcji zaczynają się od trzech lub więcej średników i pojedynczej spacji lub nawiasu otwierającego na lewym marginesie. Zmienna outline-levelzawiera nazwę funkcji określającej głębokość nagłówka; wartością domyślną jest długość pasującego łańcucha outline-regexp, a tryb Emacs Lisp zastępuje go, aby przypisać większą głębokość do (i ;;;###autoload.
Jeśli nie podoba ci się domyślny format nagłówka, ustaw zmienną outline-regexpw deklaracji zmiennej lokalnej pliku . Właśnie tego używam - wszystkie moje nagłówki sekcji składają się z ;;;klasycznej sekwencji gwiazd:
;;; Local Variables:
;;; outline-regexp: ";;;\\*+\\|\\`"
;;; End:
Jeśli chcesz, aby tryb pomocniczy Zarys był włączany automatycznie podczas ładowania pliku, dodaj następujący wiersz w sekcji Zmienne lokalne - pamiętaj, że ostrzeże Cię przed niebezpiecznym kodem w Emacsie ≤23.x.
;;; eval: (outline-minor-mode 1)
Polecenia dla trybu pomocniczego konspektu C-c @domyślnie używają raczej niewygodnego prefiksu. Przenoszę go do M-o(nigdy nie używam powiązań facemenu), możesz preferować inny klucz lub replikować powiązania w trybie Org (które nieco odbiegają od trybu konspektu).
orgwersję Elpy zamiastorgtej dostępnej w czystym emacsie? Wygląda na to, żepackagekod inicjalizacyjny musiałby zostać wyciągniętysettings.orgi wprowadzonyinit.el?