vim 支持 python

2023-05-16

https://www.jianshu.com/p/3e606e31da5f

前段时间刚玩linux时为了图个简单打算直接用vim来写python代码省得再下个软件(好吧,其实是自己下了好多次都失败了,一气之下的决定)。但是发现我用的vim不支持python,所以只能去百度百度一些方法,也尝试了一些,但是真的好艰难,因为好多不太懂所以弄的很曲折,不过所幸最后总算是搞定了,不然会气晕了。下面的很多内容我参考了几个博客写的,不过今天来写的时候,发现一些链接没有收藏,所以没法提供了(下次遇到好的东西还是先收藏再说,不然我现在找都找不到)。话不多说,先写再说,这些步骤都在linux下进行的。


1.首先咋们先查看一下vim是不是支持python(保不准你系统里的就能支持python,那也就不需要再弄)。在一个终端里这个命令:    vim --version | grep python               看结果里的python和python3前面是“+”还是‘-’,如果都‘+’那么就代表都支持,如果有‘-’就是不支持(有可能你看到的是‘-python’和‘+python3’,这个是支持python3,不支持python2)


2.查看后如果都不支持那么开始弄吧,要想让vim支持,需要重新安装编译vim。那么来下载最新版vim吧,我这是8.0的。在浏览器里打开网址  http://github.com/vim/vim          然后下载zip文件,

 

 


4.下完后解压,并用终端打开文件夹,运行下面命令:  sudo mkdir /usr/local/vim8              这个是之后安装vim的位置


5.编译之前先运行下面命令:

sudo apt-get install python-dev

sudo apt-get install python3-dev

sudo apt-get install libncurses5-dev


6.接下来准备去编译了,不过要先对配置文件进行一些修改。

切换到src目录用命令: cd src

然后输入下面命令:(注意看后面参数说明,很重要)

./configure --with-features=huge --enable-python3interp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ --enable-rubyinterp --enable-luainterp --enable-perlinterp --with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ --enable-multibyte --enable-cscope      --prefix=/usr/local/vim/

参数说明如下:

--with-features=huge:支持最大特性

--enable-rubyinterp:打开对ruby编写的插件的支持

--enable-pythoninterp:打开对python编写的插件的支持

--enable-python3interp:打开对python3编写的插件的支持

--enable-luainterp:打开对lua编写的插件的支持

--enable-perlinterp:打开对perl编写的插件的支持

--enable-multibyte:打开多字节支持,可以在Vim中输入中文

--enable-cscope:打开对cscope的支持

--with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ 指定python 路径

--with-python-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ 指定python3路径

--prefix=/usr/local/vim:指定将要安装到的路径(自行创建)

我这是copy来的命令,最后一个路径修改为我们之前创建的路径。


7.最后运行命令:sudo make && make install     


 

本来这样应该就是搞定了,不过我们再运行下第一步的命令:vim --version | grep python

如果你发现出来的结果python前还是‘-’   ,  那么就遇到我的问题了。这时去文件夹  /usr/local下,将里面的bin和share文件放入回收站,再在终端输入  vim  --version | grep python      这时就会显示‘+’了,ok,搞定了。


以上是自己搞的过程,算是都回忆了一遍,写的可能不是很详细,但还是希望能有些帮助。

 

 



 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vim 支持 python 的相关文章

