设为首页 收藏本站
查看: 1934|回复: 0

[经验分享] Fedora16 安装 vim 以及整合部分插件(for python)

[复制链接]

尚未签到

发表于 2017-5-3 08:49:05 | 显示全部楼层 |阅读模式
  在Fedora上面使用(更新)vim以及整合部分插件(for python), 笔记如下:


0.提前准备:

0.1 'python-config' tool, Fedora提供该安装包为'python-devel'

su -c 'yum install 'python-devel''
  


这是为了后面准备将vim绑定python的解析器(提供auto-complete功能),

安装成功后将会看到类似的内容:

[xinz@fedora workshop]$ python-config
Usage: /usr/bin/python-config [--prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help]

  



可以解决vim编译时绑定解析器可能遇到的问题:


(cached) checking Python's configuration directory... (cached)

can't find it!

compile and link flags for Python are sane... no: PYTHON DISABLED



1.Fedora16默认情况下只提供一个vim-minimal精简版工具,当前下载vim7.3的src



2.解压,cd vim73


3.

./configure --enable-pythoninterp --enable-multibyte
  



说明:2个选项分别是将vim绑定python解析器,以及允许vim正常显示中文

更多对选项可以通过

./configure --help


4.make && sudo make install

安装完成后vim --version,可以查看得到+python +multi_byte


5.由于vim插件默认情况下不会被liunx/unix全部对用户使用,所以自己建立一个文件用于插件配置: ~/.vimrc。

$vim

:echo &runtimepath

将会看到vim运行时加载对配置路径

如果期望加载默认(share)插件配置,可以使用

set runtimepath+=/usr/local/share/vim/vim73


6.整理下当前使用的配置(编辑在~/.vimrc)

" Execute file being edited with <Shift> + e:
map <buffer> <S-e> :w<CR>:!/usr/bin/env python % <CR>
syntax on
filetype indent plugin on
set modeline
set tabstop=4
set expandtab
set softtabstop=4
set shiftwidth=4
set nonumber
nnoremap <F2> :set nonumber!<CR>:set foldcolumn=0<CR>
autocmd FileType python set omnifunc=pythoncomplete#Complete
let Tlist_Ctags_Cmd='/usr/local/bin/ctags'
map <leader>tt :TlistToggle<CR>
set fileencodings=utf-8
set termencoding=utf-8
set encoding=utf-8

  



7.说明:

" Execute file being edited with <Shift> + e:

map <buffer> <S-e> :w<CR>:!/usr/bin/env python % <CR>

扩展编辑python的时候,可以直接通过shift+e来运行代码


syntax on

filetype indent plugin on

set modeline

set tabstop=4

set expandtab

set softtabstop=4

set shiftwidth=4

默认情况下打开vim语法高亮,以及一些插件的支持和tab键的长度


set nonumber

nnoremap <F2> :set nonumber!<CR>:set foldcolumn=0<CR>

默认情况下不显示文本行数,可以直接通过F2来查看


autocmd FileType python set omnifunc=pythoncomplete#Complete
  
python autocomplete插件, 编辑代码的时候,可以使用“ctrl+x ctrl+o”完成代码补全或函数提示(以及docstring),":only" 可以只保留当前的窗口。
  
DSC0000.jpg
  


let Tlist_Ctags_Cmd='/usr/local/bin/ctags'

map <leader>tt :TlistToggle<CR>

查看当前代码定义了哪些函数和类

a.下载、安装ctags


b.下载taglist
插件, 将解压后的doc、plugin中的文件放置在~/.vim/doc,~/.vim/plugin

c.修改了下:TlistToggle快捷键为<leader>tt, 默认情况下<leader>键是“\”。


用法:

vim **.py

键入"\tt",将看到另一窗口

可以使用"ctrl+ww"进行切换,在“缩略大纲”(可以通过:q关闭)可以直接通过移动光标到查看目标,然后“enter”即可查看源码。

注:每次大纲里查看到的函数和类是在vim编辑进入时的,并不会随着当前代码的更新而变化,可以在下次进入时看到大纲的更新内容。
  
DSC0001.jpg
  


set fileencodings=utf-8

set termencoding=utf-8

set encoding=utf-8

中文编码


9.参考文档:
  
http://wiki.python.org/moin/Vim


http://dancingpenguinsoflight.com/2009/02/python-and-vim-make-your-own-ide/


http://sontek.net/turning-vim-into-a-modern-python-ide



中文编码
http://salogs.com/2010/06/vim%E8%A7%A3%E5%86%B3%E7%BC%96%E8%AF%91%E5%AE%89%E8%A3%85vim7-2%E5%90%8E%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%E9%97%AE%E9%A2%98/
  http://www.cnblogs.com/hustcat/archive/2010/07/29/1788179.html
  

补充:
  1. 谢谢网络文档的分享!

2. Fedora上面使用vim遇到一些不懂的问题,目前都已经解决了,希望对你有参考帮助,如果有任何错误的理解,请帮忙指正。

3. 短暂试用了下Emacs,目前还是先更熟悉下vim DSC0002.gif

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-372322-1-1.html 上篇帖子: 恭喜 Python成为2010年度编程语言 下篇帖子: 《Python基础教程》学习笔记 – Lesson01:基础知识(转)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表