Jak zarysować / ukryć / pokazać tekst podczas pisania prozy?

9

Chcę używać Emacsa do pisania prozy (konkretnie fikcji).

W przeszłości korzystałem ze Scrivenera i Ulissesa, ale nie jestem z nich zadowolony. Chcę wypróbować Emacsa, ale nie wiem, jak replikować przepływ pracy, do którego jestem przyzwyczajony.

Używam writeroom-modeśrodowiska wolnego od zakłóceń, ale to tylko jeden element układanki. Podoba mi się sposób, w jaki Ulysses i Scrivener pozwalają skupić się na kawałku tekstu, i chciałbym wiedzieć, jak replikować tę funkcjonalność. Chciałbym org-modelub innego konspektu, który pozwoli mi skupić się na kawałku tekstu i ukryć resztę. Idealnie chciałbym mieć pasek boczny (jak Ulysses), w którym mogę ręcznie układać fragmenty tekstu, jak na tym zrzucie ekranu:

Ulisses

PS Przeczytałem plik „Emacs for Writers PDF”, ale nie odnosi się to do potrzeby organizowania i strukturyzowania tekstu.

Jason Mirk
źródło
4
Wyjaśnij swój post pytaniem o to, czego naprawdę potrzebujesz (lepiej, zadaj jedno dyskretne pytanie na post i w razie potrzeby zrób wiele postów). org-modewykonuje kontur, który pozwala skupić się na określonych fragmentach tekstu i przesuwać resztę. Zwężenie usuwa tekst z ekranu.
Dan
1
Może to być kandydat na jedno z tych „pytań z dużej listy” :) (odbyła się dyskusja na Meta dotycząca tego, czy tego rodzaju pytania są odpowiednie na SE: meta.emacs.stackexchange.com/questions/305/... ). Więcej na temat: prawdopodobnie powinieneś ponownie przejść do trybu organizacji. Jest ogromny, a pod względem strukturyzacji tekstu potrafi dużo zrobić. Emacsowi jednak brakuje zrozumienia gramatyki tekstu, który piszesz. Sprawdzanie pisowni to wszystko, co ma do zaoferowania w tym zakresie.
wvxvw
1
Autorzy @lawlist zawsze używali „pasków bocznych” w formie notatek. to tylko jego cyfrowa wersja.
Jason Mirk,
2
Oto ciekawy artykuł zatytułowany Jak napisać książkę w emacsie. masteringemacs.org/article/how-to-write-a-book-in-emacs Jako przykład elispi poświęcenie czasu spędziłem kilka dni, aby po prostu uzyskać podstawowy ruch naśladujący różne edytory tekstu, których użyłem przez lata w moim zawodzie (ach) - np. lewe / prawe słowo, akapit w górę / w dół i usuń słowo. Zaletą Emacsa jest to, że jest idealny dla każdego, kto ma od trochę do wielu zaburzeń obsesyjno-kompulsyjnych, którzy potrzebują konkretnych sposobów i musi być w sam raz, a nie tylko w porządku.
prawnik
1
Scrivener ma zbyt wiele rzeczy i nie piszę zwykłym tekstem, o ile pamiętam. Ulysses 3 jest całkiem dobry, ale często się zawiesza. Nie możesz też podzielić bufora, przenosić akapitów tekstu bez użycia myszy i ton innych rzeczy, których w końcu brakuje, gdy wiesz, że istnieją.
Jason Mirk,

Odpowiedzi:

6

Oto, co uważam za twój cel:

  • Możliwość skupienia się na określonym fragmencie tekstu, jednocześnie usuwając resztę z drogi,
  • Możliwość szybkiego przenoszenia dużych fragmentów tekstu.

To rozwiązanie wykorzystuje tylko gotową funkcjonalność Emacsa:

  • org-mode
  • zwężenie
  • podzielone okna
  • bufory pośrednie

Przede wszystkim, jeśli napiszesz swój dokument w org-mode(lub w dowolnym trybie korzystającym z funkcji Emacsa outline), będziesz mógł uporządkować swój dokument za pomocą nagłówków, podtytułów itp., A następnie ukryć lub pokazać treści te elementy. Jeśli chodzi o prozę, pomocne może okazać się bardzo elementarne: nagłówek rozdziału, nagłówek podsekcji, nagłówek podrzędny podsekcji, aż do sub-sub-pod ... nagłówek dla każdego akapitu.

Po drugie, chociaż org-modepozwoli ci ukryć ciała nagłówków i skoncentrować się tylko na ciele przed sobą, pozostawi nagłówki sekcji na ekranie. Może Cię to rozpraszać. Jeśli to zrobisz, możesz narrowbuforować tylko ten nagłówek (sprawiając, że wszystkie pozostałe nagłówki tymczasowo znikną z widoku), a następnie widenponownie, gdy chcesz ponownie zobaczyć drugi tekst.

Po trzecie, aby uzyskać łatwy widok konspektu i możliwość szybkiego przesuwania tekstu, możesz użyć kombinacji podzielonych okien i buforów pośrednich. Dokonać ramki Emacs wystarczająco szeroki, aby pomieścić dwa okna (patrz ten post do terminologii / Rama okna). Wykonaj, M-x split-window-horizontallyaby uzyskać dwa okna obok siebie w ramce. Zrób to w oknie, w którym znajduje się twój dokument M-x clone-indirect-buffer.

Teraz masz dwie połączone kopie tego samego dokumentu w dwóch różnych buforach. Umieść je w swoich dwóch oknach. Chociaż oba będą zawierać identyczny tekst, możesz sprawić, by wyglądały inaczej w dwóch oknach.

