Vim踩坑记录
本文最后更新于:2023年1月2日 下午
前言
使用Vim的历史就是人类不断折腾的赞歌
Fuck the Vim
airline-weather
8月7日,weather的icon还是不尽人意,不是nerd font的错误(每一个nerd font的weather图标都很小),应该直接从unicode编码的图形入手
可能解决办法:去windows系统中把unicode图标敲出来,然后写到文件里面直接复制到Ubuntu
8月8日,上述方法可行,但是效果不太理想。现在又出现了新的问题,无法通过设置地理位置来更改weather
可能解决的办法:提交issue,看作者什么时候回我:(
8月11日,我估计那个作者是不会回我了。我看了一下项目日期,是2016年的项目,我麻了
暂时放弃了这个插件(我重新安装之后居然还报出API error
的错误,服了),看什么时候作者想起来这个项目了吧
9月5日,我提交了那个issue有人回我了(应该是一个中国老哥),他给的方法暂时能解决刷新问题(通过强制删除.weather
文件)。不过显然治标不治本,我无法通过设置时间让vim自动给帮我刷新weather。在这里还是感谢一下帮忙的那位老哥Freed-Wu
我累了,毁灭吧
vim-visual-multi
8月8日,使用vim-visual-multi有时候会出现错误,在vim中有报错显示,极大原因是和coc
的配合出现了问题(在.html
代码中尤为明显)。如果出现报错,使用Ctrl+n能够多选,但是操作会有极大问题。
可能解决的办法:暂时没找到合适的解决方法。但是听说是因为版本的问题,新版本vim和neovim是没有这样的bug的,可以选择移植
8月9日,重新编译Vim的话会出现两种版本的Vim共存的情况,一个在/usr/bin/vim
中,也就系统的vim,一个是在/usr/local/bin/vim
中,也就是自己编译安装的vim。(麻了,真让人头疼)新安装的没有了问题(8.2版本),系统的是8.1版本,看啥时候Ubuntu软件源能够给我面子更新一下自家的vim了:(
8月15日,好消息是我不用等apt软件源主动更新vim了。我可以直接用ppa来安装最近的vim
sudo add-apt-repository ppa:jonathonf/vim
害,这就好多了,然后更新软件源然后安装就好了,问题得到了解决。(主要参考)
当然你也不能要求别人ppa和github更新的速度一样快,相差一个月以内就行了浏览器运行html文件
9月5日,我改用neovim和mac的组合了,markdown插件换成了InstantMarkdown
但是发现使用之后html就无法用谷歌打开了(当然是用md_browser
打开的),研究了半天找到了解决办法
解决办法:使用!open %
就能用默认浏览器打开html文件了
使用coc-java运行报错
9月11日,The error is: Error: The "java" server crashed 5 times in the last 3 minutes. The server will not be restarted
这里主要是jdt lang Server 没有好好地运行(我是用内部自动安装的,所以安装出了问题)
解决办法:直接去eclipse官网去下载这个server,下载好之后手动安装到~/.config/coc/extensions/coc-java-data/server
设置md文件outline预览
9月29日,现在我因为nvim换到了Mac电脑上了,所以之前设置的md文件的导航视窗预览没有了。
解决办法:找到了一个掘金的帖子,发现他采用的tagbar
功能扩展还不错。但是我又发现他是从github上的tagbar#70
,于是找到了一个更好的方法,不仅显示了大纲还可以显示图片地址和链接
fzf.vim
9月30日,问题描述:fzf.vim
在使用时,输入:Files
报错(反正就是很诡异)
解决办法:我找到了issue#439,这里面说可以更改fzf
的目录文件,即更改dir
,于是我将Plug 'junegunn/fzf', { 'dir': '~/.local/share/fzf' }
添加到了我的init.vim中。
Neovim on Windows
最近在Windows上开始折腾上了Neovim(不得不说用起来意外地舒服),当然是在Windows Terminal上玩的
首先需要注意的是使用Windows的话推荐使用Windows Terminal来打开powershell来编辑,同时推荐使用Chocolatey来管理你的neovim的软件包
12月3日,问题描述:在安装完Neovim后,输入指令checkhealth
,结果是python3的依赖没有导入,对nvim会提示fail to import neovim
,这时候就需要使用pip
来安装neovim
的python依赖了: pip install neovim
,结果发现了bug。
问题在于:你安装了neovim依赖之后还是会报错!
问题查明和解决方法:你使用了较新版本的python,比如我就是用的python 10.0.0
,只需要将python@10卸载之后安装python@9就好了
其他关于checkhealth
问题
首先就是需要安装关于
node.js
的依赖:npm install neovim -g
go和rua的依赖,你可以通过查看health详情来看一下到底怎么操作
Vim on Mac OS
2023年1月2日,更新了Mac OS到12.6.2,于是自动更新了终端上的Vim,水果将其更新为了vim@9.0 (听说支持vimscript9,速度会有飞跃式提升)。
于是就打算重新配置一下Vim(毕竟我一直都在使用NeoVim,好久没有使用原生Vim了),但是这个Vim我满怀欣悦试着去从零开始配置,结果慢慢发现它相较于NeoVim好多feature都没有。真是头疼啊
其version如下:
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Nov 13 2022 20:35:12)
macOS version - arm64
Included patches: 1-639
Compiled by root@apple.com
Normal version without GUI. Features included (+) or not (-):
+acl +file_in_path -mouse_urxvt -tag_any_white
-arabic +find_in_path +mouse_xterm -tcl
+autocmd +float +multi_byte -termguicolors
+autochdir +folding +multi_lang +terminal
-autoservername -footer -mzscheme +terminfo
-balloon_eval +fork() +netbeans_intg +termresponse
-balloon_eval_term -gettext +num64 +textobjects
-browse -hangul_input +packages +textprop
++builtin_terms +iconv +path_extra +timers
+byte_offset +insert_expand -perl +title
+channel +ipv6 +persistent_undo -toolbar
+cindent +job +popupwin +user_commands
-clientserver +jumplist +postscript -vartabs
+clipboard -keymap +printer +vertsplit
+cmdline_compl +lambda -profile +vim9script
+cmdline_hist -langmap -python +viminfo
+cmdline_info +libcall -python3 +virtualedit
+comments +linebreak +quickfix +visual
-conceal +lispindent +reltime +visualextra
+cryptv +listcmds -rightleft +vreplace
+cscope +localmap +ruby/dyn +wildignore
+cursorbind -lua +scrollbind +wildmenu
+cursorshape +menu +signs +windows
+dialog_con +mksession +smartindent +writebackup
+diff +modify_fname -sodium -X11
+digraphs +mouse -sound -xfontset
-dnd -mouseshape +spell -xim
-ebcdic -mouse_dec +startuptime -xpm
-emacs_tags -mouse_gpm +statusline -xsmp
+eval -mouse_jsbterm -sun_workshop -xterm_clipboard
+ex_extra -mouse_netterm +syntax -xterm_save
+extra_search +mouse_sgr +tag_binary
-farsi -mouse_sysmouse -tag_old_static
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
defaults file: "$VIMRUNTIME/defaults.vim"
fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DMACOS_X_UNIX -g -O2 -U_FORTIFY_SOUR
CE -D_FORTIFY_SOURCE=1
Linking:
gcc -L/usr/local/lib -o vim -lm -lncurses -liconv -framework Cocoa
使用has('termguicolors')
和has('unnamedplus')
查看一下结果两个都是0,也就是说Mac最新的Vim连24bit true color和共享系统剪切板的支持都没有,真是欲哭无泪啊。不过还是可以体验一把最原始的Vim Style,试着配完吧🧐。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!