java vimrc_vimrc: 终极 vim 配置, 克隆自: https://github.com/amix/vimrc

java vimrc_vimrc: 终极 vim 配置, 克隆自: https://github.com/amix/vimrc这个仓库克自https://github.com/amix/vimrc放在oschina上来加速部署,也方便再添加些功能.如何使用:gitclonehttps://git.oschina.net/shrekuu/vimrc.git~/.vim_runtimesh~/.vim_runtime/install_awesome_vimrc.sh更多:这个版本直接加入了~/.vim_ru…

大家好,又见面了,我是你们的朋友全栈君。

这个仓库克自 https://github.com/amix/vimrc

放在 oschina 上来加速部署, 也方便再添加些功能.

如何使用:

git clone https://git.oschina.net/shrekuu/vimrc.git ~/.vim_runtime

sh ~/.vim_runtime/install_awesome_vimrc.sh

更多:

这个版本直接加入了 ~/.vim_runtime/my_config.vim 文件, 并写入了一些配置, 具体参考这个文件.

加入了 molokai 主题配色, 也就是 sublime text 上那个默认配色 monokai.

vim 编辑时的缓存文件与备份存放在 ~/.vim_runtime/swapfiles/, ~/.vim_runtime/backupfiles/ 两个目录.

其它参考最最最下面列出的每个插件的功能. 强大到不行不行的. :)

来看一下:

bc817db4120f5de534f9f63e563de45f.png

下面是原仓库 readme.md 内容

The Ultimate vimrc

Over the last 8 years I have used and tweaked Vim. This is my Ultimate vimrc.

There are two versions:

Basic: If you want something small just copy basic.vim into your ~/.vimrc and you will have a great basic setup

Awesome: This includes a ton of useful plugins, color schemes and configurations

I would of course recommend using the awesome version.

How to install the Awesome version?

The awesome version includes a lot of great plugins, configurations and color schemes that make Vim a lot better. To install it simply do following:

git clone https://github.com/amix/vimrc.git ~/.vim_runtime

sh ~/.vim_runtime/install_awesome_vimrc.sh

The taglist.vim plugin will require ctags (http://ctags.sourceforge.net) (Debian: apt-get install ctags)

I also recommend using Source Code Pro font from Adobe (it’s free and awesome font for writing and programming). The Awesome vimrc is already setup to try to use it

How to install the Basic version?

The basic version is basically just one file and no plugins. You can check out basic.vim.

This is useful to install on remote servers where you don’t need many plugins and you don’t do many edits.

git clone git://github.com/amix/vimrc.git ~/.vim_runtime

sh ~/.vim_runtime/install_basic_vimrc.sh

How to install on Windows?

Use msysgit to checkout the repository and run the installation instructions above. No special instructions needed ;-)

How to update to latest version?

Simply just do a git rebase!

cd ~/.vim_runtime

git pull –rebase

Some screenshots

Colors when editing a Python file:

screenshot_1.png

Opening recently opened files mru.vim:

screenshot_2.png

NERD Tree plugin in a terminal window:

screenshot3.png

This vimrc even works on Windows!

screenshot_4.png

Distraction free mode using goyo.vim and vim-zenroom2:

zen_mode.jpg

Included Plugins

I recommend reading the docs of these plugins to understand them better. Each of them provide a much better Vim experience!

pathogen.vim: Manages the runtime path of the plugins

YankRing: Maintains a history of previous yanks, changes and deletes

snipMate.vim: snipMate.vim aims to be a concise vim script that implements some of TextMate’s snippets features in Vim

bufexplorer.zip: Buffer Explorer / Browser. This plugin can be opened with

NERD Tree: A tree explorer plugin for vim

ack.vim: Vim plugin for the Perl module / CLI script ‘ack’

ag.vim: A much faster Ack

ctrlp.vim: Fuzzy file, buffer, mru and tag finder. In my config it’s mapped to , because is used by YankRing

mru.vim: Plugin to manage Most Recently Used (MRU) files. Includes my own fork which adds syntax highlighting to MRU. This plugin can be opened with

open_file_under_cursor.vim: Open file under cursor when pressing gf

