zoukankan      html  css  js  c++  java
  • vim入门

    1.优雅的移动

    1.1在行内移动光标

    1. $(shift + 4) = 直接跳转到行末
    2. ^(shift + 6) = 再次跳回行首

    1.2跨行移动

    1. 数字 + 方向键 = 一次性跳多行
    2. ctrl + f/b = 往前或往后翻
    3. G(shift + g) = 直接跳到文件最末行
    4. gg = 回到文件第一行

    1.3定向移动(查找)

    1. /text = 直接跳转到text位置
    2. n/N = 如果text在文件中多次出现,用n/N向下/上跳转。
    3. /^$ = 查找空白行
    4. /II(/+Tab+Tab) = 查找制表符分隔的数据是否存在空值。

    2.奇怪的文件格式与编码

    1. :set list/nolist = 显示制表符和行尾/取消
    2. :set fileencoding = 查看当前文件编码
    3. :e ++enc=gb18030 = 强行使用GB18030编码重新打开文件

    3.愉快地编辑

    3.1 进入编辑模式

    1. i = 在光标原有位置进入编辑模式
    2. o = 在光标所在行另起一行进入编辑模式
    3. A = 在光标所在行行末进入编辑模式
    4. I = 在光标所在行行首进入编辑模式
    5. a = 在光标右边开始插入(与光标移动命令搭配使用)
    6. O = 在光标所在处往上另起一行进入编辑模式(一般用于文首插入空白行)

    3.2命令模式下的简单编辑

    1. x = 剪切
    2. v = 选中文本
    3. d = 删除
    4. dd = 删除一行
    5. 数字 + dd = 删除若干行
    6. :n,md = 删除第n行到第m行
    7. v模式 + y 或 yy = 复制
    8. p = 粘贴
    9. u = 撤回最近修改

    3.3批量编辑(替换)

    1. :%s/old/new/g = 在全文范围将所有old替换成new,最后的g表示作用到范围中的所有匹配,没有g表示仅作用到所属范围每一行的首个匹配。
    2. 结合^/$, 可以使用查找替换命令在多行的行首或行末添加内容。如:8,16s/^/#实现对8到16行添加注释。

    3.3.1作用范围

    1. %s = 全文范围
    2. s = 光标所在行
    3. n,ms = 从第n行到第m行
    4. .,$s = 光标所在行到文末

    3.4vimdiff

    • vimdiff file1 file2 = 定位两个文件的异同

    3.5分屏

    1. vim -O file1 file2 = 竖屏打开两个文件
    2. :vs file2 = 打开file1后,分屏打开file2
    3. ctrl + w + h/j/k/l = 精确控制window之间的跳转
    4. ctrl + w + w = 跳转到下一个window
    5. ctrl + w + c = 关掉窗口

    本文来自博客园,作者:小恒2020,转载请注明原文链接:https://www.cnblogs.com/xiaoheng2020/p/12994838.html

  • 相关阅读:
    数据库学习笔记5---MySQL字符串函数、日期时间函数
    关于hibernate的AnnotationConfiguration的问题
    浅谈Java web 中request的setAttribute()用法
    JAVA常见面试题之Forward和Redirect的区别
    JSP页面中<%!%>与<%%>与<%=%>
    Servlet的生命周期
    JavaEE学习路线图
    java web项目WEB-INF与META-INF的作用
    iOS-申请邓白氏编码的超详细流程介绍
    从高版本JDK换成低版本JDK报错
  • 原文地址:https://www.cnblogs.com/xiaoheng2020/p/12994838.html
Copyright © 2011-2022 走看看