Chinaunix首页 | 论坛 | 博客
  • 博客访问: 89006
  • 博文数量: 33
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2015-09-21 16:23
文章分类

全部博文(33)

文章存档

2016年(5)

2015年(29)

我的朋友

分类: LINUX

2015-12-29 23:09:11

在 vi 中, 移动光标和编辑是两件事, 正因为区分开来, 所以可以很方便的进行光标定
位和编辑. 因此能更快一点移动光标是很有用的.文中的c-表示ctrl,大小写敏感。光标定位
还需结合搜索。

=== 光标定位 ==
   
    h或^h         向左移一个字符

    j或^j或^n     向下移一行

    k或^p         向上移一行

    l或空格         向右移一个字符

    w             移到下一个字的开头

    W             移到下一个字的开头,忽略标点符号。默认的情况下W认为字符串时已空格分开的。

                    cp /mnt/marvell/main.sh /stv/ 

                    所以上面一行在W的选择下只有三个字符串,即 1 cp 2 /mnt/marvell/main.sh  3 /stv/ 

                    这与w时不一样的。


    e             移到下一个字的结尾

    E             移到下一个字的结尾,忽略标点符号

    b             移到前一个字的开头

    B             移到前一个字的开头,忽略标点符号同W
   

    |             移到当前行的第一列


    0             移到当前行的第一列字符处,会忽略行前的空白。


    n|             移到当前行的第n列

    ^             移到当前行的第一个非空字符

    $             移到当前行的最后一个字符

    return或+     移到下一行的第一个字符

    -             移到前一行的第一个非空字符

    L             移到屏幕的最后一行

    M             移到屏幕的中间一行

    H             移到屏幕的第一行
   
    G             移到文件的最后一行

    nG             移到文件的第n行



    (             移到句子的开头

    )             移到句子的结尾

    {             移到段落的开头 //我用的时候发现{只是移动到前一个空行 }移动到后一个空行首

    }             移到下一个段落的开头

      /**vim 第一列插入{来定义一个段落 */

    [[             回到段落的开头处

    ]]             向前移到下一个段落的开头处
   
    m(a-z)         用一个字母来标记当前位置,如用mz表示标记z

    '(a-z)         将光标移动到指定的标记,如用'z表示移动到z
  
    ''          此命令相当有用, 它移动光标到上一个标记处, 比如用 gd, * 等查(此处时两个单引号不是双引号)
                找到某个单词后, 再输入此命令则回到上次停留的位置.

    '.          此命令相当好使, 它移动光标到上一次的修改行.

    `.          此命令相当强大, 它移动光标到上一次的修改点.

    %            从大括号的开始移动到大括号的结束位置
   
    :            后边加行号就是跳到这一行
   
           光标返回到以前的位置。相当于光标移动的“撤销”

           光标返回到后来的位置。相当于光标移动的“恢复”
   

    f


=== 屏幕定位 ==

    c-e         将屏幕上滚一行

    c-y         将屏幕下滚一行

    c-u         将屏幕上滚半页

    c-d         将屏幕下滚半页

    c-b         将屏幕上滚一页

    c-f         将屏幕下滚一页

    z-return     将当前行置为屏幕的顶行

    nz-return     将当前行下的第n行置为屏幕的顶行

    z.             将当前行置为屏幕的中央

    nz.         将当前行上的第n行置为屏幕的中央

    z-             将当前行置为屏幕的底行

    nz-         将当前行上的第n行置为屏幕的底行

阅读(1215) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~