{"id":15506539,"url":"https://github.com/terasum/dotfile","last_synced_at":"2025-03-28T18:46:01.997Z","repository":{"id":93071312,"uuid":"133294461","full_name":"terasum/dotfile","owner":"terasum","description":"vimrc \u0026 dotfiles","archived":false,"fork":false,"pushed_at":"2018-08-29T15:24:04.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-19T20:01:13.513Z","etag":null,"topics":["cow","dotfile","dotfiles","vimrc","vimrc-settings"],"latest_commit_sha":null,"homepage":"","language":"Vim script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/terasum.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-14T02:26:23.000Z","updated_at":"2018-08-29T15:24:05.000Z","dependencies_parsed_at":"2023-03-30T17:03:36.216Z","dependency_job_id":null,"html_url":"https://github.com/terasum/dotfile","commit_stats":{"total_commits":5,"total_committers":1,"mean_commits":5.0,"dds":0.0,"last_synced_commit":"079c89045173b1d2f599c684cf2a9d0c0576a99d"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terasum%2Fdotfile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terasum%2Fdotfile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terasum%2Fdotfile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terasum%2Fdotfile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terasum","download_url":"https://codeload.github.com/terasum/dotfile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246083237,"owners_count":20720930,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cow","dotfile","dotfiles","vimrc","vimrc-settings"],"created_at":"2024-10-02T09:28:21.735Z","updated_at":"2025-03-28T18:46:01.976Z","avatar_url":"https://github.com/terasum.png","language":"Vim script","funding_links":[],"categories":[],"sub_categories":[],"readme":"# terasum's dotfile\n\n## SECTION 1: VIM cheat sheet\n\n\u003e 如果你在使用本`.vimrc`，你可以参考本使用文档\n\u003e 直接将`vimrc`文件放到$HOME并命名为`.vimrc`即可\n\n\n### 阅读前说明\n\n1. 如果你看到一条命令是`:` (半角冒号)开头的话，请不要犹豫，直接先输入`:`(半角冒号)\n2. 在本配置中，`\u003cLeader\u003e` 键是`,`(半角逗号)\n3. 半角符号即英文符号\n4. 尖括号的中命令表示需要按下，例如`\u003cF3\u003e` 表示需要按下键盘上的`F3`\n5. `\u003cC-R\u003e` 表示要按下 `Ctrl + R` 请注意是`R`而不是小写的`r`，因此需要同时按下\n`Ctrl` + `shift` + `r`\n\n6. `S-t` 表示需要按下 `shift` + `t`\n7. `\u003cleader\u003ef` 表示需要按下 `,` + `f`\n\n### 通用部分\n\n#### 插件安装\n\n一般使用本vimrc的话，初次启动vim 会自动帮你安装插件，你不需要特别输入相关命令。\n如果vim没有帮你自动安装的话，你可以输入：\n\n```\n:PlugInstall\n```\n\n进行安装。\n\n#### 自动纠正\n\n一般来说，你肯定会遇到保存文件的时候不小心输入了类似`Wq`\n这样的命令，本配置文件会自动帮助你纠正这种简单的输入错误：\n\n纠错映射表如下：\n\n```\nW!           w!\nQ!           q!\nQall!        qall!\nWq           wq\nWa           wa\nwQ           wq\nWQ           wq\nW            w\nQ            q\nQall         qall\n```\n\n\n#### NERDTree\n\nNERDTree 即文件树，存在如下命令：\n\n```\nF2   文件树搜索\nF3   展开或者隐藏文件树\n```\n\n\n#### grep文件搜索\n\n搜索的时候会跳过`.git` 和`node_modules`以及`*.log`和`*.db`\n\n```\n\u003cleader\u003ef\n```\n\n#### 终端\n\n在vim中可以使用vimshell,来执行命令，相关命令是:\n\n```\n\u003cleader\u003esh\n```\n可以进入vimshell,进入之后可以随意输入相关命令并执行，执行完毕想退出，请退出`insert`模式并按`q`\n\n\n#### Split (屏幕划分)\n\n```\n\u003cleader\u003eh 垂直划分\n\u003cleader\u003ev 水平划分\n\n在不同的划分window中进行光标移动:\n\nC-w j 向下移动\nC-w k 向上移动\nC-w h 向左移动\nC-w l 向右移动\n```\n\n#### Git相关命令\n\n当前配置中安装了git插件，并配置了相关的alias,可以快速使用git相关命令\n\n```\n\u003cLeader\u003ega       git add\n\u003cLeader\u003egc       git commit\n\u003cLeader\u003egsh      git push\n\u003cLeader\u003egll      git pull\n\u003cLeader\u003egs       git status\n\u003cLeader\u003egb       git blame\n\u003cLeader\u003egd       git diff\n\u003cLeader\u003egr       git remove\n```\n\n\n#### TAB相关命令\n\n我个人觉得TAB相关命令是最实用的：\n\n```\n\u003cTab\u003e   下一个TAB\n\u003cS-Tab\u003e 上一个TAB\n\u003cS-t\u003e   新建TAB\n```\n\n注意: 这里的`\u003cTab\u003e` 就是键盘上的`tab`\n\n#### SESSION相关命令\n\nSESSION就是会话，你可以把当前的编辑状态保存为会话，然后需要的时候可以恢复\n\n```\n\" session management\n\u003cleader\u003eso 打开一个会话\n\u003cleader\u003ess 保存一个会话\n\u003cleader\u003esd 删除一个会话\n\u003cleader\u003esc 关闭一个会话\n```\n\n#### 设置当前工作目录\n\n```\n\u003cleader\u003e.\n```\n\n\n#### 从当前的工作目录打开一个文件进行编辑：\n\n打开的文件将会覆盖当前编辑的文件窗口\n\n```\n\u003cleader\u003ee\n```\n\n#### 从当前目录打开一个文件进行编辑(tab)\n\n打开的文件将会新建一个TAB打开\n\n```\n\u003cleader\u003ete\n```\n\n#### 打开符号定义窗口(Tagbar)\n\n```\n\u003cF4\u003e\n```\n\n#### 复制粘贴\n\n当前配置能够自动读取剪贴板中的内容进行粘贴，如果粘贴的时候会自动缩进，\n请在粘贴之前输入：\n\n```\n:paste\n```\n\n#### buffer 导航\n\nbuffer类似于tab，但有区别:\n\n A buffer is the in-memory text of a file.\n A window is a viewport on a buffer.\n A tab page is a collection of windows.\n\n```\nbuffer导航\n\u003cleader\u003ez 下一个buffer\n\u003cleader\u003eq 下一个buffer\n\u003cleader\u003ex 上一个buffer\n\u003cleader\u003ew 上一个buffer\n\n关闭buffer\n\u003cleader\u003ec :bd\u003cCR\u003e\n```\n\n#### 搜索高亮清除\n\n当我们搜索之后，会有高亮字符，可以用下面的方式清除所有高亮\n\n```\n\u003cleader\u003e\u003cspace\u003e\n```\n\n#### window切换\n\n前面也说过如何切换当前焦点的window, 这个也有快捷键\n\n```\n\"\" Switching windows\n\u003cC-j\u003e  向下切换\n\u003cC-k\u003e  向上切换\n\u003cC-l\u003e  向左切换\n\u003cC-h\u003e  向右切换\n```\n\n#### visual模式缩进\n\n在visual模式下，可能希望将一段代码整体缩进，这个时候可以通过visual模式选中一段代码之后，利用`\u003c`\n和`\u003e`进行缩进调整。\n\n\n#### visual模式代码整行移动\n\n在visual模式下，可以通过大写的`J` 和`K`将当前选中的代码进行上移或者下移\n\n\n\n### GO语言相关快捷键\n\n\n#### 定义跳转\n\n```\n  \u003cLeader\u003edd go-def\n  \u003cLeader\u003edv go-doc\n  \u003cLeader\u003edb go-doc-browser\n\n```\n\n#### Go相关命令\n\n```\n  \u003cleader\u003er  go-run\n  \u003cleader\u003et  go-test\n  \u003cLeader\u003egt go-coverage-toggle\n  \u003cLeader\u003ei  go-info\n  \u003cLeader\u003el  go-metalinter\n```\n\n#### Go相关声明\n\n```\n  \u003cC-g\u003e         GoDecls\n  \u003cleader\u003edr    GoDeclsDir\n  \u003cleader\u003erb    build_go_files()\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterasum%2Fdotfile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterasum%2Fdotfile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterasum%2Fdotfile/lists"}