您尚未登录。

#1 2013-10-04 11:29:14

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

我想使用 MarkdownView 这个vim插件,它是用 python 写的,如果直接用 python(python3)执行的话无法 import gtk 这个模块

我的 vim 配置用的 git 来同步,插件是作为 submodule 安装的,所以不能修改原来的文件。

如果用 wiki 介绍的伪装 env 的方法对 gvim 也无效啊。

请问这个问题该怎么解决呢?

最近编辑记录 尹良灿 (2013-10-04 19:41:20)

离线

#2 2013-10-04 12:14:12

cjxgm
忙,却还想养猫?
所在地: 杭州
注册时间: 2011-08-19
帖子: 417
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

dirty fix,不知道有没有效果:

ln -sf /usr/bin/python2 /usr/bin/python

最近编辑记录 cjxgm (2013-10-04 12:14:55)

离线

#3 2013-10-04 12:42:40

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

cjxgm 说:

dirty fix,不知道有没有效果:

ln -sf /usr/bin/python2 /usr/bin/python


可是我系统已经有 python3 了啊,就是 /usr/bin 下有 python 这个文件了 = =

最近编辑记录 尹良灿 (2013-10-04 12:48:27)

离线

#4 2013-10-04 13:28:11

cjxgm
忙,却还想养猫?
所在地: 杭州
注册时间: 2011-08-19
帖子: 417
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

尹良灿 说:
cjxgm 说:

dirty fix,不知道有没有效果:

ln -sf /usr/bin/python2 /usr/bin/python


可是我系统已经有 python3 了啊,就是 /usr/bin 下有 python 这个文件了 = =

那只是一个到 /usr/bin/python3 的软连接

cjxgm@cjprods ~/Videos$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 7 Sep  6 15:31 /usr/bin/python -> python3*

那个命令只是把它链接到 python2,无效的话你还可以再链接回来的嘛

离线

#5 2013-10-04 13:43:10

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

cjxgm 说:
尹良灿 说:
cjxgm 说:

dirty fix,不知道有没有效果:

ln -sf /usr/bin/python2 /usr/bin/python


可是我系统已经有 python3 了啊,就是 /usr/bin 下有 python 这个文件了 = =

那只是一个到 /usr/bin/python3 的软连接

cjxgm@cjprods ~/Videos$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 7 Sep  6 15:31 /usr/bin/python -> python3*

那个命令只是把它链接到 python2,无效的话你还可以再链接回来的嘛

可是这样不会弄得一些依赖 python3 的软件出问题吗?

离线

#6 2013-10-04 13:45:28

cjxgm
忙,却还想养猫?
所在地: 杭州
注册时间: 2011-08-19
帖子: 417
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

尹良灿 说:
cjxgm 说:
尹良灿 说:
cjxgm 说:

dirty fix,不知道有没有效果:

ln -sf /usr/bin/python2 /usr/bin/python


可是我系统已经有 python3 了啊,就是 /usr/bin 下有 python 这个文件了 = =

那只是一个到 /usr/bin/python3 的软连接

cjxgm@cjprods ~/Videos$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 7 Sep  6 15:31 /usr/bin/python -> python3*

那个命令只是把它链接到 python2,无效的话你还可以再链接回来的嘛

可是这样不会弄得一些依赖 python3 的软件出问题吗?

所以说是 dirty fix 嘛

离线

#7 2013-10-04 17:12:31

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

cjxgm 说:
尹良灿 说:

可是这样不会弄得一些依赖 python3 的软件出问题吗?

所以说是 dirty fix 嘛

。。。

离线

#8 2013-10-04 18:06:17

phoenixlzx
晩ご飯だよー
注册时间: 2011-08-19
帖子: 1,789
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

还是修改脚本的情况下比较好吧,不然给作者发个ticket?

离线

#9 2013-10-04 18:21:18

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

phoenixlzx 说:

还是修改脚本的情况下比较好吧,不然给作者发个ticket?

也可以给 Arch 发个 ticket,不要用 /usr/bin/python。这家伙害得我经常不小心把 Python 3 的包打成 Python 2 的。

