前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RabbitVCS(0.14.2)不显示右键设置(settings)菜单,

RabbitVCS(0.14.2)不显示右键设置(settings)菜单,

作者头像
10km
发布2019-05-25 21:54:31
2K0
发布2019-05-25 21:54:31
举报
文章被收录于专栏:10km的专栏10km的专栏10km的专栏

版权声明:本文为博主原创文章,转载请注明源地址。 https://cloud.tencent.com/developer/article/1433564

RabbitVCS是Linux的svn客户端,对于在windows下用惯了TortoiseSVN的人来说,在linux下使用纯命令行的svn命令实在是太折磨人了,RabbitVCS就是一个类似于TortoiseSVN的linux平台工具。

我的linux平台是CentOS6.5,安装RabbitVCS已经好久了,是用yum install安装的0.14.2版本。

当时安装一切正常,但是突然有一天我发现右健菜单中的设置(settings)界面打不开了,当时没有影响svn的提交和更新功能也没理会,这两天必须要使用这个设置界面,却用不成,就不得不想办法解决了。

想升级到最新版本,yum 却没提供更新的版本,必须得自己去RabbitVCS官网下载源码编译,好麻烦。还是决定从现有的版本着手,尝试能不能解决。

这个帖子给了我提示《centos 6 install rabbitvcs》

我尝试在命令行执行settings菜单显示

rabbitvcs settings

报错如下

Traceback (most recent call last): File “settings.py”, line 352, inundefined window = Settings(options.base_dir) File “settings.py”, line 126, in init self.get_widget(“pages”).get_nth_page(5).set_visible(show_git) AttributeError: ‘gtk.VBox’ object has no attribute ‘set_visible’

哈,总算知道错误信息了,这个'gtk.VBox' object has no attribute 'set_visible'是什么鬼?

我对pythong不熟悉,才入门,只能大概知道就是没有set_visible这个属性。。。

在google上一通乱找,找到这个贴子《[pygtk] Getting widget visibility》又给了我提示,可能是python依赖的pygtk库升级导致的兼容性问题,貌似set_visiable方法被废弃,改为直接对visiable变量赋值了。

于是打开/usr/lib/python2.6/site-packages/rabbitvcs/ui/settings.py找到126行set_visible所在的位置,代码片段如下:

        if base_dir:
            vcs = rabbitvcs.vcs.VCS()
            git_config_files = []
            if vcs.is_in_a_or_a_working_copy(base_dir) and vcs.guess(base_dir)["vcs"] == rabbitvcs.vcs.VCS_GIT:
                git = vcs.git(base_dir)
                git_config_files = git.get_config_files(base_dir)

                self.file_editor = rabbitvcs.ui.widget.MultiFileTextEditor(
                    self.get_widget("git_config_container"),
                    _("Config file:"),
                    git_config_files,
                    git_config_files,
                    show_add_line=False
                )
                show_git = True

#出错代码位置--本文作者注释        self.get_widget("pages").get_nth_page(5).set_visible(show_git)

        self._populate_checker_tab()

先把settings.py备份,然后修改代码,

self.get_widget("pages").get_nth_page(5).set_visible(show_git)改为self.get_widget("pages").get_nth_page(5).visible=show_git

然后执行

rabbitvcs settings

哈,报错消失,settings菜单正常显示啦!

再执行nautilus -q更新nautilus

点右键\RabbitVCS SVN\设置,界面正常打开:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016年09月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档