zencoding: Expanding abbreviation like zen-coding, very useful for editing XML, HTML.

vim-indent-object: Defines a new text object representing lines of code at the same indent level. Useful for python/vim scripts

taglist.vim: Source code browser (supports C/C++, java, perl, python, tcl, sql, php, etc)

vim-multiple-cursors: Sublime Text style multiple selections for Vim, CTRL+N is remapped to CTRL+S (due to YankRing)

vim-expand-region: Allows you to visually select increasingly larger regions of text using the same key combination.

vim-airline: Lean & mean status/tabline for vim that’s light as air (replacing powerline)

vim-fugitive: A Git wrapper so awesome, it should be illegal

goyo.vim and vim-zenroom2:

Remove all clutter and focus only on the essential. Similar to iA Writer or Write Room Read more here

vim-commentary: Comment stuff out. Use gcc to comment out a line (takes a count), gc to comment out the target of a motion. gcu uncomments a set of adjacent commented lines.

syntastic: Syntax checking hacks for vim

Included color schemes

Included modes

How to include your own stuff?

After you have installed the setup you can create ~/.vim_runtime/my_configs.vim to fill in any configurations that are important for you. For instance, my my_configs.vim looks like this:

~/.vim_runtime (master)> cat my_configs.vim

map ct :cd ~/Desktop/Todoist/todoist

map cw :cd ~/Desktop/Wedoist/wedoist

You can also install your own plugins, for instance, via pathogen we can install vim-rails:

cd ~/.vim_runtime

git clone git://github.com/tpope/vim-rails.git sources_non_forked/vim-rails

Now you have vim-rails installed ;-)

Key Mappings

Plugin related mappings

Open bufexplorer and see and manage the current buffers:

map o :BufExplorer

Open MRU.vim and see the recently open files:

map f :MRU

Open ctrlp.vim plugin:

let g:ctrlp_map = ”

Open PeepOpen plugin:

map j :PeepOpen

Managing the NERD Tree plugin:

map nn :NERDTreeToggle

map nb :NERDTreeFromBookmark

map nf :NERDTreeFind

goyo.vim and vim-zenroom2 lets you only focus on one thing at a time. It removes all the distractions and centers the content. It has a special look when editing Markdown, reStructuredText and textfiles. It only has one mapping.

map z :Goyo

Normal mode mappings

Fast saving of a buffer:

nmap w :w!

Treat long lines as break lines (useful when moving around in them):

map j gj

map k gk

Map to / (search) and + to ? (backwards search):

map /

map ?

map :noh

Disable highlight when is pressed:

map :noh

Smart way to move between windows:

map j

map k

map h

map l

Closing of current buffer(s):

” Close current buffer

map bd :Bclose

” Close all buffers

map ba :1,1000 bd!

Useful mappings for managing tabs:

map tn :tabnew

map to :tabonly

map tc :tabclose

map tm :tabmove

” Opens a new tab with the current buffer’s path

” Super useful when editing files in the same directory

map te :tabedit =expand(“%:p:h”)/

Switch CWD to the directory of the open buffer:

map cd :cd %:p:h:pwd

Open vimgrep and put the cursor in the right position:

map g :vimgrep // **/*.

Vimgreps in the current file:

map :vimgrep // %

Remove the Windows ^M – when the encodings gets messed up:

noremap m mmHmt:%s///ge’tzt’m

Quickly open a buffer for scripbble:

map q :e ~/buffer

Toggle paste mode on and off:

map pp :setlocal paste!

Insert mode mappings

Quickly insert parenthesis/brackets/etc.:

inoremap $1 ()i

inoremap $2 []i

inoremap $3 {}i

inoremap $4 {o}O

inoremap $q ”i

inoremap $e “”i

inoremap $t <>i

Insert the current date and time (useful for timestamps):

iab xdate =strftime(“%d/%m/%y %H:%M:%S”)

Visual mode mappings

Visual mode pressing * or # searches for the current selection:

vnoremap * :call VisualSelection(‘f’)

vnoremap # :call VisualSelection(‘b’)

When you press gv you vimgrep after the selected text:

vnoremap gv :call VisualSelection(‘gv’)

When you press r you can search and replace the selected text:

