我正在将大量文本从PDF文档复制到vim中,但是当您从PDF而不是Web浏览器进行复制粘贴时,每次PDF行在段落中断时,复制的文本都会包含换行符。因此,当我使用'p'粘贴到vim时,我必须多次按'J'来折叠换行符。
我更喜欢有一个命令,我可以映射到键盘上的另一个字母,该字母获取复制文本的内容并粘贴它删除换行符。知道我怎么能这样做吗?
答案 0 :(得分:2)
这应该这样做:
map <leader>xx :let @* = substitute(@*, "\n", "", "g")<CR>"*p
使用您选择的映射更改<leader>xx
这个命令做了什么,它在剪贴板寄存器(这是星形寄存器)中替换了行结束符(\n
),没有任何内容(""
)。然后它粘贴*
寄存器中的文本。
答案 1 :(得分:0)
您可以使用我的UnconditionalPaste plugin。它提供gcp
/ gcP
映射,强制粘贴为字符,即所有换行符和缩进都展平为空格。它还有其他类似的映射来强制行模式,或使用自定义分隔符粘贴等等。