gvim常用快捷键(gvim命令大全)

gvim常用快捷键(gvim命令大全)

1. gvim命令大全

现在我来回答自己的提问。经过查阅一些资料,我找到了四种解决办法,并在我的博客上写了一篇总结:在文本每一行的行首和行尾都插入特定的相同字符或文本

,现转载如下:办法一:notepa++的列编辑

先说在每行行首插入相同文本的办法。首先把原始文本粘贴到notepa++里,然后事先复制好你要重复输入的字符123abc,然后把光标移到第一行第一列,也就是“床”的前面,然后按住ALT键,鼠标从第一行直接拉到最末行,然后就看到光标变长了,最后直接ctrl+v粘贴即可。然后把光标移到第一行的末尾,就可以用列编辑在每行行尾插入重复文本了。

办法二: notepa++正则表达式替换

把原始文本粘贴到notepa++里后,搜索,替换,查找目标里输入^,替换为里输入123abc,注意:下方的查找模式里要选择“正则表达式”,最后点击“全部替换”就能看到效果了。

行尾操作也类似,查找目标里输入$,替换为里输入456xyz即可。

^匹配行首,而$匹配行尾。

办法三:gVIM命令

如果你使用vim,那么下面的命令可以让你在每行快速插入重复字符。每行的行首都添加自定义的文本或字符串:

每行的行尾都自定义的文本或字符串

例如要在每行行尾输入456xyz,可以先打冒号,然后直接ctrl+v或者用手势粘贴%s/$/456xyz即可。

另一个在每行行首插入相同字符的办法,这是在国外网站上发现的:先调光标到第一行的行首,然后按Ctrl+Q选择列,然后按j选择多列,然后按Shift+i,然后输入你要像插入的字符串,最后按Esc就OK了。

办法四:excel的CONCATENATE函数

先复制原始txt文档,然后新建一个excel,在B1单元格右键,粘贴,然后在A1中输入123abc,下拉复制;同样在C1中输入456xyz,下拉复制。然后在D1中输入=CONCATENATE(A1,B1,C1),回车即可把A1B1C1连起来,最后下拉就完成了。其中=CONCATENATE(A1,B1,C1)命令等同于=A1&B1&C1,当元素少的时候,使用&比较简便。

参考:

Notepad++的列编辑功能

vim 每行行首或行行尾插入相同字符串

How do I insert text at beginning of a multi-line selection in vi/Vim?

Excel中concatenate函数的使用方法

2. gvim 命令

gvim下的列插入:左边插入、右边插入。

命令行模式下:(1)ctrl+v。(gvim下方出现VISUAL BLOCK)

     (2)键盘的上、下、左、右键选中想要插入的部分。

     (3)shift+i--为左边插入,shift+a为右边插入(按下shift+i,会进入底行模式,光标出现在第一个选中的左边)。

     (4)输入想要插入的内容。

     (5)按下ESC即完成插入。撤销之前的所有操作:命令行模式下:u 即可。

2,gvim下的替换操作:

命令行模式下:(1)全部字符串替换--:%s/原字符串/更新的字符串/g Enter键确定即可。

(2)替换光标所在行所有的字符串--:s/原字符串/更新的字符串/g Enter键确定即可。

(3)替换光标所在行第一个字符串--:s/原字符串/更新的字符串/ Enter键确定即可。

(4)替换第n行后--第一个字符串--:n,$s/原字符串/更新的字符串/ Enter键确定即可。

(4)替换第n行后--所有字符串--:n,$s/原字符串/更新的字符串/g Enter键确定即可。

3,gvim下的列删除:

命令行模式下:按下ctrl+q,上下左右键选中即将删除的内容,选择结束后Delete即可。

4,gvim下的行复制:

命令行模式下:(1)单行复制粘贴:yy,然后将光标移至将要复制的位置,按p即可。

     (2)n行复制粘贴:nyy,然后将光标移至将要复制的位置,按p即可。(n为数字,复制3行,n就为3)

5,gvim下的行删除:

命令行模式下:(1)删除一行:光标移至删除的那行,按dd即可。

     (2)删除多行:光标移至删除多行的第一行,按ndd即可。(n为数字,删除3行,n就为3,从光标所在行开始向下数3行删除)

3. gvim ^M

