Questions tagged «line-breaks»


5
如何在不产生空格的情况下连接线?
J用于连接行的标准命令用空格替换换行符。这在编辑“文学”时很有用,但是如果我忘记手工删除一个多余的空间,比如说我手动编辑一个十六进制转储会很麻烦。 有没有一种快速简便的方法来连接两条线而又不会在它们之间留出空间?

4
使用Python文件类型时,如何在vim中重新格式化多行字符串?
假设我正在vim中编辑一些Python代码,如下所示: myobj.myfunc("Some string parameter that goes on and on and on and on and sometimes doesn't" "split very" "neatly over different lines so that" "it is formatted attractively") 我希望重新格式化,以便重新设置到textwidth我设置的位置: myobj.myfunc("Some string parameter that goes on and on and " "on and on and sometimes doesn't split very " "neatly over ...


6
我可以用逗号(或其他字符)加入行吗?
我知道我可以在Vim中加入行J以及它们的几个变体(gJ,等等);J将“删除缩进并最多插入两个空格”。 但是,还有插入其他字符而不是两个空格的简单方法吗?例如逗号(,)或逗号和空格(,)? 鉴于: 8 9 10 32 我想结束于: 8, 9, 10, 32 要么: 8,9,10,32

4
如何设置Vim以每行一个句子使用?
我目前正在写很多纯文本(以及LaTeX,段落中的格式最少),如果可以设置vim保留每个句子(为简单起见,文本以'。','!或“?”;这是一个终止标点符号,后跟一个空格,以避免在其自己的行上出现小数点),因此VCS差异将更加有用。 最少,我想gq格式化以下文本: He lay flat on the brown, pine-needled floor of the forest, his chin on his folded arms, and high overhead the wind blew in the tops of the pine trees. The mountainside sloped gently where he lay; but below it was steep and he could see the dark ...

1
防止Vim在markdown中破坏标签中间的链接
假设我有这个Markdown文件: [Lorem ipsum dolor sit ](http://vi.stackexchange.com/many-links-are-often-very) 看起来不错。但是链接没有完成,所以我输入-long,现在Vim中断了: [Lorem ipsum dolor sit ](http://vi.stackexchange.com/many-links-are-often-very-long) 由于我的textwidth=80设置,...断开链接中间标签在技术上是有效的降价促销,但恕我直言,恕我直言;拥有漂亮外观的源文件是Markdown的重点。 随着gq这个问题往往是更糟糕: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam viverra nec [Lorem ipsum dolor sit](http://vi.stackexchange.com/many-links-are-often-very-very-long) 变成这个: Lorem ipsum dolor sit amet, consectetur adipiscing ...

3
如何使vim自动在文件末尾添加换行符?
Vim通常<EOL>只在原始文件中有最后一行时才写最后一行。 如何使vim始终在文件末尾写入新行(当文件不是二进制文件并且还没有二进制文件时)? 我已经测试了eol选项,但是没有按预期工作。 另请参阅:保留文本文件末尾缺少的行尾,但相反。并且:为什么文件应该以换行符结尾?

1
为什么换行符在搜索寄存器中转换为Null字符,并在命令行转换为回车符?
如果我有以下文字: foo bar 我从视觉上选择它并复制它。 现在,该文本存储在未命名的寄存器中",这是其内容(的输出:reg "): "" foo^Jbar^J 根据此图表,似乎^J是换行符的插入符号。 如果要a通过键入:let @a = @" 以下内容在寄存器中复制未命名的寄存器:这是其内容(的输出:reg a): "a foo^Jbar^J 它没有改变。 如果现在我输入:let @/ = @",将其复制到搜索寄存器中,则其内容为的输出:reg /: "/ foo^@bar^@ 根据上一张图表,它似乎^@是Null字符的插入符号。 为什么换行符会自动在搜索寄存器(而不是a寄存器)内转换为Null字符? 如果我在命令行上(或之后的搜索中/)插入未命名的寄存器,则通过输入:<C-R>",将插入以下内容: :foo^Mbar^M 同样,根据最后一张图表,这^M似乎是回车符的插入符号。 为什么在命令行上将换行符自动转换为回车符? 编辑: 通常,您可以通过键入以下内容来插入文字控制字符: <C-V><C-{character in caret notation}> 例如,您可以<C-R>通过键入插入文字<C-V><C-R>。 您可以为看似任何控制字符执行此操作。 但是,我注意到我无法在缓冲区内或命令行上插入文字LF,因为如果键入:<C-V><C-J>它会插入^@,空字符而不是^J。 是否出于相同的原因将LF在搜索寄存器中转换为NUL? 编辑2: 在中:h key-notation,我们可以阅读以下内容: <Nul> zero CTRL-@ 0 (stored as ...

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.