Можно ли заставить индикатор-аппменю игнорировать конкретное приложение?

Новое индикаторное приложение в Maverick нарушает работу меню LyX: меню приложения не отображается ни в окне приложения, ни в апплете. (См. Сообщение об ошибке.)

В качестве обходного пути, пока ошибка устранена, есть ли способ сделать исключение для апплета, чтобы LyX игнорировался и апплет мог использоваться для всего остального? Что-то похожее на исключения Максимуса.

5 ответов

Решение

Запустить приложение

  • Чтобы запустить приложение (например, gcalctool) с помощью меню в приложении, а не на панели, запустите в терминале следующее:

    UBUNTU_MENUPROXY= gcalctool
    

    Чтобы запустить приложение с включенным меню в приложении и на панели, запустите:

    APPMENU_DISPLAY_BOTH=1 gcalctool
    
  • Вместо использования терминала вы можете использовать сочетание клавиш Alt + F2, чтобы запустить диалоговое окно запуска, в котором вы должны ввести:

    env UBUNTU_MENUPROXY= gcalctool
    

    или же

    env UBUNTU_DISPLAY_BOTH=1 gcalctool
    

Редактировать пусковые установки приложений в Ubuntu 10.10

Чтобы было проще всегда запускать ваше приложение с одними и теми же настройками приложения, вы можете редактировать панели запуска приложений в меню, на панели gnome и на рабочем столе:

  • Gnome-панель и рабочий стол: просто щелкните правой кнопкой мыши на панели запуска, выберите "Свойства" и добавьте env UBUNTU_MENUPROXY= или же env UBUNTU_DISPLAY_BOTH=1 к значению в поле "Команда":


    (источник: xrmb2.net)

  • Меню: щелкните правой кнопкой мыши меню и выберите "Редактировать меню". В новом окне найдите модуль запуска, который вы хотите отредактировать, и нажмите кнопку "Свойства" справа. Опять же, просто добавьте переменные, как указано выше (не забывайте "env"), нажмите "Закрыть" два раза, и все готово.

Редактирование модулей запуска в Unity на базе Compiz в Ubuntu 11.04

  • Грязный метод: измените файл запуска.desktop в /usr/share/applications каталог:

    • Например, запустить

      gksudo gedit /usr/share/applications/gcalctool.desktop
      
    • Теперь отредактируйте Exec= -линия, содержащая любую из двух переменных сверху, например:

      Exec=env UBUNTU_MENUPROXY= gcalctool
      
    • Сохраните файл, и запуск gcalctool из панели запуска Unity должен запустить его вместе с меню в приложении.

    Недостатки этого метода: он изменит панель запуска для всех пользователей и, вероятно, будет отменен обновлениями системы.

  • Лучший метод:

    • Если уже добавлено, отсоедините панель запуска от панели запуска.
    • Скопируйте соответствующий файл.desktop в свой домашний каталог:

      cp /usr/share/applications/gcalctool.desktop ~/.local/share/applications
      
    • Как и в методе выше, отредактируйте Exec= -линии, чтобы содержать одну из двух переменных:

      Exec=env UBUNTU_MENUPROXY= gcalctool
      
    • Сделайте файл исполняемым:

      chmod +x ~/.local/share/applications/gcalctools.desktop
      
    • Запустите Nautilus в этой папке и дважды щелкните по файлу.desktop (в этом примере это просто "Калькулятор"):

      nautilus ~/.local/share/applications
      
    • Теперь вы должны увидеть значок запуска в панели запуска - закрепите его с помощью быстрого списка, и все готово.


Примечание. Для обеспечения работы выше с приложениями KDE замените UBUNTU_MENUPROXY= с QT_X11_NO_NATIVE_MENUBAR=1,

Еще одна работа, которая не даст вам двойного меню, - начать LyX с:

UBUNTU_MENUPROXY= lyx

Отключение переменной окружения UBUNTU_MENUPROXY просто полностью игнорирует меню приложения.

Которые должны быть:

#!/bin/sh
export APPMENU_DISPLAY_BOTH=1
exec lyx

Чтобы избавиться от затяжного процесса оболочки.

@waluylo, моя (и, вероятно, тоже Роберта) оболочка из лисы выглядит просто так

#!/bin/sh
export APPMENU_DISPLAY_BOTH=1
lyx

Я создал сценарий оболочки с именем "lyx_unity", который исполняет APPMENU_DISPLAY_BOTH=1 до lyx, и отредактировал пункт меню так, чтобы он выполнял "lyx_unity" вместо "lyx".

Другие вопросы по тегам