Вопрос Как запустить конкретное приложение в обход глобального меню в Unity?


Итак, пытаясь ускориться с LaTex в vim / gvim ... проблема в учебнике для начинающих vim-latexsuite предполагает gvim и gui menus. Ладно, у меня появился gvim. Проблема заключается в том, что в Unity и в глобальном меню приложения меню усекаются и не показывают сочетания клавиш, которые они должны использовать для большинства записей, или в случае меню TeX-Suite, записи, такие как '2: Article' are simply truncated to '2: '. Не полезно вообще!

Я знаю, что сами меню работают - начиная с gvim, используя sudo gvim, который не использует глобальное меню приложения, а локальные меню, выглядит просто отлично - как gvim на любой другой платформе или на рабочем столе, то есть так, как должно.

Как заставить это поведение в Unity для обычного пользователя (т. Е. Не использовать sudo)?


4
2018-03-13 04:40


происхождения


См. Обновленный ответ, @Braiam предложил намного лучший и более простой подход. - terdon♦
И @Braiam снова сохранил этот день, см. Обновленный ответ о том, как заставить его работать графически. - terdon♦


ответы:


Это должно работать (спасибо @Braiam):

 UBUNTU_MENUPROXY=0 gvim

Запуск вышеуказанной команды с терминала запустит gvim экземпляр с его собственными меню. Итак, чтобы создать панель запуска на рабочем столе, откройте файл, называемый ~/Desktop/gvim.desktop со следующим содержанием:

    [Desktop Entry]
    Name=gvim
    Comment=Run gvim with menus
    Exec=env UBUNTU_MENUPROXY=0 gvim
    Type=Application
    Icon=/usr/share/icons/HighContrast/48x48/apps/vim.png
    StartupNotify=true
    Categories=Utility;Editor;

env команда позволяет запускать определенную команду во временно измененной среде и необходима для передачи переменной при запуске программы с использованием .desktop файл.

Если вы предпочитаете путь к командной строке, вы теперь делаете псевдоним для команды выше, добавляя эту строку к своему ~/.bashrc:

alias gvim="UBUNTU_MENUPROXY=0 gvim"

Теперь откройте новый терминал, запустите gvim и у вас будет свободное меню.


4
2018-03-13 05:39



Поскольку я фактически единственный пользователь на этой машине, я пропустил бит с редактированием / etc / sudoers, но в остальном он отлично работал. К сожалению, Ubuntu / Unity настаивает на том, чтобы «опускать» меню в различных приложениях, таких как ... - memilanuk
@memilanuk вещь sudoers - это просто, чтобы вы могли запускать ее без необходимости вводить пароль, не связанный с другими пользователями, только вы. И да, Unity далеко от моей предпочтительной среды рабочего стола. - terdon♦
Мне понравилось XFCE совсем немного в 12.04 и 12.10 ... но на этом ноутбуке (новом в то время) некоторые из ключей Fn не работали совершенно правильно в Xubuntu и по какой-то причине в Ubuntu / Unity. Вид желания вернуться к Xubuntu; попробовал установку xubuntu-desktop, но это не сработало. Я думаю, когда выйдет Xubuntu 14.04LTS, я сделаю новую установку и назову ее полезной для оставшейся жизни машины (надеюсь, еще пару лет). - memilanuk
@memilanuk не забывайте, что вы можете установить любую рабочую среду, которую хотите. Нет смысла использовать единство, если вы этого не хотите. - terdon♦
Зачем делает sudo помогите здесь? Думаю, потому что он почти очищает окружающую среду? Какая переменная среды является виновником - env -u DBUS_SESSION_BUS_ADDRESS gvim возможно? - Gilles