【问题标题】:Eclipse RCP: Key binding for commands work, but shortcuts are not shown in menuEclipse RCP:命令的键绑定有效,但快捷方式未显示在菜单中
【发布时间】:2015-11-21 21:13:14
【问题描述】:

注意:我不认为这是 Eclipse Editor plug-in key binding not shown in menu for command 的重复!

我有一个基于 Mars (4.5) 的 Eclipse RCP 应用程序,它不使用任何 e4 功能。我已经定义了自己的密钥方案,以及plugin.xml 中命令的一些密钥绑定。它们工作正常,当我从 IDE 启动我的应用程序时,菜单条目在实际命令文本旁边的菜单中显示 快捷方式文本(例如,CTRL + Q),例如

退出 CTRL+Q

但是,当我构建我的产品(包括plugin_customizations.ini)并运行它时,键绑定仍然有效,但实际的快捷方式文本不再显示在菜单中。

如何解决此问题,以便文本再次显示在产品构建中?

编辑:这是在 Ubuntu 14.04 (Unity) 上。

从 IDE 启动,显示快捷方式文本:

从构建的产品开始,相同的系统:

【问题讨论】:

    标签: eclipse menu eclipse-plugin eclipse-rcp key-bindings


    【解决方案1】:

    这是 Ubuntu 中一个已知错误的问题(参见 related Eclipse bug reportdiscussion on ubuntuforums.org)。

    要解决此问题,请将UBUNTU_MENUPROXY 环境变量设置为0 来启动应用程序。这会强制应用程序使用应用程序窗口内的菜单栏,而不是 (cursed!cursed!cursed!) Unity 全局菜单。

    不幸的是,似乎还没有办法在启动时设置环境变量(通过启动器参数或<application>.ini),但是有两个错误(this onethis one)要求这样做,所以如果你,也需要这个,投票给他们或尝试实施这个......

    与此同时,您可以在构建中包含一个自定义 shell 脚本,用户可以选择使用它来启动应用程序。这个脚本非常简单:

    #/bin/bash
    UBUNTU_MENUPROXY=0 ./{your-application-launcher}
    

    如果您有基于功能的产品,您还可以在构建中包含此脚本,仅适用于为 Linux 构建的产品。为此,请将脚本添加到主要功能的根路径,然后将以下行添加到功能的 build.properties

    root.linux.gtk.x86.permissions.755=launcher-unity.sh
    root.linux.gtk.x86_64.permissions.755=launcher-unity.sh
    root.linux.gtk.x86=file:launcher-unity.sh
    root.linux.gtk.x86_64=file:launcher-unity.sh
    

    【讨论】:

      猜你喜欢
      • 2011-05-19
      • 2014-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-08
      • 1970-01-01
      相关资源
      最近更新 更多