发布时间:2025-05-28
浏览次数:0
[]
[]
[]
今日重点阐述在IDEA环境中如何进行Vim的安装,而前述章节已对Vim的起源及相关基础理念进行了介绍,自本节起intellij idea logo,对Vim的后续讲解将全部围绕IDEA平台展开。
必须指出的是,尽管 Vim 功能十分卓越,但它的能力显然尚未达到可以直接用于 Java 开发的程度。
我们大多数时间投入于工作,而非展示技艺,其根本目标无疑是寻求更高效地解决职场中的难题。
集成开发环境,即IDE,是一款辅助程序开发人员构建软件的应用程序。它允许开发者在开发工具的界面中直接编写源代码文本,并能够编译和打包成可执行的程序。部分IDE还具备设计图形用户界面的功能。这类环境通常包含编程语言编辑器、自动构建工具,以及调试器等组件。
在集成开发环境中部署 Vim 编辑器,融合两者的功能特点,从而有效提高编程工作的效率。
02. 安装
在 Idea 中 安装以下三个插件
发现图标像上面一样变成一个小方块的时候 就代表插件安装成功
03. 插件介绍
安装完毕后,屏幕右下角将显现一个V字图案。点击该标志,即可查看若干关于Vim的配置信息。
你可以通过设置来决定是否启用Vim,若你在初期难以适应,不妨暂时关闭它,待练习熟练后再行开启。
比较重要的就是 . 和 了
在Vim编辑器中,某些快捷键可能与IDEA软件中的快捷键相冲突intellij idea logo,因此,在设置快捷键时,需要明确这些快捷键应当被分配到哪个功能或操作上。
这是 IDEA 中 VIm 的设置,若你处于学习初期,我建议你先按照我的设置来配置,待你对 VIm 熟悉后再进行相应的调整。
"语法高亮
syntax on
"显示行号
set number relativenumber
"显示光标所在位置的行号和列号
set ruler
设定卷页边界自动折行
set shiftwidth=4
set tabstop=4
set softtabstop=4
set expandtab "将tab替换为相应数量空格
set smartindent
set backspace=2
set co=5
"设置取消备份 禁止临时文件生成
set nobackup
set noswapfile
" 为IdeaVim插件增加自动切换为英文输入法的功能,
" idea 需要安装 IdeaVimExtension plugin
set keep-english-in-normal
设定匹配规则,比如输入一个左括号时,系统能够自动找到对应的右括号。
set showmatch
设置剪贴板为未命名,以及未命名加。
"set laststatus=2 "命令行为两行
"set fenc=utf-8 "文件编码
"set mouse=a "启用鼠标
"set ignorecase "忽略大小写
set cursorline "突出显示当前行
"set cursorcolumn "突出显示当前列
set fdm=marker
"jj退出insert模式
"inoremap
"nmap ,v "+p
"vmap ,c "+y
"nmap ,c "+y
"nmap ,c "+y
"nmap ,c "+y
vmap ,c :w !pbcopy
nmap ,c :w !pbcopy
nmap ,v :r !pbpaste
let mapleader = '\
' "Idea action 配置
" 重命令元素
nnoremap
re :action RenameElement nnoremap
gi :action GotoImplementation nnoremap
im :action ImplementMethods nnoremap
rv :action IntroduceVariable nnoremap
cr :action CopyReference nnoremap
em :action ExtractMethod nnoremap
sw :action SurroundWith nnoremap
p :action AceAction
" 处理空行
nmap
o k nmap
a A nmap
i I nnoremap
h gT nnoremap
l gt nnoremap
dp V$%d "设置vundle
set nocompatible " be iMproved
关闭文件类型过滤 required!
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
filetype plugin indent on " required!
"vundle设置完毕
"Bundle 'taglist.vim'
"let Tlist_Ctags_Cmd='ctags'
设定 Tlist 显示单个文件的功能为 1。不同时显示多个文件的tag,只显示当前文件的
设定Tlist_WinWidt的值为28设置taglist的宽度
设定Tlist_Exit_OnlyWindow的值为1如果taglist窗口是最后一个窗口,则退出vim
设定Tlist_Use_Right_Window的值为1,以确保使用右侧窗口。在右侧窗口中显示taglist窗口
设定 Tlist_Use_Left_Windo 的值为 1在左侧窗口中显示taglist窗口
Bundle 'majutsushi/tagbar'
"nmap
tb :TagbarToggle 快捷键设置" let g:tagbar_ctags_bin='ctags' "ctags程序的路径
设置g:tagbar_width的值为20,以调整标签栏的宽度。窗口宽度的设置
map
:Tagbar map
:Tagbar 在文件读取后,针对扩展名为.cpp、.c、.h、.hpp、.cc、.cxx的文件,自动调用tagbar#autoopen()函数。如果是c语言的程序的话,tagbar自动开启
Bundle 'scrooloose/nerdtree'
let NERDTreeWinPos='left'
let NERDTreeWinSize=25
let g:NERDTreeNodeDelimiter = "\u00a0"
设置 g:NERDTreeNodeDelimiter 的值为空字符串。
"map
:NERDTreeToggle map
:NERDTreeToggle "打开NERDTree
"autocmd vimenter * NERDTree
"光标默认在主窗口
"wincmd w
"autocmd VimEnter * wincmd w
"vim 退出时直接关闭NERDTree
当缓冲区被激活时,对于所有窗口,若检测到窗口编号,则执行以下条件语句:$") == 1 && exists("b:NERDTree若条件满足a,则执行操作;若条件满足b且b对应的是NERDTree的标签树,则执行操作;否则,执行q;最后,无论前述条件如何,都执行endif。
Bundle 'bling/vim-airline'
set laststatus=2
安装包'scrooloose/nerdcommenter'
nnoremap
gt nnoremap
gT nnoremap
t : tabe
安装软件包 'terryma/vim-multiple-cursors'
在配置文件中,将multi_cursor_use_default_mapping的值设置为0,以禁止使用默认的映射。
" Default mapping
let g:multi_cursor_next_key='
' let g:multi_cursor_prev_key='
' let g:multi_cursor_skip_key='
' let g:multi_cursor_quit_key='
' "vim-multiple-cursors 多光标选中
"Bundle 禁止对'terryma/vim-multiple-cursors'进行修改。
设置g:multi_cursor_use_default_mapping的值为0,以禁用默认映射。
"let g:multi_cursor_start_key='
' 禁止设置多光标起始单词快捷键为'g'。
' "let g:multi_cursor_next_key='
' 禁止设置“g:multi_cursor_prev_key”为特定按键。
' "let g:multi_cursor_skip_key='
' 设定g:multi_cursor_quit_key的值为特定按键,以实现多光标模式的退出。
'
"MatchTagAlways
Bundle 'Valloric/MatchTagAlways'
"Markdown语法高亮
Bundle 'godlygeek/tabular'
"Bundle 'plasticboy/vim-markdown'
"markdown实时显示
安装 'suan/vim-instant-markdown' 包
"indentLine 代码缩进线标志线
Plugin 'Yggdroot/indentLine'
let g:indentLine_char = '┆'
let g:indentLine_color_term = 239
let g:indentLine_enabled = 1
"映射到ctrl+i键
"map
:IndentLinesToggle
delimitMate可自动填充单引号、双引号以及反引号,同时支持括号的使用,包括圆括号、方括号和花括号。
04. 总结
今日重点讲解了在IDEA中安装Vim的方法,并对Vim的一些基础设置进行了阐述。
接下来,我还会继续进行一些赘述,基于部分读者的意见,我整理了一些普遍性的疑问以及相应的解决措施。
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码