jedi+VIM+ oh-my-zsh 打造酷炫 python 开发

vim 功能强大,oh-my-zsh 界面优雅。感慨 vscode 下 python 开发各种奇葩问题,太不稳定了。于是在 windows7 上装了虚拟机,采用 homestead+vagrant+vmbox(借 laravel 社区东风)。python 开发存在最大的问题是代码跳转,补全极不方便,找到了一款方便 python 开发的 vim 插件 jedi-vim。

酷炫#

使用了 vim 主题插件,jedi-vim 代码补全,目录菜单呼出。下面是使用定义溯源后的效果图

使用 Jedi 结合 oh-my-zsh 打造酷炫开发

使用 Jedi 结合 oh-my-zsh 打造酷炫开发

虚拟机#

下面工具,请自行安装

  • vitrual box 虚拟机环境
  • homestead laravel 开发集成环境,vmbox
  • vagrant 管理虚拟机的工具
  • gitbash git 在 window 下的客户端,充当如 xshell,putty 等远程登录角色

oh-my-zsh#

宿主机是 linux 走正常流程,问题项主要是解决远程登录出现的异常表现。

前置条件#

  • Zsh 必须是 v4.3.9+ ,可 执行 zsh --version 验证。未安装,则进入安装 zsh
  • curlwget ,git 必须被安装,这一点不用担心 homestead 已经集成了

安装#

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

配置主题#

主要是选择主题插件,详情参阅地址

vi ~/.zshrc

ZSH_THEME="robbyrussell"
ZSH_THEME_RANDOM_CANDIDATES=(
  "robbyrussell"
  "agnoster"
)

问题#

官方安装完毕,发现在 window 下有字符呈现为空方框。基本原因:字体符编码与字体文件,若此二者排除,你需要考虑,使用 gitbash 远程登录虚拟机,你所看到的界面,是宿主机的资源所提供的。换句话来说,即 window7 缺少 powerline 字体文件,到 github 官网下载,将字体 文件拖入以下文件夹即可。

c:/windows/fonts

oh-my-zsh 效果#

使用 Jedi 结合 oh-my-zsh 打造酷炫开发

当然 gitbash 本身字符编码最好也设置为 utf-8,其字体文件选择 powerline,否则还是会看到讨厌的方框。同样的道理,你用 puty 远程登录也会出现这种情况,亦需作相应变更操作。至于本机系统本身是 linux 就不用考虑了。

jedi-vim#

该插件是专门针对 Python 语言的代码补全,十分好用。

插件管理器#

套路满满,装插件首先要得有插件管理器。通过它来管理插件安装,vim 也不例外。
下展示对 vim 状态栏不同的管理器安装方式差异

Plugin Manager Install with...
Pathogen git clone https://github.com/vim-airline/vim-airline ~/.vim/bundle/vim-airline 需要手动执行 :Helptags 生成 tags
NeoBundle NeoBundle 'vim-airline/vim-airline'
Vundle Plugin 'vim-airline/vim-airline'
Plug Plug 'vim-airline/vim-airline'
VAM call vam#ActivateAddons([ 'vim-airline' ])
Dein call dein#add('vim-airline/vim-airline')
minpac call minpac#add('vim-airline/vim-airline')
manual copy all of the files into your ~/.vim directory

建议选用 plug 安装插件最省事,tags 它会帮你自动生成,安装使用,在给出的官方链接内有详细描述。

vim-airline 字体补丁#

用过 bootstrap 的同学都知道,它将一些小图形做成了字形。字体补丁,就是在不影响原字形的情况下,加入一些箭头,星星,闪电,桃形等小图标,将其转为字体,且追加集成到字形集中。这种技巧,惯用于命令行界面,给人以图形的效果。

装 vim-airline 也有一个坑,这是需要打补丁的字体(正常字体是不会打的),powerline 只保证你的 oh-my-zsh 正常显示,vim 的状态条就呵呵了。不过办法总是有的,所不同的是需要 下载打过补丁的字体,注意是 patched-fonts。若你使用 powerline 字体(该类型字体只少量打过补丁)会发现有的可用有的不可用,同样道理 gitbash 终端,换成打过补丁的字体就 ok 了。

补全#

使用 Jedi 结合 oh-my-zsh 打造酷炫开发

使用 Jedi 结合 oh-my-zsh 打造酷炫开发

跳转#

下面是 jedi-vim 的一些默认配置,leader 是前缀键操作,vimrc 若未配置默认为 \
本人 vimrc 基本配置之前被配为了, 所以在 vim 正常模式下,你按 K,可以查看光标所指变量文档(若存在)
,d 查看光标所指向的源码定义 等等

let g:jedi#goto_command = "<leader>d"
let g:jedi#goto_assignments_command = "<leader>g"
let g:jedi#goto_definitions_command = ""
let g:jedi#documentation_command = "K"
let g:jedi#usages_command = "<leader>n"
let g:jedi#completions_command = "<C-Space>"
let g:jedi#rename_command = "<leader>r"

更多技巧请参阅 地址,或在 vim 命令行下呼出

:h jedi-vim

小技巧#

截图#

win7 自带截图工具,但不幸的是我的电脑点击后,有了如下表示。如果你碰到了,换个打开方式

使用 Jedi 结合 oh-my-zsh 打造酷炫开发
直接 Alt + PrtSc(F12 右边那个)键截取,然后粘贴到文章编辑器即可。想裁剪,粘贴到画图处理。

终端#

vim8.1 内置终端,输入:ter 横向窗口, :vert ter 纵向,效果如下

jedi+VIM+ oh-my-zsh 打造酷炫 python 开发

vim
本作品采用《CC 协议》,转载必须注明作者和本文链接
pardon110
开发者 @ 社科大
文章
135
粉丝
24
喜欢
103
收藏
56
排名:105
访问:8.9 万
私信
所有博文
社区赞助商