Leo Technology Stack Leo Technology Stack
首页
  • Android
  • Web
  • SpringBoot
  • 数据库
  • Docker
  • Netty
  • KubeSphere
  • Linux
  • Android Framework
  • 开源库
思维
  • 面试
  • 投资理财
  • 杂事记录
  • 索引

    • 分类
    • 标签
    • 归档
  • 开源项目

    • Advance Markdown
    • AnLibrary (opens new window)

Leo

不知名的架构师
首页
  • Android
  • Web
  • SpringBoot
  • 数据库
  • Docker
  • Netty
  • KubeSphere
  • Linux
  • Android Framework
  • 开源库
思维
  • 面试
  • 投资理财
  • 杂事记录
  • 索引

    • 分类
    • 标签
    • 归档
  • 开源项目

    • Advance Markdown
    • AnLibrary (opens new window)
  • 目录页

  • 前端

  • 后端

  • Linux

    • Linux

      • Vim配置
        • 常用命令
        • 多窗口使用技巧
        • 快速跳转
        • vim编辑常用快捷键
        • 会话
      • Cmake
      • Linux概念扫盲
    • Android Framework

    • 开源库

  • thinking

  • interview

  • notes
  • Linux
  • Linux
2021-05-07

Vim配置

# 常用命令

  • 展开折叠代码,zi
  • 跳转到第一行,:1 gg
  • 跳转到最后一行 😒 shift+g

# 多窗口使用技巧

# 打开多个窗口

  • new name.txt
  • sp(lit) name.txt
  • vsp(lit) name.txt

# 关闭多窗口

  • q!,w!,x 真正退出
  • close 暂时关闭窗口,内容还在缓存中
  • tabc 关闭当前窗口
  • tabo 关闭所有窗口

# 窗口切换

  • ctrl + w + j/k 上下切换
  • ctrl + w + 方向键 上下左右切换
  • ctrl + w (双击) 依次切换

# 窗口大小调整

  • ctrl + w + 纵向扩大,行数增加
  • ctrl + w - 纵向缩小,行数减小
  • res(ize) num 显示行数调整为num行
  • res(ize) + num 增加num行
  • res(ize) - num 减少num行
  • vertical res(ize) num 指定当前窗口为num列
  • vertical res(ize)+num 把当前窗口增加num列
  • vertical res(ize)-num 把当前窗口减少num列

# 给窗口重命名

  • f file

# vi打开多个窗口

  • vi a b c

# 文件浏览

  • :Ex 开启目录浏览器,可以浏览当前目录下的所有文件,并可以选择
  • :Sex 水平分割当前窗口,并在一个窗口中开启目录浏览器
  • :ls 显示当前buffer情况

# vi和shell切换

  • :shell 可以在不关闭vi的情况下切换到shell命令行
  • :exit 从shell回到vi

# 快速跳转

  • %

  • [m

  • [M

  • ]m

  • ]M

  • [{

  • ]}

  • [(

  • ])

  • gd

  • gD

# vim编辑常用快捷键

# 复制粘贴剪切

  • yy 拷贝某一行的内容
  • dd 剪切某一行的内容
  • p 粘贴
  • v + 光标移动选中一些,松开v,然后按下y => 即拷贝选中的内容
  • v + 光标移动选中一些,松开v,然后按下d => 即剪切选中的内容
  • ctrl + v 列模式,移动光标可以选择列的内容
  • dd可以看成是删除单独行,v + 光标移动选中内容再按下d可以看成是删除多行内容。

# 查找与替换

  • 全局查找

    • 在normal模式下按下/即可进入查找模式,输入要查找的字符串并按下回车。 Vim会跳转到第一个匹配。按下n查找下一个,按下N查找上一个
    • 在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找。例如: /foo\c /Foo\C
  • 查找当前单词

      • 查找当前光标所在的单词
    • g* 可查找光标所在单词的字符序列,每次出现前后字符无要求
  • 查找和替换

    • 😒(substitute)命令用来查找和替换字符串
    • :{作用范围}s/{目标}/{替换}/{替换标志}
      • eg :%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(g)
      • 作用范围
        • 当前行 😒/foo/bar/g
        • 全文 :%s/foo/bar/g
        • 选区 :'<,'>s/foo/bar/g在Visual模式下选择区域后输入:,Vim即可自动补全为 :'<,'>
        • 2-11行 :5,12s/foo/bar/g
        • 当前行.与接下来两行+2 :.,+2s/foo/bar/g
      • 替换标志
        • 空替换标志 表示只替换从光标位置开始,目标的第一次出现
        • g,表示全局global替换(即替换目标的所有出现)
        • i表示大小写不敏感查找,I表示大小写敏感
        • c表示需要确认,例如全局查找"foo"替换为"bar"并且需要确认
  • https://www.jianshu.com/p/b8e3b4e2075f

# 代码折叠

  • set foldenable 启动折叠

  • :set foldmethod=manual (Manual(手工折叠)、Indent(缩进折叠)、Marker(标记折叠)和Syntax(语法折叠))

  • za 打开关闭当前的折叠

  • zc 关闭当前打开的折叠

  • zo 打开当前的折叠

  • zm 关闭所有的折叠

  • zM 关闭所有的折叠及其嵌套的折叠

  • zr 打开所有折叠

  • zR 打开所有折叠及其嵌套的折叠

  • zd 删除当前的折叠

  • zE 删除所有的折叠

  • zj 移动至下一个折叠

  • zk 移动至上一个折叠

  • zn 禁用折叠

  • zN 启用折叠

  • Manual Fold

    • zf
    • zfa(
  • Indent Fold

  • Syntax Fold

  • Marker Fold

# 会话

  • :mksession 保存当前会话
  • :mkVimball
  • :mkexrc
  • mkspell
  • mkview
  • mkvimrc
编辑此页 (opens new window)
上次更新: 2022-04-28, 11:21:32
本地虚拟机搭建k8s集群以及安装KubeSphere
Cmake

← 本地虚拟机搭建k8s集群以及安装KubeSphere Cmake→

Theme by Leo | Copyright © 2016-2022 Leo | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式