离线

#10 2013-10-04 18:22:08

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

尹良灿 说:

我想使用 MarkdownView 这个vim插件,它是用 python 写的,如果直接用 python(python3)执行的话无法 import gtk 这个模块

我的 vim 配置用的 git 来同步,插件是作为 submodule 安装的,所以不能修改原来的文件。

如果用 wiki 介绍的伪装 env 的方法对 gvim 也无效啊。

请问这个问题该怎么解决呢?

像我这样全部插件都自己管理,不要用 submodule 如何?

离线

#11 2013-10-04 19:38:57

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

百合仙子 说:
尹良灿 说:

我想使用 MarkdownView 这个vim插件,它是用 python 写的,如果直接用 python(python3)执行的话无法 import gtk 这个模块

我的 vim 配置用的 git 来同步,插件是作为 submodule 安装的,所以不能修改原来的文件。

如果用 wiki 介绍的伪装 env 的方法对 gvim 也无效啊。

请问这个问题该怎么解决呢?

像我这样全部插件都自己管理,不要用 submodule 如何?

可是 submodule 方便更新呐 =。=

离线

#12 2013-10-05 20:03:42

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

尹良灿 说:
百合仙子 说:
尹良灿 说:

我想使用 MarkdownView 这个vim插件,它是用 python 写的,如果直接用 python(python3)执行的话无法 import gtk 这个模块

我的 vim 配置用的 git 来同步,插件是作为 submodule 安装的,所以不能修改原来的文件。

如果用 wiki 介绍的伪装 env 的方法对 gvim 也无效啊。

请问这个问题该怎么解决呢?

像我这样全部插件都自己管理,不要用 submodule 如何?

可是 submodule 方便更新呐 =。=

不方便修改,另外小心更新坏掉。再,submodule 依赖很多远程仓库,有些地方不好用(比如 Android 里没有 DNS 解析的)。

离线

#13 2013-10-05 21:11:45

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

百合仙子 说:
尹良灿 说:
百合仙子 说:
尹良灿 说:

我想使用 MarkdownView 这个vim插件,它是用 python 写的,如果直接用 python(python3)执行的话无法 import gtk 这个模块

我的 vim 配置用的 git 来同步,插件是作为 submodule 安装的,所以不能修改原来的文件。

如果用 wiki 介绍的伪装 env 的方法对 gvim 也无效啊。

请问这个问题该怎么解决呢?

像我这样全部插件都自己管理,不要用 submodule 如何?

可是 submodule 方便更新呐 =。=

不方便修改,另外小心更新坏掉。再,submodule 依赖很多远程仓库,有些地方不好用(比如 Android 里没有 DNS 解析的)。

到目前为止我装的插件都是 github 上的,应该还算安全吧。。。Android 里没有 DNS 解析?可是我有装一个可以设置 DNS 的 App 啊=。=(虽然装了个 VimTouch 不过真没怎么用过,更别说配置了。。。

离线

#14 2013-10-05 21:17:48

尹良灿
会员
注册时间: 2013-04-23
帖子: 178

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

还好目前只有这一个插件是这种情况,暂时不理了, MarkDown 我还是用 Haroopad 编辑好了

离线

#15 2013-10-05 21:28:10

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: 怎么在不修改脚本本身的情况下默认用 python2 执行这个脚本?

尹良灿 说:

到目前为止我装的插件都是 github 上的,应该还算安全吧。。。Android 里没有 DNS 解析?可是我有装一个可以设置 DNS 的 App 啊=。=(虽然装了个 VimTouch 不过真没怎么用过,更别说配置了。。。

安全没问题,主要是担心插件作者做了不向前兼容的更改,你更新之后就用不了了。我更新插件都是在有时间调的时候,有时甚至另开一个分支慢慢调整。

手机上的话,我是在终端里用的,大概是因为没有 /etc/resolv.conf 文件,所以命令行工具都无法进行 DNS 解析。

VimTouch 不好玩。我手机上的 Vim 主要是用来 ssh 过去之后编辑脚本和配置文件的。

离线

页脚