H5W3
当前位置:H5W3 > 其他技术问题 > 正文

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

本文地址:H5W3 » jedi+VIM+ oh-my-zsh 打造酷炫 python 开发

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址