Jednym z bardzo użytecznych sposobów korzystania z tej funkcji jest posiadanie głównego okna edycji, w którym faktycznie wpisujesz i edytujesz swoją prozę, i używasz drugiego okna jako widoku konspektu: ukryj ciała, aby pokazywały tylko nagłówki w danej sekcji / podsekcji / cokolwiek, aby uzyskać przegląd struktury dokumentu. Następnie można przejść kawałki wokół szybko - jeśli używasz org-mode, M-<up>i M-<down>uruchom org-metaupi org-metadown, odpowiednio, które w tym kontekście będzie poruszać poddrzewa (nagłówek i wszystko poniżej niego) w górę iw dół w dokumencie.

Dan
źródło
1
to jest prawie idealne. Napisałem trochę elisp i dostosowałem wszystko do moich upodobań. Nie było wcale takie trudne. Jeszcze jedna rzecz: jak być na pasku bocznym, nacisnąć klawisz i sprawić, by załadował się do głównego bufora. Ale myślę, że to inne pytanie.
Jason Mirk
2
Możesz także cieszyć się clone-indirect-buffer-other-window.
incandescentman,
9

Myślę, że to świetne pytanie. Jestem pewien, że istnieje mnóstwo super pomocnych trybów, których pisarze fikcji nie wiedzą, że potrzebują. Zdarzyło mi się przypadkowo w trybie palimpsest, ale teraz nie mógłbym bez niego żyć. Chciałbym zobaczyć, jakie pakiety są przydatne innym pisarzom.

Oto niektóre, których używam na co dzień:

  • tryb palimpsest . Wysyła zaznaczony tekst na dół pliku. Używam go prawdopodobnie 20 razy na godzinę.
  • Deft . Przyrostowe wyszukiwanie plików tekstowych w katalogu, podobne do nvALT @ ttscoff .
  • Olivetti . Zmniejsz obszar tekstu i popraw go.
  • Fontanna . Jeśli jesteś scenarzystą.
  • Hełm do szybkiego znalezienia rzeczy.
  • Auto-capitalize . Nie musisz sam pisać wielkich liter.
  • Org-pomodoro, aby pozostać na dobrej drodze.
  • tryb wc, aby policzyć słowa, jeśli zajdzie taka potrzeba.
  • A przede wszystkim tryb org do zarysowania. Moja sztuczka polega na tym, że piszę sobie notatki (np. „Ta sekcja wymaga lepszego wstępu”) za pomocą komentarzy w trybie org, aby nie były uwzględniane podczas eksportowania. Och, i użyj polecenia, org-narrow-to-subtreeaby skupić się tylko na sekcji, nad którą pracujesz.
żarnik
źródło
2
To jest doskonałe! Widzę siebie tysiące razy w trybie palimpsest i org-narrow-to-subtree!
Jason Mirk,
1
Znalazłem też to, co wydaje się replikować to, czego szukałem: github.com/titaniumbones/org-writers-room, ale jeszcze nie działało poprawnie. To również interesujące: github.com/theironsamurai/scribemacs
Jason
1
O ile mi wiadomo, pokój org-writer-room jeszcze nie działa. To świetny pomysł, ale ktoś musi napisać kod.
incandescentman,
1
Jacyś wolontariusze?
incandescentman
1

Ta odpowiedź nie jest wyczerpująca, ale nie mogę tego opublikować w komentarzach, ponieważ zawiera ona obraz. Czy spis treści, o którym mówisz, może wyglądać jak poniżej?

wprowadź opis zdjęcia tutaj

Innym sposobem tworzenia konturu jest uruchomienie M-s o^\s-*\*(co jest równoważne M-xoccur). Chociaż nie jest to właściwy zarys, najczęściej uważam, że jest to odpowiednie rozwiązanie problemu z lokalizowaniem i nawigowaniem w sekcjach dokumentu.

wvxvw
źródło
1
Tak, próbowałem Speedbara, ale nie podoba mi się, że jest to pływające okno. Wydaje się nieaktualne.
Jason Mirk,
2
@JasonMirk był projekt, aby Speedbar był buforem, a nie oknem, ale trudno jest sprawić, by działał „poprawnie” z powodu różnych poleceń bufora, które mogą go zakopać lub zastąpić zawartość. Kiedyś istniały menedżery konfiguracji buforów, takie jak EBC, które tworzyły stały układ bufora i mogły także wyświetlać kontur w ustalonej lokalizacji, ale moje doświadczenie w pracy z EBC polega na tym, że częściej mi to przeszkadza. Ale może coś takiego będzie dla ciebie działać, jeśli nie musisz zbyt często manipulować buforami.
wvxvw
1
emacswiki.org/emacs/SrSpeedbar to projekt, o którym mówiłem.
wvxvw
1
Jeśli koncepcja paska prędkości jest czymś, co lubi oryginalny plakat, być może warto zainwestować czas, aby zachowywał się tak, jak chciałby oryginalny plakat. Zajęło mi to około godziny (z dwoma latami elispmałpowania pod pasem), aby stworzyć własną konfigurację biblioteki, rozebrać wszystkie elementy ramki i przekształcić ją w bufor na żądanie, który można wyświetlić w dowolnym oknie. W tym momencie przychodzi czas na inwestycję w Emacsa - znajdujesz coś, co lubisz (tzn. Możesz z nim pracować) i zmieniasz go na cokolwiek, co dokładnie odpowiada twoim potrzebom. Np. generate-speedbar-noselect+ Display
lista prawników
Nie korzystałem z niego, ale co z neotree ?
incandescentman