zoukankan      html  css  js  c++  java
  • 4. VIM 系列

    1. 缓冲区

    文件和缓冲区的区别

    vim 打开一个文件时,其实是从磁盘中读取文件到内存中,vim的一些操作其实是在操作缓冲区,
    当使用vim的保存命令时,vim才将缓冲区写回给文件。

    操作缓冲区

    命令 用途
    :bprev 跳转到前一个buffer
    :bnext 跳转到后一个buffer
    :bfirst 跳转到第一个buffer
    :blast 跳转到最后一个buffer
    :w 将当前buffer写入文件
    :e 重新将文件内容加载到缓冲区(回滚buffer修改)
    :qa! 关闭所有buffer,且不保存
    :wa! 保存所有buffer

    2. 窗口

    在Vim 术语中,窗口是缓冲区的显示区域。既可以打开多个窗口,在这些窗口中显示同一个缓冲区,
    也可以在每个窗口里载入不同的缓冲区。Vim 的窗口管理系统很灵活,可以根据工作的需要来调整
    工作区。

    操作窗口

    命令 用途
    s 水平切分当前窗口,新窗口仍显示当前缓冲区
    v 水平切分当前窗口,新窗口仍显示当前缓冲区
    sp 水平切分当前窗口,新窗口仍显示当前缓冲区
    vsp 水平切分当前窗口,新窗口仍显示当前缓冲区
    w 在窗口间循环切换
    h 切换到左边的窗口
    j 切换到下边的窗口
    k 切换到上边的窗口
    l 切换到右边的窗口
    c 关闭活动窗口
    o 只保留活动窗口,关闭其他所有窗口

    3. 标签页

    Vim 的标签页接口和其他许多文本编辑器不同,在Vim中,可以用标签页把窗口组织到一系列工作区中。

    典型文本编辑器的图形界面(GUI)有一个用于编辑文件的主工作区,还有一个显示当前工程目录树的侧边栏。
    如果点击侧边栏中的文件,它会在主工作区为所选中的文件打开一个新标签页。每个打开的文件都会创建一个新
    标签页。在此模型中,可以说标签页代表了当前打开的文件。

    Vim 的标签页与缓冲区并非一一对应的关系,相反,应该把标签页想成容纳一系列窗口的容器。每个标签页都可
    包含一个或多个窗口。

    操作标签页

    命令 用途
    :tabe[dit] {filename} 在新标签页中打开 {filename}
    :tabc[lose] 关闭当前标签页及其中的所有窗口
    :tabo[nly] {filename} 只保留活动标签页,关闭所有其他标签页
    :tabn[ext] {N} 切换到编号为 {N} 的标签页
    :tabn[ext] 切换到下一标签页
    :tabp[revious] 切换到上一标签页

    4. 设置一下热键

    ~/.vimrc 配置一些热键

    " 窗口快捷方式
    map <s-h> <c-w>h
    map <s-l> <c-w>l
    map <s-j> <c-w>j
    map <s-k> <c-w>k
    map <s-w> <c-w>w
    map <s-c> <c-w>c
    map <s-o> <c-w>o
    
    " buffer 快捷方式
    nnoremap <Leader>bn :bn<CR>
    nnoremap <Leader>bb :bp<CR>
    nnoremap <Leader>bf :bfirst<CR>
    nnoremap <Leader>bl :blast<CR>
    nnoremap <Leader>bc :bwipe<CR>
    
    " 标签页快捷方式
    nnoremap <Leader>tp :tabp<CR>
    nnoremap <Leader>tn :tabn<CR>
    nnoremap <Leader>tc :tabc<CR>
    nnoremap <Leader>to :tabo<CR>
    nnoremap <Leader>tN :tabn
    nnoremap <Leader>te :tabe
    
    
  • 相关阅读:
    【二分】Urozero Autumn Training Camp 2016 Day 5: NWERC-2016 Problem C. Careful Ascent
    【强连通分量缩点】【DFS】【动态规划】Urozero Autumn Training Camp 2016 Day 5: NWERC-2016 Problem B. British Menu
    【Splay】Codeforces Round #424 (Div. 1, rated, based on VK Cup Finals) B. Cards Sorting
    【Splay】bzoj3223 Tyvj 1729 文艺平衡树
    【Splay】bzoj3224 Tyvj 1728 普通平衡树
    【LIS】【递推】Gym
    【DFS】【枚举】Gym
    【递推】【DFS】【枚举】Gym
    【推导】Codeforces Round #424 (Div. 1, rated, based on VK Cup Finals) A. Office Keys
    【概率dp】【数学期望】Gym
  • 原文地址:https://www.cnblogs.com/standardzero/p/10720922.html
Copyright © 2011-2022 走看看