Robię notatki w dużym pliku trybu org, który ma następującą strukturę:
* Toto, A
Notes about Toto.
* Titi, C
Notes about Titi.
* Tutu, A
Notes about Tutu.
Chciałbym posortować plik tak, aby wszystkie nagłówki A
poprzedzone były nagłówkami B
, które z kolei poprzedzają nagłówki C
i tak dalej. Czy istnieje zautomatyzowany sposób na to w trybie org?
org-sort
?C-c ^
z pamięci (może być czymś podobnym kończącym się na^
, jakC-x C-c ^
itp.)Odpowiedzi:
Istnieje
org-sort
polecenie, ale może być konieczne dostosowanie struktury pliku, aby uzyskać pożądane wyniki (jeśli dobrze rozumiem pytanie).Użyj
org-sort
(C-c ^
), aby posortować wpisy w konspekcie, wiersze w tabeli lub elementy na liście. Na przykład z nagłówka możesz zadzwonić,org-sort
aby posortować wszystkie wpisy potomne.W twoim przykładzie chcesz posortować wpisy najwyższego poziomu w swoim konspekcie, więc najpierw wybierz wszystkie wpisy. Kiedy zadzwonisz
org-sort
, zostaniesz poproszony o sortowanie: alfabetycznie, według priorytetów i tak dalej.Zgaduję z twojego przykładu, że oczekiwany wynik końcowy to:
Czyli chcesz sortować alfabetycznie, ale czy ta ostatnia litera ma pierwszeństwo? Nie ma do tego wbudowanego sortowania. Jeśli zmieniłeś wpisy, aby najpierw umieścić tę literę sortowania (np.
A, Toto
), Wówczas działałoby normalne sortowanie alfabetyczne. Inną opcją byłoby przeniesienie tych informacji do właściwości na każdym elemencie, a następnie można sortować według właściwości.Jak sugeruje @nanny w komentarzach,
org-sort
może również wywoływać funkcję sortowania niestandardowego. W ten sposób możesz użyć istniejącego pliku bez konieczności zmiany wszystkich wpisów. Oto funkcja sortowania, która wyszukuje bieżący tekst nagłówka i dołącza ostatni znak na początku, dzięki czemu ma on pierwszeństwo. Będziesz potrzebować czegoś bardziej niezawodnego, jeśli Twoje nagłówki nie będą zgodne z tym dokładnym wzorem.źródło
[f]unc
typu sortowaniaorg-sort
i napisanie funkcji do sortowania w oparciu o istniejącą strukturę.query-replace-regexp
do edycji kilku nagłówków, które nie były ściśle zgodne z odpowiednim formatem. O wiele łatwiej niż konwersja wszystkich moich danych do właściwości.W dowolnym miejscu pliku umieszczam nagłówki z różnymi priorytetami, nie martwię się o zamówienie. Później przeglądam je posortowane według widoków agendy . Za pomocą tagów posortowane nagłówki z konkretnych kategorii są wyświetlane z niestandardowymi widokami agendy .
Wiem, że nie jest to odpowiedź na pytanie, jak sortować nagłówki w pliku , ale przeglądanie nagłówków z widokami porządku dziennego jest zawsze najlepszym sposobem. Możesz szybko wstawiać nagłówki z priorytetami, nie martwiąc się o zamówienie.
źródło