• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

axiaoxin/my-vimrc: VIM configuration file: used to write Golang, Python, Markdow ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

axiaoxin/my-vimrc

开源软件地址(OpenSource Url):

https://github.com/axiaoxin/my-vimrc

开源编程语言(OpenSource Language):

Vim Script 100.0%

开源软件介绍(OpenSource Introduction):

my-vimrc

中文文档

This repository stores my VIM configuration files. Usually, VIM is mainly used to write Golang, Python and Markdown.

At present, there are two branches. The master branch is the configuration of the old version of vim and is no longer maintained.

The vim-8 branch is the configuration currently being used on macOS with VIM 8.1.

VIM Version

VIM - Vi IMproved 8.1 (2018 May 18, compiled Oct 15 2019 10:20:59)
macOS version

Features

  • Automatically detect and install the vim-plug plugins Manager
  • Correct analysis of Chinese without disorder
  • Cancel backup, do not generate swap file automatically
  • The status bar is beautiful and informative with airline
  • Automatic loading takes effect immediately after configuration modification, and automatically loads opened files after modification
  • Use ALE automatic syntax detection and auto repair
  • Text search supports highlighting and typing instant search and intelligent case ignoring
  • Mouse operation supported
  • Quick switch file line number display
  • Saving a file automatically removes line endings and blank lines at the end of the file
  • Use 4 spaces to fill in the tab, smart indent, backspace and smart delete space
  • Support code collapse by indentation
  • After exiting VIM, the content is displayed on the terminal screen and can be used for viewing and copying
  • Always jump to the last cursor position when opening a file
  • After exiting VIM, you can still undo the last edit
  • With a large number of functions, easy to remember and press key mapping
  • j|k keep the cursor in the middle of the screen when moving the line
  • Copy all the contents of the file to the clipboard in Ctrl + C normal mode, and copy the selected contents to the clipboard in visual mode
  • CTRL + V paste clipboard contents as is
  • Support to view file directory tree
  • Use LeaderF to display a list of functions
  • Run the current Python script with one click and support virtualenv
  • One click Format JSON
  • Spaces can be added between numbers and English
  • Move or resize windows quickly
  • Using leaderf to support file obfuscation
  • One click Add or cancel comment is supported
  • Random theme color matching and one click switching
  • Elegant startup interface
  • Integrated VIM go plug-in, gopher VIM party standard
  • Support bracket pair highlighting
  • Support table mode to quickly edit and format markdown tables
  • Support color value Preview
  • Support asynchronous shell command execution
  • Support to display git diff tag
  • Support multi line editing
  • Support quick modification of wrapping characters at both ends of words
  • Use youcompleteme to support code auto completion
  • Integrate vimwiki
  • Auto pair edit parentheses, quotes
  • Support display screen calendar
  • Support nginx configuration highlighting
  • Support markdown real-time preview

Plugins

use vim-plug manage plugins: the .vimrc will automatic download the vim-plug

Custom key mapping

  • switch buffer: ]b [b
  • switch tab: ]t [t
  • copy (all/selected) content:Ctrl-cCtrl-v
  • write read only file: w!!
  • line number toggle: <F2>
  • nerdtree toggle: <F3>
  • function list: <F4>
  • run python script: <F5>
  • open a new tab: <F6>
  • lint fix: <F8>
  • format current json file: <F9>
  • automatically wrap spaces for English words and numbers in Chinese: <F10>
  • wrap "/' for a word: \w'\w"
  • change surround: csXY dsX
  • case conversion and automatic prefixing _ (for abcDef -> abc_def): !
  • delete the current character and case the following characters (for abc_def -> abcDef): @
  • continue indent text to left or right on select/normal mode: > <
  • switch window: Ctrl-k Ctrl-j Ctrl-h Ctrl-l
  • resize window: Ctrl-Shift-arrows
  • close quickfix window: \q
  • fuzzy search file: \f \m
  • format single json line in a text file: \wj \pj
  • comment/uncomment: \cc \cu
  • markdown table mode: \tm
  • build go file: \gb
  • run go file: \gr
  • run go test: \gT
  • run go test for function: \gt
  • goto symbol/declaration for go file: gd
  • show interface function implement for go file: \i
  • show referrers for go file: \r
  • add json tag for go struct: \t
  • remove tag for go struct: \T
  • fill go struct: \fs
  • add if err check for go: Ctrl-e
  • code complete: Ctrl-z
  • vimwiki mode: \ww
  • change random colorscheme: `\c
  • copy content to system clipboard: Ctrl-c
  • show git message: \gm
  • markdown file open preview: \p
  • markdown file stop preview: \q
  • leaderf find by filename: \ff
  • leaderf find by mru: \fm
  • leaderf find by rg: \fg

Screenshots

Some screenshots may not be up-to-date, just for reference.

Launch interface

Daily coding

Open a go file

Open a python file and run

Open nginx configuration file

Code complete

File search

Show calendar

Color preview

Markdown preview

Rainbow parentheses

Format single json line in text file

Markdown table mode

Install & Usage

[!] VIM version must be above 8 and python version is 3.x.x

For VIM upgrade, please refer to wiki: https://github.com/axiaoxin/my-vimrc/wiki/Upgrade-VIM-to-8.x

For Python upgrade, please refer to wiki: https://github.com/axiaoxin/my-vimrc/wiki/Upgrade-Python-to-3.x

External dependence

Using this configuration requires the following commands to install some external dependencies:

brew install cmake python mono go nodejs pygments global cppcheck
brew unlink ctags && brew install --HEAD universal-ctags/universal-ctags/universal-ctags
[sudo] pip3 install isort yapf flake8 autopep8 pylint
npm -g install instant-markdown-d prettier markdownlint

Install plugins

  1. Copy the .vimrc file to your $HOME directory, open VIM, execute :PlugInstall, and wait for the plugins installation to complete.
  2. Install vim-go binaries: open a go file then run :GoInstallBinaries
  3. Install vim-go go_fmt_command tool: go get -u github.com/segmentio/golines
  4. Setting the YouCompleteMe: https://github.com/ycm-core/YouCompleteMe#macos
cd ~/.vim/plugged/YouCompleteMe
python3 install.py --all
  1. Install nerdfont: https://www.nerdfonts.com/font-downloads
  2. Install LeaderF C Extension(Optional): :LeaderfInstallCExtension
  3. Install Markdown preview tool: [sudo] npm -g install instant-markdown-d

Stargazers over time

Stargazers over time




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
ianyh/Silica: A framework for window management on macOS.发布时间:2022-08-18
下一篇:
iSapozhnik/Popover: Custom macOS Popover 发布时间:2022-08-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap