Maoyl's blog Maoyl's blog
首页
  • 前端基础

    • HTML
    • CSS
    • CSS动画
    • JavaScript文章
    • stylus
  • 性能优化

    • 《性能优化》笔记
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《JavaScript高级程序设计》笔记
    • 《ES6 教程》笔记
    • 《JavaScript设计模式》笔记
    • 《TypeScript 从零实现 axios》
    • TypeScript笔记
    • JS设计模式总结笔记
  • 前端框架

    • Vue相关
    • React相关
  • 前端监控

    • 前端监控简介
  • 学习笔记

    • 《Vue》笔记
    • 《React》笔记
    • 小程序学习笔记
  • 后端基础

    • Nodejs
  • 学习笔记

    • 数据结构
  • 技术文档
  • GitHub技巧
  • 博客搭建
  • 网页性能
  • 学习笔记

    • 《Git》学习笔记
    • 《Vim》学习笔记
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

maoyln

日日行,不怕千万里
首页
  • 前端基础

    • HTML
    • CSS
    • CSS动画
    • JavaScript文章
    • stylus
  • 性能优化

    • 《性能优化》笔记
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《JavaScript高级程序设计》笔记
    • 《ES6 教程》笔记
    • 《JavaScript设计模式》笔记
    • 《TypeScript 从零实现 axios》
    • TypeScript笔记
    • JS设计模式总结笔记
  • 前端框架

    • Vue相关
    • React相关
  • 前端监控

    • 前端监控简介
  • 学习笔记

    • 《Vue》笔记
    • 《React》笔记
    • 小程序学习笔记
  • 后端基础

    • Nodejs
  • 学习笔记

    • 数据结构
  • 技术文档
  • GitHub技巧
  • 博客搭建
  • 网页性能
  • 学习笔记

    • 《Git》学习笔记
    • 《Vim》学习笔记
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 简介

  • vim

    • 起步
    • 相关命令的知识
    • 认识vim语法
    • 删改重做命令提升效率
    • 认识可视化模式
    • 什么是文本对象
    • 快速移动
    • 掌握搜索命令
    • vim-easymotion
    • 数字与'.'的威力
    • 多文件跳转
    • vim-surround
    • 字符替换和多文本选中
    • 大小写、注释与提示
    • 窗口管理大法
      • vim 的窗口管理
        • 新建窗
        • 窗口切换
        • 关闭窗口
      • vscode 的窗口管理
        • 新建窗口
        • 窗口切换
        • 关闭窗口
    • 快速删除一个函数
    • vim的宏操作
    • 调用vscode命令
  • vscode

  • 《Vim》学习笔记
  • vim
maoyln
2022-06-20
目录

窗口管理大法

# 只手遮窗:窗口管理大法

在开发中,我们可能需要同时打开多个编辑窗口,二分屏、三分屏甚至更多,这时候在不同的窗口中切换焦点也就是一个大需求,而 vim 和 vscode,都有提供一套多编辑窗口的管理方法。

# vim 的窗口管理

# 新建窗

  • control + w + v:在当前窗口的左边或右边新建窗口
  • control + w + s:在当前窗口的上边或下边新建窗口

# 窗口切换

  • control + w + h j k l:切换到上 / 下 / 左 / 右方向的窗口
  • control + w + v:打开多个窗口时,在不同的窗口间相互切换,如只有两个窗口时,则在两个窗口间互相切换

# 关闭窗口

  • control + w + c:关闭当前窗口
  • control + w + v:保留当前窗口,关闭其他所有窗口

# vscode 的窗口管理

可能有些人(包括我)会觉得 vim 的窗口管理快捷键比较繁琐,尤其是使用过 vscode 的窗口管理快捷键的小伙伴,为了让我们管理得更顺手,我们可以结合 vscode 自身的快捷键再加上一些扩展的键位映射,达到和 vim 的窗口管理快捷键一样的效果。如下:

# 新建窗口

  • command + \:在当前窗口的左边或右边新建口
  • command + control + \:在当前窗口的上边或下边新建窗口

# 窗口切换

  • shift + control + h j k l:切换到上 / 下 / 左 / 右方向的窗口 (需要有将 control + h j k l 映射为方向键),并且在 vscode 的 keybindings.json 中添加如下映射,映射其实是把 shift + 方向键映射为 vim 的窗口切换键了:
{
  "key": "shift+left",
  "command": "vim.remap",
  "when": "vim.mode == 'Normal'",
  "args": {
    "after": ["<c-w>", "h"]
  }
},
{
  "key": "shift+right",
  "command": "vim.remap",
  "when": "vim.mode == 'Normal'",
  "args": {
    "after": ["<c-w>", "l"]
  }
},
{
  "key": "shift+up",
  "command": "vim.remap",
  "when": "vim.mode == 'Normal'",
  "args": {
    "after": ["<c-w>", "k"]
  }
},
{
  "key": "shift+down",
  "command": "vim.remap",
  "when": "vim.mode == 'Normal'",
  "args": {
    "after": ["<c-w>", "j"]
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

:::info 多嘴一句 感觉 shift + control + h j k l 和 control + w + h j k l 其实是差不多的,改不改区别不大。 :::

# 关闭窗口

  • command + w:关闭当前窗口
  • command + k + w:保留当前窗口,关闭其他所有窗口

小提示

在vscode中如果关闭有未保存内容的窗口时,会弹出对话框; 这时如果按 enter 键,即为 “保存”, 按 space 键,是为 “不保存”。

编辑 (opens new window)
#Vim
上次更新: 2025/04/18, 01:42:12
大小写、注释与提示
快速删除一个函数

← 大小写、注释与提示 快速删除一个函数→

最近更新
01
GSAP动画库——如何高效写动画
04-17
02
自适应方案PxToRem
09-10
03
性能优化-requestAnimationFrame
08-10
更多文章>
Theme by Vdoing | Copyright © 2019-2025 备案号:京ICP备19058102号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式