lua5.4安装
下载源码包后make && make install
在ubuntu16上安装vim9简要说明
在安装支持特性时, 如果发现传递了, 但是安装后没有集成, 就需要自己看./configure步骤的输出信息后手动解决
git clone https://github.com/vim/vim.git
# 安装python开发包,用于扩展vim的python支持(因为我使用了LeaderF插件)
#
sudo apt install python3-dev
# 查看python开发包安装目录, 如果已经安装 dpkg -L python3-dev
# 更方便的是这个, 这里使用/usr/bin/python3m-config 不是/usr/bin/python3-config
python3-config --configdir
# 假设安装的开发文件位置/usr/local/include
# 则传递/usr/local给--with-lua-prefix就可以了
# 所有的这些开启特性支持参数, 只是尝试, 最后是不一定会支持(假设找不到对应开发库)
./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp=yes \
--enable-python3interp=yes \
--with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu \
--enable-perlinterp=yes \
--enable-luainterp=yes \
--with-lua-prefix=/usr/local/include \
--enable-cscope --prefix=/usr/local
# 检查支持情况
./src/vim --version|egrep 'python|lua|cscope'
sudo make install
如果在安装后, 使用leader遇到ImportError: /usr/local/lib/python3.10/lib-dynload/_struct.cpython-310-x86_64-linux-gnu.so: undefined symbol: PyByteArray_Type
可以参考 https://github.com/vim/vim/issues/3629
把命令调整如下:
LDFLAGS="-rdynamic" ./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp=yes \
--enable-python3interp=yes \
--with-python3-config-dir=/usr/local/lib/python3.10/config-3.10-x86_64-linux-gnu \
--enable-perlinterp=yes \
--enable-luainterp=yes \
--with-lua-prefix=/usr/local \
--enable-cscope --prefix=/usr/local
安装vim-lua语法
git clone https://github.com/tbastos/vim-lua.git
cp vim-lua/indent/lua.vim ~/.vim/autoload/
cp vim-lua/syntax/lua.vim ~/.vim/syntax/lua.vim
安装vim-tagbar
这个插件是个taglist的替换品,有人维护. 主要用来取文件中的函数名等(依赖ctags)
git clone https://github.com/preservim/tagbar.git
cd tagbar
cp syntax/tagbar.vim ~/.vim/syntax/
cp plugin/tagbar.vim ~/.vim/plugin/
cp autoload/tagbar.vim ~/.vim/autoload/
cp autoload/tagbar ~/.vim/autoload/ -r
cp doc/tagbar.txt ~/.vim/doc/
安装后下面是状态栏配置:
" 我的状态行显示的内容(包括文件类型和解码)
"set statusline=%F%m%r%h%w[%p%%]%{exists('*Tlist_Get_Tagname_By_Line')?Tlist_Get_Tagname_By_Line():''}
" 显示当前路径
set statusline=%F%m%r%h%w
" 显示行列和百分比
set statusline+=[%l,%c,%p%%]
" 显示函数名
set statusline+=%{exists(':TagbarToggle')?tagbar#currenttag('%s',''):''}
评论 (0)