在 vim 硬包裝而不加入

在 vim 硬包裝而不加入

Vim 新手。我如何在 vim 中硬包裝純文字(插入實際換行符),尊重單字邊界,無需加入現有線路

例如,考慮到:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

- Nulla cursus accumsan faucibus.
- Donec dapibus dignissim ullamcorper.

Integer
nec
malesuada
diam.

我想得到(textwidth = 30):

Lorem ipsum dolor sit amet,
consectetur adipiscing elit.

- Nulla cursus accumsan
  faucibus.
- Donec dapibus dignissim
  ullamcorper.

Integer
nec
malesuada
diam.

而不是這個(我可以用它得到gggqG

Lorem ipsum dolor sit amet,
consectetur adipiscing elit.

- Nulla cursus accumsan
  faucibus.
- Donec dapibus dignissim
  ullamcorper.

Integer nec malesuada diam.

另外,為了獎勵積分:當我建立一個全新的緩衝區時,我得到的換行行為(以 - 開頭的行不是專門換行的)與開啟以 .txt 結尾的檔案時不同。 是什麼控制著這個?我沒有註意到:set filetype?or的輸出有任何差異:filetype

答案1

對於第一個問題,使用

:%normal gqq

這將gqq在每一行上單獨執行。

我不知道第二個問題的答案,但這可能是由 .txt 後綴更改'formatoptions'或未'comments'設定.txt 後綴觸發的自動命令的結果'filetype'。你可以執行

:verbose set fo? com?

查看這些選項最後設定的位置。一些 GNU/Linux 發行版將自己的 Vim 設定指令放在 /etc/vimrc 或 /usr/share/vim/vimrc 中。

相關內容