当我们右键单击面板上的主菜单时,我们会看到一些选项。是否可以从中删除“编辑菜单”选项?
答案1
好的,这不会删除菜单项,但它会使其变得无用,应该正是您所需要的:
首先,备份菜单编辑器 alacarte:
sudo cp /usr/bin/alacarte /usr/bin/alacarte_backup
现在用你最喜欢的文本编辑器打开原文:
sudo gedit /usr/bin/alacarte
在之间顶部大注释的末尾和写着的行
import sys
,粘贴此内容:
import gtk
md = gtk.MessageDialog(None,
gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_ERROR,
gtk.BUTTONS_CLOSE, "Not Allowed")
md.run()
md.destroy()
exit(1)
当然,您可以用任何您喜欢的错误消息替换“不允许”。
现在,当您点击“编辑菜单”时,将会弹出以下消息:
当然,这并不“安全”,知识渊博的用户将能够绕过它,但我想这对你来说没问题。我还没有测试过是否有任何其他应用程序因此而崩溃,但从代码来看,这种情况不应该发生。
注意:如果你想使用由 ASCII 以外的字符组成的错误消息,请确保它显示# -*- coding: utf-8 -*-
在顶部(第二行或第三行,并非第一次) 文件(默认情况下应该如此)。
否则您将收到错误。
答案2
今天 Stefano 和我聊过这个问题。我认为他正在研究另一个方向,但我有几个基于源代码的方法来解决这个问题。
主菜单栏小程序是其中的一部分
gnome-panel
,因此您可以下载其源代码,进行编辑以删除“编辑菜单”菜单选项,然后重新打包。这样做的问题是,当您获得更新时,您将丢失所做的更改,或者您保留软件包版本并且没有自动更新。使用另一种菜单。有一些不错的选择,例如卡达皮奥。Cardapio 基于 Python,因此更容易按照您的意愿行事。只需编辑
/usr/lib/cardapio/Cardapio.py
。这里有几个选项,您可以打破launch_edit_app()
。或者您可以使用类似这样的方法找出选项的绘制位置:grep -R 'launch_edit_app' /usr/lib/cardapio/
当然,您需要锁定面板以阻止某人添加常规菜单。