2009-08-11 10 views
6

Niedawno odkryłem tryb sznurów haczykowych w Emacs (po tym, jak byłam zwykłym użytkownikiem przez 5 lat!). Tak ustawić w pliku moi .emacsTryb sznurów w Emacs

(add-hook 'text-mode-hook 'turn-on-auto-fill) 
(add-hook 'text-mode-hook 'longlines-mode) 

(Czy nadal muszę auto wypełnić? Nie mogę powiedzieć ...), który również określa org-mode, aby działać w trybie Takle również. Wydaje się to zepsuć funkcjonalność tworzenia tabel, dlatego chciałbym wyłączyć tryb linii długich w trybie org (który wydaje się zawierać haki w trybie tekstowym), ale pozostawić je włączone dla plików tekstowych (.txt).

Zastanawiam się, czy ktoś ma rozwiązanie tego problemu? Powoli wychwytuję fragmenty Emacsa Lispa, ale jeszcze nie studiowałem manipulowania trybem haczyków ...

Wielkie dzięki! -Stephen

+0

Używam emacs również przez około 5 lat i niedawno zostałem obdarzony bardzo przydatnymi funkcjami z odpowiedzi pod adresem: http://stackoverflow.com/questions/60367/the-single-most-useful-emacs-feature – Pete

Odpowiedz

11

Wypróbuj visual-line-mode, który zastępuje longlines-mode od czasu Emacs-23.1.

+0

Tak, właśnie przełączyłem się na Emacs 23, więc to działa dobrze - dziękuję. – hatmatrix

+0

Dziękuję bardzo za tę odpowiedź. Szkoda, że ​​po prostu nie niszczyły przestarzałych bibliotek, takich jak sznury haczykowe, aby nie były już przypadkowo dostępne. :-) – ShreevatsaR

+0

Dobra sugestia, nie wiedziałem o trybie linii wizualnej. Zwróć też uwagę, że linie sznurów haseł-show-hard-newlines nadal działają w trybie linii wizualnej, co czasem przydaje się. Re "nuking przestarzałe biblioteki" na ostatni komentarz, bardziej zastanawiam się, dlaczego powstała nowa biblioteka, zamiast tylko ulepszania trybu sznurów haczykowych. W każdym razie samo usunięcie biblioteki bez informowania użytkowników o zamianie nie jest pomocne. – Liam

3

powinien być w stanie wyraźnie wyłączyć longlines-mode w org-mode dodając hak org-mode-hook:

(add-hook 'org-mode-hook 
      '(lambda() 
      (longlines-mode -1))) 

Edit: Dzięki Török Gábor dla wskazując mój Elisp nie :-)

+0

Powoduje to wyłączenie, gdy jest włączone? Interesujące ... i dzięki! – hatmatrix

+0

To powinno być tak. Zasadniczo przełącza 'tryb sznurów długich', dopóki nie zwróci' nil', co oznacza, że ​​jest wyłączony. Nie widziałem innego sposobu na deterministyczne wyłączenie tego. –

+0

Kludgey (przepraszam, że tak mówię), ale sprytny! Bardzo, bardzo ... – hatmatrix

0

wyłączyć tryb automatycznego wypełniania podczas korzystania z sznurów haczykowych, a teraz, gdy jestem świadomy i korzystam z trybu linii wizualnej, również. Myślę, że nie jest to konieczne z żadnym z nich dla moich celów, i prawdopodobnie będzie z nimi w konflikcie (wstawianie twardych nowych linii w tych samych lub w różnych miejscach, w których sznury/linie wizualne wstawiają miękkie linie nowe).

Powiązane problemy