毫无疑问,咱们日子在编辑器的最好年代,Vim是仅在Vi之下的神级编辑器,而脱胎于Vim的NeoVim则是这个年代最好的编辑器,没有之一。异步支持、更好的内存办理、更快的渲染速度、更多的编辑指令,是大神Thiago de Arruda对开发者们最好的技能馈赠。

之前一篇:Win10体系下装置编辑器之神(The God of Editor)Vim并且构建Python生态开发环境(2020年最新攻略),咱们已经领会了Vim的魅力,但年代不同了,繁琐的装备,差强人意的功能,很难不让人把目光投向NeoVim,正所谓江山代有人才出,一代更比一代强。

装置装备

首要去Github项目官网下载最新稳定版0.8.2:github.com/neovim/neov… C:\nvim-win64中。

NeoVim有两个启动程序,分别是nvim-qt.exe和nvim.exe,前者是根据Gui的客户端,后者则根据终端Terminal,解压之后,最好将bin目录装备到体系的环境变量:C:\nvim-win64\nvim-win64\bin ,如此,咱们就能够在体系的恣意方位启动NeoVim。

随后咱们装置根据异步方法的插件办理工具:vim-plug。

首要,在vim-plug主页:github.com/junegunn/vi… 下载plug.vim装备文件,随后将其复制到到C:\Users\liuyue\AppData\Local\nvim\autoload下,假设没有这个文件夹,就自己建一个nvim\autoload文件夹。这儿需要留意的是AppData目录默许是隐藏的,需要在windows目录选项中敞开显示隐藏目录。

这以后,在C:\Users\liuyue\AppData\Local\nvim\目录中树立NeoVim的初始化装备init.vim:

call plug#begin('C:\nvim-win64\nvim-win64\share\nvim\plugged)
"插件列表  
call plug#end()

这儿首行是插件的装置目录,随后只要把想要装置的插件写入到两个call关键字之间即可。

至此,NeoVim的装置就完成了。

第一个NeoVim插件

第一个NeoVim插件咱们从主题入手,毕竟个性化是最不能被忽略的需求,这儿主题引荐邪魅狂狷的One Dark主题:github.com/navarasu/on…

修正init.vim装备:

call plug#begin('C:\nvim-win64\nvim-win64\share\nvim\plugged')
Plug 'navarasu/onedark.nvim'  
call plug#end()  
let g:onedark_config = {  
    \ 'style': 'warm',  
\}  
colorscheme onedark

这儿增加Plug ‘navarasu/onedark.nvim’插件,随后经过:

let g:onedark_config = {
    \ 'style': 'warm',  
\}  
colorscheme onedark

对NeoVim的主题进行设置,保存之后,在终端启动NeoVim:

nvim test.py

发现主题并未发生变化:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

那是因为插件必须先进行装置,在指令形式输入:

:PlugInstall

随后重启nvim:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

One Dark 主题跃然纸上。

目录办理

目录办理插件能够让开发者迅速地操作项目目录中的代码,这儿引荐运用github.com/pablopunk/n… ,简略方便,开箱可用:

call plug#begin('C:\nvim-win64\nvim-win64\share\nvim\plugged')  
Plug 'navarasu/onedark.nvim'  
Plug 'pablopunk/native-sidebar.vim'  
call plug#end()  
let g:onedark_config = {  
    \ 'style': 'warm',  
\}  
colorscheme onedark  
let g:native_sidebar_shortcut = '<c-t>'

这儿咱们经过control+t来敞开左边目录树:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

终端装备

Windows11体系默许采用的还是Win10年代丑陋的CMD终端风格,但其实,Windows11也默许预装了最新的Windows Terminal终端。

首要按视窗建+R,输入wt 第一次启动Windows Terminal:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

在终端窗口中点击下拉菜单,找到设置选项。

默许终端应用程序能够修正为 Windows Terminal,这样启动CMD时便是Windows Terminal 终端窗口了:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

如此,NeoVim的字体风格就能够继承Windows Terminal的新风格了。

Python代码补全装备

用NeoVim来写Python代码,就会有代码补全的需求,业内比较盛行的插件是jedi-vim:github.com/davidhalter…

jedi-vim针对开发者的需求,编写如语法增强、文档查看、自动补全等各类功能,并且进行了重构和集成,提供了开箱即用的一致解决方案,一经推出便广受好评,成为运用 Vim 进行 Python 开发的标配。

但是jedi-vim虽然开箱即用,但却是一坨杂乱的乱炖,不仅跟着项目功能的增加变得越发庞大和缓慢(有点类似著名的node-moudles),代码的可读性也十分糟糕,难以维护和参加。

