Можно ли заставить индикатор-аппменю игнорировать конкретное приложение?
Новое индикаторное приложение в 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".