Questions tagged «formatting»

有关如何使用vim格式化文件的问题-这包括但不限于折叠,缩进,换行等。

2
如何获得vim停止在新行前添加评论?
我正在编辑.vimrc文件,并添加了评论。当我有这样的评论时: " example comment 完成注释后,在行末按回车,下一行将自动设置为注释(引号会自动插入): " example comment " 如何停止这种行为?

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 …

3
如何垂直书写?
可以说我想在文档中生成以下文本: % % Not Important % O -------------------------> % | % S | % o | % m | % e | % | % M | % s | % g | % | % V 是否有任何简单的方法可以像上述那样垂直书写“某些消息”,而不必在每行中手动插入每个字符?

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 …

4
通过交织线合并块
有没有一种专门的方法可以通过插入行来合并两个文本块,就像从下面这样传递: a1 a2 a3 a4 b1 b2 b3 b4 对此: a1 b1 a2 b2 a3 b3 a4 b4 在几个命令? 编辑:我真的很喜欢佐藤桂的解决方案,这是我如何实现它: function! Interleave() " retrieve last selected area position and size let start = line(".") execute "normal! gvo\<esc>" let end = line(".") let [start, end] = sort([start, end], "n") let size …

3
阻止更改为只读文件
当使用Vim编辑一个只读文件时,它只会在第一次编辑时提供一个警告,但允许进行任何更改。我可以理解,这种行为对打算以其他名称保存文件的人可能有用。但是有时我会打开我没有写权限的文件,然后忘记进行更改。 是否可以进入一种模式,在这种模式下,Vim将允许查看文件但阻止进行更改的任何选项?

3
如何自动小写单词的第二个字母?
当我不得不输入大量文本shift时,在写句子的第一个字母时,我常常会按住手指,这通常会给出: [...]end of sentence. NEw sentence[...] 这里E的NEw应该是小写。然后,我试图创建一个函数来检测我键入的句子的第一个单词的第二个字母是否为大写字母,而将其为小写字母。重要的部分是,当我键入句子的结尾时,更正应自动完成。 到目前为止,我已经尝试过使用autocommand事件,InsertCharPre然后才意识到该事件触发的功能无法修改文本。 有什么好的解决方案? 请注意,到目前为止,我不需要关注诸如首字母缩略词之类的边缘情况,首字母缩略词应使用大写字母或类似的东西。 编辑我做了这个,这不是一个完美的解决方法: autocmd CursorMovedI * call RemoveUnwantedUpper() function! RemoveUnwantedUpper() " Get the current sentence " Based on http://stackoverflow.com/a/23315227/4194289 let l:save_clipboard = &clipboard set clipboard= " Avoid clobbering the selection and clipboard registers. let l:save_reg = getreg('"') let l:save_regmode = getregtype('"') normal! …

2
Vim为什么将最大文本宽度设置为79而不是80?
我对Vim中的一些默认值有些疑惑。特别是对于gq{motion},据说 [...] If the 'textwidth' option is 0, the formatted line length is the screen width (with a maximum width of 79). 我认为,如果将最大宽度设置为,应该更有意义80。 有人可以启发我吗?我想我缺少了一些东西。
13 formatting 

1
无法解释的gq缩进问题
我将此文本插入Vim: t tttt ttttttttt tt tttt tt ttt tttttt-tttt-ttttttt tttttttttttttttttttttttttttttttttttttttttttttttttttttt ttttt ttt ttt tttttt ttttttt tttt ttttttt: ttttttt tt ttttttt, ttttttt tt tttttt, tttttt tt ttttttt, tttttt tt tttttt ttt. t tttttt tt ttt (tttt) ttttttt-tttttt-tt-ttttttt tttttt for the "tttttt in ttttttt" part of the issue (in the previous week …

3
在VIM中写减价时自动重新换行
很多时候,我在VIM中编写markdown,并且这些markdown中会有段落。为了帮助编辑,我将Vim设置为在80个字符上换行。如果我继续输入,效果很好,但是问题是,如果我需要进行一些校正,它将变得非常烦人。 演示(摘自Wikipedia一阶逻辑): The adjective "first-order" distinguishes first-order logic from higher-order logic in which there are predicates having predicates or functions as arguments. In first-order theories, predicates are often associated with sets. In interpreted higher-order theories, predicates may be interpreted as sets of sets. 到目前为止,一切都很好。但是,当我修改本文时,我可能会决定在中间添加一些内容,例如: The adjective "first-order" distinguishes first-order logic …


4
行号特定的文本宽度设置
我使用gvim编写电子邮件,并用于tw=72延长行数。现在,我还在同一文档中编辑基本邮件头,例如,我将收件人添加到邮件中。现在,tw=72它每次也会中断72个字符。 如何tw=0在前4行(即标题部分)以及tw=72文档的其余部分设置? 我的formatoptions看起来像这样,如果相关的话: set fo+=tcqn

1
自动套用格式:插入文字后自动换行
阅读help textwith和之后help fo-table,我希望当我设定 set textwidth=20 " for demonstration set formatoptions=tcq 那么插入文本最终总会导致换行,但事实并非如此。包装只发生在光标之前(或之前)。而且,如果我粘贴,则根本不会包裹。 示例(Vim 7.4): 12345678901234567890 This is a long line 如果我点击A并开始输入,该行将自动换行。 但是,如果我点击02wi并键入“ still”,它不会自动换行: 12345678901234567890 This is still a long line 我必须输入另外7个字符,然后才能换行,然后问题在下一行继续: 12345678901234567890 This is still more <-- it wraps here typing and again a long line 粘贴也不会触发换行: 12345678901234567890 This is a …
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.