所以这儿引荐功能更优越的ncm2,一个异步自动补全框架:github.com/ncm2/ncm2

首要装置相关依靠:

python3 -m pip install pynvim
python3 -m pip install jedi
pip3 install neovim --upgrade 

随后编写装备:

call plug#begin('C:\nvim-win64\nvim-win64\share\nvim\plugged')
Plug 'navarasu/onedark.nvim'  
Plug 'pablopunk/native-sidebar.vim'  
Plug 'ncm2/ncm2'  
Plug 'roxma/nvim-yarp'  
Plug 'ncm2/ncm2-bufword'  
Plug 'ncm2/ncm2-path'  
Plug 'ncm2/ncm2-jedi'  
call plug#end()  
let g:onedark_config = {  
    \ 'style': 'warm',  
\}  
colorscheme onedark  
autocmd BufEnter * call ncm2#enable_for_buffer()  
" IMPORTANT: :help Ncm2PopupOpen for more information  
set completeopt=noinsert,menuone,noselect  
let g:native_sidebar_shortcut = '<c-t>'

主要依靠这几个插件:

Plug 'ncm2/ncm2'
Plug 'roxma/nvim-yarp'  
Plug 'ncm2/ncm2-bufword'  
Plug 'ncm2/ncm2-path'  
Plug 'ncm2/ncm2-jedi'

随后敞开NeoVim进行装置:

:PlugInstall

重启NeoVim:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

看起来还不错吧?

最终,继续修正装备,让NeoVim能够直接编译运行Python代码:

nnoremap <C-B> :sp <CR> :term python % <CR>
nnoremap <C-W> :bd!<CR>

这儿经过control+b快捷键组合来编译运行,control+w组合键关闭弹窗:

上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)

轻量化、简略、快速,让普通小白也能玩得起来,这便是在Win11下用NeoVim编写Python的趣味,奉上笔者的NeoVim完好装备:

call plug#begin('C:\nvim-win64\nvim-win64\share\nvim\plugged')  
Plug 'navarasu/onedark.nvim'  
Plug 'pablopunk/native-sidebar.vim'  
Plug 'ncm2/ncm2'  
Plug 'roxma/nvim-yarp'  
Plug 'ncm2/ncm2-bufword'  
Plug 'ncm2/ncm2-path'  
Plug 'ncm2/ncm2-jedi'  
call plug#end()  
let g:onedark_config = {  
    \ 'style': 'warm',  
\}  
colorscheme onedark  
autocmd BufEnter * call ncm2#enable_for_buffer()  
" IMPORTANT: :help Ncm2PopupOpen for more information  
set completeopt=noinsert,menuone,noselect  
let g:native_sidebar_shortcut = '<c-t>'  
set clipboard^=unnamed,unnamedplus  
syntax on                       "syntax highlighting, see :help syntax  
filetype plugin indent on       "file type detection, see :help filetype  
set number                      "display line number  
set path+=**                    "improves searching, see :help path  
set noswapfile                  "disable use of swap files  
set wildmenu                    "completion menu  
set backspace=indent,eol,start  "ensure proper backspace functionality  
set undodir=~/.cache/nvim/undo  "undo ability will persist after exiting file  
set undofile                    "see :help undodir and :help undofile  
set incsearch                   "see results while search is being typed, see :help incsearch  
set smartindent                 "auto indent on new lines, see :help smartindent  
set ic                          "ignore case when searching  
set expandtab                   "expanding tab to spaces  
set tabstop=4                   "setting tab to 4 columns  
set shiftwidth=4                "setting tab to 4 columns  
set softtabstop=4               "setting tab to 4 columns  
set showmatch                   "display matching bracket or parenthesis  
set hlsearch incsearch          "highlight all pervious search pattern with incsearch  
highlight ColorColumn ctermbg=9 "display ugly bright red bar at color column number  
" Keybind Ctrl+l to clear search  
nnoremap <C-l> :nohl<CR><C-l>:echo "Search Cleared"<CR>  
" When python filetype is detected, F5 can be used to execute script   
" autocmd FileType python nnoremap <buffer> <c-b> :<cr>:exec '!python' shellescape(expand('%:p'), 1)<cr>  
nnoremap <C-B> :sp <CR> :term python % <CR>  
nnoremap <C-W> :bd!<CR>

结语

NeoVim是Vim的精力复刻与肉体重生,承袭了Vim的一切操作技巧,假设咱们说,二十一世纪以来编辑器范畴有什么经典软件,无疑的,咱们应该说,Vim和NeoVim是两个颠扑不破的巨石重镇,没有了它们,编辑器史上便要黯然失光。最终,奉上项目装备地址,与君共觞:github.com/zcxey2911/W…