• 学习笔记 for 《简明 Vim 练级攻略》 分类: ubuntu 2013-06-18 13:02 288人阅读 评论(0) 收藏


      

    原文出处:http://coolshell.cn/articles/5426.html
    以及:http://coolshell.cn/articles/1679.html

    插入模式:
    • a → 在光标后插入
    • o → 在当前行后插入一个新行
    • O → 在当前行前插入一个新行
    • cw → 替换从光标所在位置后到一个单词结尾的字符

    光标移动:
    • 0 → 数字零,到行头
    • ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
    • $ → 到本行行尾
    • g_ → 到本行最后一个不是blank字符的位置。
    • fa → 到下一个为a的字符处,你也可以fs到下一个为s的字符。   (fxj:f是find的意思)
    • t, → 到逗号前的第一个字符。逗号可以变成其它字符。             (fxj:t是till的意思)
    • 3fa → 在当前行查找第三个出现的a。
    • F 和 T → 和 f 和 t 一样,只不过是相反方向。
    Line moves


    按单词移动:
    Word moves example
    • w → 到下一个单词的开头。
    • e → 到下一个单词的结尾。
    • W,E,反方向

    按匹配移动:
    • % : 匹配括号移动,包括 ({[. (陈皓注:你需要把光标先移到括号上)
    • * 和 #:  匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(*是下一个,#是上一个)

    区域选择:
    • vi" → 会选择 foo.                                   (fxj:i” 是 in “的意思)
    • va" → 会选择 "foo".                               (fxj:a” 是 around “的意思)
    • vi) → 会选择 "foo".
    • va) → 会选择("foo").
    • v2i) → 会选择 map (+) ("foo")
    • v2a) → 会选择 (map (+) ("foo"))
    Text objects selection


    块操作: <Ctrl-v>

    块操作,典型的操作,在行首插入: 0 <C-v> <C-d> I-- [ESC]

    • ^ → 到行头
    • <Ctrl-v> → 开始块操作
    • <Ctrl-d> → 向下移动 (你也可以使用hjkl来移动光标,或是使用%,或是别的)
    • I-- [ESC] → I是插入,插入“--”,按ESC键来为每一行生效。

    Rectangular blocks


    或者在行尾插入:<C-v> + <C-d> 或 hjkl + $ + A + [ESC]
    • <C-v> → 开始块操作
    • <C-d> → 向下移动 (你也可以使用hjkl来移动光标,或是使用%,或是别的)
    • → 到行尾
    • A-- [ESC] → A是append,插入“--”,按ESC键来为每一行生效。

    自动提示:
    在 Insert 模式下,你可以输入一个词的开头,然后按 <C-p>或是<C-n>,自动补齐功能就出现了

    可视化后可以进行的操作:
    • J → 把所有的行连接起来(变成一行)
    • < 或 > → 左右缩进
    • = → 自动给缩进
    • d (删除 )
    • y(复制)
    • gU (变大写)
    • gu (变小写)

    分屏: :split 和 vsplit.
    • :split → 创建分屏 (:vsplit创建垂直分屏)
    • <C+w> s:上下分割当前打开的文件。
    • <C+w> v:左右分割当前打开的文件。
    • <C+w> c:关闭分屏
    • <C+w> =:让所有的屏都有一样的高度
    • <C-w><dir> : dir就是方向,可以是 hjkl 或是 ←↓↑→ 中的一个,其用来切换分屏。
    • <C-w>_ (或 <C-w>|) : 最大化尺寸 (<C-w>| 垂直分屏)
    • <C-w>+ (或 <C-w>-) : 增加尺寸
  • 相关阅读:
    jmeter循环控制器
    SQL语句
    Linux防火墙常用命令
    利用cookie,实现刷新页面跳转,左侧菜单点击后状态保持不变。
    JQUERY动态生成当前年份的前5年以及后 2年
    (个人累积,分享)制作iconfont并转化图标代码使用
    如果一张要显示的图片穿插着两个路径该怎么解决?
    上传图片后台写法
    分析器错误消息:未能加载类型“XXXXXXX”
    尝试加载应用时出现了以下错误
  • 原文地址:https://www.cnblogs.com/think1988/p/4628159.html
Copyright © 2020-2023  润新知