在RabbitVCS上下文菜单中仅显示svn

安装RabbitVCS后,我在Nautilus中获得git,svn和Hg集成。 如何从上下文菜单中删除Hg和Git?

我发现了这样做的一种黑客行为方式。 我假设你已经安装了rabbitvcs-nautilus 。 我在Ubuntu 16.04中测试过它。

安装后,如果你重新启动nautilus,你会找到三种类型的VCS的条目,即git,mercurial(hg)和SVN。 以下是默认安装后的上下文菜单的屏幕截图。

带git,hg和svn的默认菜单项

现在,要删除git和mercurial菜单,请使用您喜欢的文本编辑器打开/usr/lib/python2.7/dist-packages/rabbitvcs/util/contextmenu.py 。 我在示例中使用了sublime文本

 subl /usr/lib/python2.7/dist-packages/rabbitvcs/util/contextmenu.py 

现在,转到第1329行。从1329到1372的注释行。这些基本上是git和mercurial的菜单项条目。 评论后,线条变成了

 File: /usr/lib/python2.7/dist-packages/rabbitvcs/util/contextmenu.py 1329: # (MenuRabbitVCSGit, [ 1330: # (MenuClone, None), 1331: # (MenuInitializeRepository, None), 1332: # (MenuSeparator, None), 1333: # (MenuDiffMenu, [ 1334: # (MenuDiff, None), 1335: # (MenuDiffPrevRev, None), 1336: # (MenuDiffMultiple, None), 1337: # (MenuCompareTool, None), 1338: # (MenuCompareToolPrevRev, None), 1339: # (MenuCompareToolMultiple, None), 1340: # (MenuShowChanges, None), 1341: # ]), 1342: # (MenuShowLog, None), 1343: # (MenuStage, None), 1344: # (MenuUnstage, None), 1345: # (MenuAddToIgnoreList, ignore_items), 1346: # (MenuSeparator, None), 1347: # (MenuRename, None), 1348: # (MenuDelete, None), 1349: # (MenuRevert, None), 1350: # (MenuClean, None), 1351: # (MenuReset, None), 1352: # (MenuCheckout, None), 1353: # (MenuSeparator, None), 1354: # (MenuBranches, None), 1355: # (MenuTags, None), 1356: # (MenuRemotes, None), 1357: # (MenuSeparator, None), 1358: # (MenuGitExport, None), 1359: # (MenuMerge, None), 1360: # (MenuSeparator, None), 1361: # (MenuAnnotate, None), 1362: # (MenuSeparator, None), 1363: # (MenuCreatePatch, None), 1364: # (MenuApplyPatch, None), 1365: # (MenuSeparator, None), 1366: # (MenuSettings, None), 1367: # (MenuAbout, None) 1368: # ]), 1369: # (MenuRabbitVCSMercurial, [ 1370: # (MenuSettings, None), 1371: # (MenuAbout, None) 1372: # ]) 1373: ] 1374: 

我在这里打印了行号。

这是两个屏幕截图,显示了禁用此function之前和之后的上下文菜单。

屏幕截图:禁用后

禁用Git和HG后

查看RabbitVCS的启动器并编辑快速列表条目。

启动器将位于〜/ .local / share / applications /或/ usr / share / applications中,它将是一个桌面文件。

应在[桌面操作]块中定义额外选项,可以删除这些选项,然后从“操作”行中删除这些选项。

变化应立即显示。