答案1
解决方案:
- 重命名(移动)原始文件:
sudo mv /usr/bin/audacity /usr/bin/audacity_orig
创建自定义脚本来启动Audacity:
sudo nano /usr/bin/audacity_mod
并添加以下内容:#!/bin/sh export UBUNTU_MENUPROXY=1 # Preform a check if there is an argument to avoid launching Audacity twice. # Audacity has to be opened without an argument first, # otherwise the "alt" menu doesn't show results from the menu bar. if [-z "$1"]; then audacity_orig else audacity_orig | (sleep 1 && audacity_orig "$1") fi
解释:
- 首先,通过运行启用本机菜单
export UBUNTU_MENUPROXY=1
- 通过执行
audacity_orig
,我们将启动原始 Audacity 程序(我们在上一步中重命名了该程序)。然后我们等待一秒钟,并使用audacity_orig "$file"
将文件加载到之前启动的程序实例中。运行audacity_org "$1"
将把文件路径作为参数传递给程序。我们需要同时运行这两个程序的原因是,Alt除非 Audacity 在没有参数的情况下启动,否则菜单(菜单栏搜索)似乎不起作用。
注意:如果您不使用菜单Alt,您可以将最后 5 行替换为:
audacity_orig "$file"
export UBUNTU_MENUPROXY=1
注意:您也可以从上面的脚本中省略该行,而改为改为该Exec=env UBUNTU_MENUPROXY=0 audacity %F
行/usr/share/applications/audacity.desktop
(将 0 更改为 1,或删除该env UBUNTU_MENU_PROXY=0
部分)。- 首先,通过运行启用本机菜单
最后,将 bash 脚本链接到 Audacity 的原始位置并使其可执行:
sudo ln /usr/bin/audacity_mod /usr/bin/audacity
sudo chmod +x /usr/bin/audacity
完毕!
您现在可以通过原生 Unity 菜单享受 Audacity:
菜单Alt也有效:
注意:通过 Unity Tweak Tool 更改操作系统主题后,您可能需要注销并重新登录才能使Alt
菜单再次正常工作。
如果您希望恢复:
- A:链接原程序:
- 删除链接:
sudo rm /usr/bin/audacity
- 链接原始文件:
sudo ln /usr/bin/audacity_orig /usr/bin/audacity
- 使链接再次可执行:
sudo chmod +x /usr/bin/audacity
- (可选)删除脚本:
sudo rm /usr/bin/audacity_mod
,或者
- 删除链接:
- B:将原始程序放回原处:
- 删除链接:
sudo rm /usr/bin/audacity
- 移动(重命名)原始文件:
sudo ln /usr/bin/audacity_orig /usr/bin/audacity
- (可选)删除脚本:
sudo rm /usr/bin/audacity_mod
- 删除链接:
答案2
看起来 shell 脚本可能没有必要。根据此主题,该环境变量被更改以解决某些系统上的某些错误,因此他们更改了 Audacity 的 .desktop 条目。
在我的 16.04 系统上,只需更改为 即可让 Audacity 使用全局UBUNTU_MENUPROXY=0
菜单。UBUNTU_MENUPROXY=1
/usr/share/applications/audacity.desktop