vnoremap r :call VisualSelection(‘replace’)

Surround the visual selection in parenthesis/brackets/etc.:

vnoremap $1 `>a)`

vnoremap $2 `>a]`

vnoremap $3 `>a}`

vnoremap $$ `>a”`

vnoremap $q `>a’`

vnoremap $e `>a”`

Command line mappings

$q is super useful when browsing on the command line. It deletes everything until the last slash:

cno $q eDeleteTillSlash()

Bash like keys for the command line:

cnoremap

cnoremap

cnoremap

cnoremap

cnoremap

Write the file as sudo (only on Unix). Super useful when you open a file and you don’t have permissions to save your changes. Vim tip:

:W

Spell checking

Pressing ss will toggle and untoggle spell checking

map ss :setlocal spell!

Shortcuts using instead of special chars

map sn ]s

map sp [s

map sa zg

map s? z=

Cope

Do :help cope if you are unsure what cope is. It’s super useful!

When you search with vimgrep, display your results in cope by doing:

cc

To go to the next search result do:

n

To go to the previous search results do:

p

Vimscript mappings:

map cc :botright cope

map co ggVGy:tabnew:set syntax=qfpgg

map n :cn

map p :cp

Useful blog tips regarding my Vim setup

How to uninstall

Do following:

Remove ~/.vim_runtime

Remove any lines that refernce .vim_runtime in your ~/.vimrc

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132034.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 图像处理入门教程[通俗易懂]

    图像处理入门教程[通俗易懂]  最近有人问我图像处理怎么研究,怎么入门,怎么应用,我竟一时语塞。仔细想想,自己也搞了两年图像方面的研究,做个两个创新项目,发过两篇论文,也算是有点心得,于是总结总结和大家分享,希望能对大家有所帮助。在写这篇教程之前我本想多弄点插图,让文章看起来花哨一点,后来我觉得没必要这样做,大家花时间沉下心来读读文字没什么不好,况且学术和技术本身也不是多么花哨的东西。  一、图像处理的应用  这个其实没什么…

    2022年5月17日
    42
  • 关于pytorch安装之后但是没有办法导入pycharm的原因

    关于pytorch安装之后但是没有办法导入pycharm的原因首先要确定你是否真的安装了,可以用condalist`安装完pytorch之后没有办法导入的问题,我碰到过两种情况。第一种:安装了但是python无法导入什么意思呢,详情参照下图就像我这样,在命令行打入python(当然,你用IDE和pycharm也是一样的)显示的是‘Nomodulenamed‘torch’那么在这里首先你就要检查配置环境是否有问题了,cuda和cudnn这些环境是否安装,版本是否对应。然后,可以尝试检查pytorch环境是否存在,import的处理过程,会在

    2022年8月25日
    7
  • android之activity横竖屏切换时的生命周期以及横竖屏切换时的资源适配方案

    背景:之前有过两篇写activity的博客android之activity的生命周期详解:详细介绍了activity的整个生命周期、各状态间的转换和返回桌面时保存activity的状态android之activity中onSaveInstanceState和onRestoreInstanceState的触发时机:介绍了activity中这两个方法的触发时机和作用本篇博客会牵扯到里面的内容,如果你都

    2022年3月11日
    40
  • 关于包围神经猫的想法实现

    关于包围神经猫的想法实现

    2022年1月5日
    43
  • 记录一次XordDos(BillGates)木马导致Centos kworker线程占满CPU资源的解决过程「建议收藏」

    记录一次XordDos(BillGates)木马导致Centos kworker线程占满CPU资源的解决过程「建议收藏」1.问题现象​ 通过top命令查看资源占用发现有大量kworker线程占用CPU资源,如下图。怀疑是系统问题或平台程序导致的问题。2.是否是程序导致的论证过程​ 因平台有两部分组成socket+web端,考虑可能是两者中的一个导致的,因此采用以下三种方式验证:​ [1]只关掉socekt端,问题依旧出现​ [2]只关掉web端,问题依旧出现​ [3]全部关掉,问题依旧出现​ …

    2022年9月15日
    0
  • Excel图表之道一突破常规

    Excel图表之道一突破常规

    2021年9月1日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号