随机推荐

  • 使用电脑摄像头计算aruco marker位姿(Python)

    一 效果图 刚做了一些尝试 xff0c 算两个aruco之间的距离 先算x方向 xff0c 用ID 61 12减去ID 61 13 xff0c tvec的三个坐标依次是Z Y X 所以 xff0c ID 61 12和ID 61 13的x距离
  • vnc登录时connection refused(10061)解决方法

    问题 xff1a 当你在windows上连接linux上vnc服务器时 xff0c 点击connect后弹出connect connect refused 10061 警告框时连接被拒绝 首先 xff0c 如果你的VNC配置没有问题并且在l
  • 2014年计算机求职总结--准备篇

    版权所有 xff0c 转载请注明出处 xff0c 谢谢 xff01 http blog csdn net walkinginthewind article details 13000431 找工作是一个长期准备的过程 xff0c 突击是没什
  • 2022智源大会议程公开 | 人工智能新基建论坛

    2022年北京智源大会召开在即 xff0c 5月31日至6月2日 xff0c 持续三天 xff0c 26场由各领域领军学者主导的专题论坛 大会将紧紧围绕这些当前学术领域迫切需要解决的问题 xff0c 以及产业落地过程中存在的诸多挑战 xff
  • 因特尔神经计算棒(NCS)+树莓派+yolo-v3实现object-detection

    因特尔神经计算棒 NCS 43 树莓派 43 yolo v3实现object detection 踩了好多坑啊 一言难尽 Step1 在树莓派上安装环境 首先安装openVINO工具包 xff08 最好不要在树莓派上装NCSDK 太坑了 x
  • prometheus监控k8s集群

    prometheus监控k8s集群 1 监控方式 node expoter部署在k8s节点收集当前节点资源 xff0c Prometheus用来分析处理收集汇总的数据 xff0c grafana用来进行图形展示 2 部署Prometheus
  • 耦合、解耦是什么?怎么做到解耦呢?

    一 耦合 耦合指的是两个类之间的联系的紧密程度 xff1b 强耦合 类之间存在着直接关系 弱耦合 xff1a 在两个类的中间加入一层 xff0c 将原来的直接关系变成间接关系 xff0c 使得两个类对中间层是强耦合 xff0c 两类之间变为
  • 圈复杂度检测

    1 下载链接 xff1a https github com terryyin lizard 2 使用 xff1a python lizard py 文件名 文件路径 3 显示 NLOC xff1a 代码行数 CCN xff1a 复杂度 to
  • 服务限流降级

    https segmentfault com a 1190000015967922 高并发的线上服务 xff0c 有时候面对突发流量 xff0c 比如流量突然激增 xff0c 服务扛不住了 xff0c 类似这种场景 xff0c 需要有一个防
  • gdb调试

    c 43 43 编译生成可执行文件 g 43 43 main cpp 1 进入gdb gdb main 2 运行 r 查看 l 断点 b line num 查看 p 参数 展示display 参数 继续 c 3 比如展示vector首地址
  • git 修改commit的名字与撤回提交

    当你不小心 xff0c 写错了提交的注视 信息 xff0c 该如何处理呢 理论上 xff0c SCM是不应该修改历史的信息的 xff0c 提交的注释也是 不过在git中 xff0c 其commit提供了一个 amend参数 xff0c 可以
  • SQLAlchemy 的 scoped_session

    SQLAlchemy 的 scoped session 是啥玩意 通常我们用 SQLAlchemy 写数据的时候要创建 Session 对象来维护数据库会话 xff0c 用完了再关掉 但是听说还有个叫scoped session的玩意 xf
  • python 的StringIO

    1 IO的含义 在计算机中 xff0c IO是Input Output的简写 xff0c 也就是输入和输出 由于程序和运行时数据是在内存中驻留 xff0c 由CPU这个超快的计算核心来执行 xff0c 涉及到数据交换的地方 xff0c 通常
  • python 的fcntl模块

    python 中给文件加锁 fcntl模块 import fcntl 打开一个文件 f 61 open 39 test 39 当前目录下test文件要先存在 xff0c 如果不存在会报错 对该文件加密 xff1a fcntl flock f
  • Jmeter添加MD5方法插件

    1 xff1a 下载 https jmeter plugins org install Install 2 xff1a jmeter plugins manager 1 3 jar放到 apache jmeter 5 0 lib ext目录
  • sql 语句 将查询结果中数字等标示转成汉字

    使用case 语句 将sex 字段进行转换 0 1 2 男 xff0c 女 xff0c 未知 SELECT u userid u username CASE u sex WHEN 0 THEN 39 女 39 WHEN 1 THEN 39
  • linux的more命令

    more命令 xff0c 功能类似 cat xff0c cat命令是整个文件的内容从上到下显示在屏幕上 more会以一页一页的显 示方便使用者逐页阅读 xff0c 而最基本的指令就是按空白键 xff08 space xff09 就往下一页
  • docker入门实例

    1 image文件 Docker 把应用程序及其依赖 xff0c 打包在 image 文件里面 只有通过这个文件 xff0c 才能生成 Docker 容器 image 文件可以看作是容器的模板 Docker 根据 image 文件生成容器的
  • vim批量替换&行首尾增加&删除列

    删除列 删除列的方法 xff1a 1 ctrl 43 v 这样会启动可视模式 xff0c 按 j k 可以发现它能够在一列上面选中字符 2 按下 G 这样可以从文本的第一行选中到最后一行 3 按下 x 就会把这一列删掉 行首尾替换 xff1
  • vim 支持 python

    https www jianshu com p 3e606e31da5f 前段时间刚玩linux时为了图个简单打算直接用vim来写python代码省得再下个软件 xff08 好吧 xff0c 其实是自己下了好多次都失败了 xff0c 一气之