2012-01-07 23 views
39

我喜歡全屏運行我的編輯器。但唯一的是,當我這樣做時,換行字只在線觸及屏幕的右邊時纔會觸發。我希望這樣做,已經在線路擊中時,例如列號200.Emacs在特定列號處換行?

我該怎麼做?

我希望它能在所有模式下發生,例如, org-mode。我將(global-visual-line-mode t)添加到我的.emacs文件中,以便換行也可以在org-mode中運行。

我運行的Emacs 23

編輯: 我得到它的工作!如果從未來的人看這個,這裏是我加入到我的.emacs文件,使之成爲現實:

(add-hook 'text-mode-hook 'turn-on-auto-fill) 
(add-hook 'text-mode-hook 
    '(lambda() (set-fill-column 80))) 
+0

無需安裝兩個鉤子:您可以在lambda內調用'(開啓自動填充)',從而擺脫第一條線。 – Thomas 2014-08-07 07:06:47

+1

@Thomas所以​​這將是'(加鉤'text-mode-hook'(lambda()(turn-on-auto-fill)(set-fill-column 80)))'then? – 2014-11-27 11:23:12

+0

@JohnWickerson你明白了。 – Thomas 2014-11-27 12:20:51

回答

18

您可以設置線寬與C-X˚Fset-fill-column)。

+0

感謝您的回覆。我試過了,但似乎沒有發生。我曾嘗試將它放在我的'.emacs'文件和所有內容中,但我確實看不到任何區別。 – torbonde 2012-01-07 20:49:48

+5

您可能需要按'M-q'重新格式化當前段落(填充段落)或選擇要對齊的文本並運行(填充區域)。 – choroba 2012-01-07 21:15:52

38

類型M-x自動填充模式在特定列之後激活自動換行。然後通過變量fill-column設置實際線寬,如用戶chorobaC-x f)所述。

請注意,這與其他文本編輯器所做的工作有點不同。 M-q將重新格式化當前段落。

+0

值得一提的是,對於spacemacs用戶來說,切換'auto-fill-mode'的用戶映射到'SPC t F'。 – krvkir 2017-11-26 11:44:22

+0

請注意,原來的問題不是關於spacemacs,但。 – Thomas 2017-11-27 06:58:58

5

查看Emacs手冊(C-h r),節點Filling。特別參見菜單中的第一個子節點Auto Fill

4

對於turn-on-auto-fill的建議將工作,如果你想在你正在編輯的文件的硬換文。如果不是,並且您只是想換行,請考慮改爲visual-fill-column-mode,它只是在窗口的邊緣執行正常的換行操作,但是在指定的fill-column處。

+2

謝謝。 (請注意,這是第三方軟件包:https://github.com/joostkremers/visual-fill-column) – olejorgenb 2016-05-28 11:49:51