pycharm配置IdeaVim
返回目录
不知道为啥,找了一圈都没找到配置教程,,,还有的博文直接就讲不能配置???迷惑行为。
配置教程原文:
https://www.jetbrains.com/help/pycharm/using-product-as-the-vim-editor.html 这个是官方文档。
本文也是就做到翻译一下吧,我对vim配置也不太懂。
第一步 安装IdeaVim
然后重启pycharm
这个时候打开idealvim,在Tools > Vim Emulato
这个时候打开idealvim,在Tools > Vim Emulato
这个时候打开idealvim,在Tools > Vim Emulato
因为不打开不能显示下图:
进入setting->editor->Vim Emulation
把最爱的复制粘贴设置为IDE,就可以在VIM模式下使用啦
三种模式的意思:
第二步 设置开启快捷键(为了方便)
也可以不设置,但是不设置的化就要一直Tools > Vim Emulator来选择开启或关闭。
打开settings:
我这里用的是 Ctrl+;来作为热键开启关闭,不冲突,挺方便嘿!
第三步 配置vimrc
vim是用vimrc配置的,相似的,VimIdea是用ideavimrc配置的,根据操作系统的不同,在以下位置之一创建配置文件:
Windows的路径为:C:\Users\<YourName>\_ideavimrc
如果你已经有一个配置好的vimrc文件,那么可以这样写来引用:
source ~/.vimrc
我的实现
复制了一份vimrc到这里,然后编辑_ideavimrc:
这里我的vimrc配置为(vim新手,但还是沉迷,就配置了个快速退出和保存把,其他的就不懂了):
source $VIMRUNTIME/vimrc_example.vim
set number "设置行号
colorscheme desert "设置配色方案
syntax on "语法高亮
syntax enable set nobackup "不生成备份文件
set showmatch "设置匹配模式
set smartindent "设置只能对齐
set ai! "设置自动缩进
set fileencodings=utf-8,gbk
set ambiwidth=double "设置中文支持
set guifont=consolas:h12 "设置字体及大小
set mouse=a "启用鼠标
set hlsearch
let mapleader=','
inoremap jj <Esc>`^
inoremap <leader>w <Esc>:w<cr>
noremap <leader>w :w<cr>
set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg1 = substitute(arg1, '!', '\!', 'g')
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg2 = substitute(arg2, '!', '\!', 'g')
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let arg3 = substitute(arg3, '!', '\!', 'g')
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
if empty(&shellxquote)
let l:shxq_sav = ''
set shellxquote&
endif
let cmd = '"' . $VIMRUNTIME . '\diff"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
let cmd = substitute(cmd, '!', '\!', 'g')
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
if exists('l:shxq_sav')
let &shellxquote=l:shxq_sav
endif
endfunction
注意文件路径 (以下翻译可能出错)
这样,您还可以在ideavimrc文件中包含其他命令,这些命令将仅应用于PyCharm中的Vim仿真,不会影响实际的Vim配置。
如果不想使用Vim配置,可以将.vimrc重命名为.ideavimrc。
如果您不想修改PyCharm中与实际Vim配置相比的Vim仿真,则创建ideavimrc作为vimrc的符号链接: