# road_to_vim **Repository Path**: hgy_rick/road_to_vim ## Basic Information - **Project Name**: road_to_vim - **Description**: recording my stiff journey to vim - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-02-08 - **Last Updated**: 2023-01-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 简单记录vim配置 ### 插件管理[vim-plug](https://github.com/junegunn/vim-plug) * 安装 ``` curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim ``` ### 插件 * [NerdTree](https://github.com/preservim/nerdtree) 文件浏览器 * [coc.nvim](https://github.com/neoclide/coc.nvim/tree/master) 代码补全 * [nerdcommenter](https://github.com/preservim/nerdcommenter) 代码注释 * [airline](https://github.com/vim-airline/vim-airline) 美化状态栏 * [vim-surround] (https://github.com/tpope/vim-surround) 自动添加括号 * [fzf](https://github.com/junegunn/fzf/blob/master/README-VIM.md) 快速文件搜索 * [vim-visual-multi](https://github.com/mg979/vim-visual-multi) 多行编辑 ### NerdTree * new file --> ma * delete file --> md * move or change file --> mm ### 代码补全配置 coc.nvim 基于Node.js 作为后端,因此先下载Node.js ``` sudo su curl -sL install-node.vercel.app/lts | bash ``` 然后使用安装coc插件的方法即可安装各种语言的补全 ### 代码注释 `````` 切换注释 ### Some Key Mappings * ```h```非递归映射到了```i```,因此```diw```变成```dhw```等等 ### 注意 * 每次打开vim要按一下```W```调用初始化函数 ### 自动添加括号 * 普通模式 -------- | | 命令 | 说明 + 示例 | |---:|----------------------|:---------------------------------------------------------------------------------| | | ds | 删除括号 | | 例 | `ds` `"` | `"Hello world!"` =>
`Hello world!` | | | cs | 替换括号 | | 例 | `cs` `"(` | `"Hello world!"` =>
`(Hello world!)` | | | cS | 替换括号,括号内文本做新一行 | | 例 | `cS` `"{` | `"Hello world!"` =>
`{`
    `Hello world!`
`}` | | | ys | 添加括号(配合vim光标移动) | | 例 | `ys` `w` `[` | `Hello world!` =>
`[Hello] world!` | | 例 | `ys` `w` `
`Hello world!` | | | yS | 添加括号,括号内文本做新一行 | | 例 | `yS` `w` `[` | `Hello world!` =>
`[`
     `Hello`
`] world!` | | | yss | 整行括起来 | | 例 | `yss` `(` | `Hello world!` =>
`( Hello world! )` | | | ySS | 整行括起来,括号内文本做新一行 | | 例 | `ySS` `{` | `Hello world!` =>
`{`
   `Hello world! `
`}` | | 例 | `ySS` `
`
`
   `Hello world! `
`
` | | | ySs | 与ySs功能相同 | * 可视模式 -------- | | 命令 | 说明 + 示例 | |---:|:---------------|:----------------------------------------------------------------------| | | S | 选中的括起来 | | 例 | 选中world: `S(` | `Hello world!` =>
`Hello (world)!` | | | gS | 选中的括起来,括号内文本做新一行 | | 例 | 选中world: `gS{` | `Hello world!` =>
`Hello {`
   ` world`
`}! ` |