终于找到原因了,还是VIMRC配置的问题,因为键盘布局的关系,键盘上按下HOME和END键比较麻烦,所以设置M-u是移动到行首,M-i是移动到行尾。但这是在WINDOWS下使用GVIM设置的,换到MAC上这条设置发现不能正常使用,于是就调换了控制键,使用C-u和C-i,设置分别如下:"编辑模式下移动到当前行开始的位置:imap<C-u> <Esc>^i"编辑模式下移动到当前行的结尾位置":imap<C-i> <Esc>g_

a不知道为什么设置C-i映射就无法正常使用TAB,去掉之后就可以了,还是希望各位大神能给出一个答案。万分感谢~~

~另外,在.bash_profile中加了一个stty -ixon解决了一些其他的按键问题,不知道这个设置是什么意思?

4. gvim windows

GVim 的话,CTRL+INSERT 复制到windows剪贴板,SHIFT+INSERT从windows剪贴板粘贴。

5. gvim操作

,gvim下的列插入:左边插入、右边插入。

命令行模式下:(1)ctrl+v。(gvim下方出现VISUAL BLOCK)

     (2)键盘的上、下、左、右键选中想要插入的部分。

     (3)shift+i--为左边插入,shift+a为右边插入(按下shift+i,会进入底行模式,光标出现在第一个选中的左边)。

     (4)输入想要插入的内容。

     (5)按下ESC即完成插入。撤销之前的所有操作:命令行模式下:u 即可。

2,gvim下的替换操作:

命令行模式下:(1)全部字符串替换--:%s/原字符串/更新的字符串/g Enter键确定即可。

(2)替换光标所在行所有的字符串--:s/原字符串/更新的字符串/g Enter键确定即可。

(3)替换光标所在行第一个字符串--:s/原字符串/更新的字符串/ Enter键确定即可。

(4)替换第n行后--第一个字符串--:n,$s/原字符串/更新的字符串/ Enter键确定即可。

(4)替换第n行后--所有字符串--:n,$s/原字符串/更新的字符串/g Enter键确定即可。

3,gvim下的列删除:

命令行模式下:按下ctrl+q,上下左右键选中即将删除的内容,选择结束后Delete即可。

4,gvim下的行复制:

命令行模式下:(1)单行复制粘贴:yy,然后将光标移至将要复制的位置,按p即可。

     (2)n行复制粘贴:nyy,然后将光标移至将要复制的位置,按p即可。(n为数字,复制3行,n就为3)

5,gvim下的行删除:

命令行模式下:(1)删除一行:光标移至删除的那行,按dd即可。

     (2)删除多行:光标移至删除多行的第一行,按ndd即可。(n为数字,删除3行,n就为3,从光标所在行开始向下数3行删除)

6. gvim教程

vim支持多寄存器机制,形如:

"" 默认寄存器,

"a 命名寄存器a,

"+ 或 "* 为和系统剪切板联动的特殊寄存器

一个寄存器就相当于一个windows剪切板。可以把寄存器操作当成数字命令一样的前导命令: 在操作之前先指定寄存器

在windows的gvim上复制当前行到系统剪切板(其余复制或删除/剪切同理):

"+yy

复制之后,在vim外就可以用ctrl+v粘贴

因此题主的情况应该是:

先gg定位到行首,

2. 然后按 "+ 指定系统联动寄存器,

3. 然后yG复制到buffer末尾,复制内容就同步到系统剪切板了。

需要注意ggyG并不是一个命令而是两个命令,gg只是定位,yG才是复制,因此寄存器 指定不能在gg之前,而要在yG之前

---以下来自GlobalVim

寄存器 "a 的广告---

vim用户都要试试的全局Vim

,让每一次输入都用vim的方式。

7. gvim linux

大部分写作软件和文本编辑器我都试过。

个人比较喜欢小黑屋,但这东西好久不更新了有时候稳定性差点意思。

最近觉得墨者写作也不错,但是动不动就弹出窗口提示有人邀请我拼字,拼字……老子一天才3000多。

其实想要稳定的工具,纯粹的文本编辑器就不错。

比如:Notepad++;UltraEdit;editplus都不错,功能纯粹,非常适合需要断网的纯单机写作环境(断网才能安静写点东西)。Gvim不推荐,设置太麻烦,熟悉的程序员除外。

下面这个是Notepad++

基本功能一个不少,字数统计,断电自动保存(再次打开就能继续),章节目录功能可以用文件夹工作区代替,文档结构图可以快速定位,改文很方便。

最关键的这是老牌软件稳定性有保证。

相关内容