9

Я помню, что мог сделать это в более старой версии Ubuntu, но я потерян в Ubuntu 12.04.

Я хочу добавить элемент на панели запуска или на рабочем столе, который при двойном щелчке запускает следующую команду, например:

emacs -q --some-other-options --load ~/xyz.el

В MS Windows говорят, я хочу создать ярлык программы с настроенными параметрами. Было бы также неплохо, если бы я мог запустить команду, набрав "Emacs XYZ" в Launcher Search и выбрав найденный элемент. Все, что возможно в Windows 7 и как это сделать, легко узнать, щелкнув правой кнопкой мыши по различным вещам.

В качестве обходного пути я создал исполняемый скрипт «Emacs XYZ.sh», содержащий команду, и создал ссылку на скрипт (путем перетаскивания при нажатии Alt) на рабочем столе. Но этот обходной путь неполон, потому что ссылку нельзя перетащить на панель запуска, и когда я дважды щелкаю по ссылке, Ubuntu всегда спрашивает

Вы хотите запустить "Ссылка на Emacs XYZ.sh" или отобразить его содержимое?

сделать два шага для запуска команды. И когда я ищу "Emacs XYZ" в Launcher Search и выбираю элемент, он просто открывает скрипт с помощью gedit, вместо того, чтобы запускать скрипт. Кроме того, значок дисплея для скрипта не является значком Emacs.

5 ответов5

10

Я читал и пробовал много вещей, а затем я нашел https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles, в котором все объясняется. Исходя из этого, здесь приходит самоответ.

В этом ответе я продемонстрирую:

  • как отобразить детали ярлыка программы
  • как изменить ярлык программы
  • как создать новый ярлык программы, которая запускает команду
  • как добавить ярлык программы в какое-то место, чтобы оно появлялось в Launcher Search (под «Launcher Search» я подразумеваю интерфейс поиска, который появляется, когда вы нажимаете на значок Dash home слева или нажимаете клавишу Windows.)

Предпосылки:

  • Знакомство с командами cd и ls

Откройте Терминал. Перейдите в /usr /share / Applications и отобразите содержимое папки с помощью ls, а также отобразите папку с файловым браузером по умолчанию, используя xdg-open:

cd /usr/share/applications
ls
xdg-open . &

ls показывает файлы с расширением .desktop . Эти файлы являются текстовыми, и их содержимое можно просмотреть с помощью gedit, например, введя:

gedit gcalctool.desktop &

Каждый файл .desktop в папке представляет собой ярлык программы, и обозреватель файлов отображает их как ярлыки программ, а не отображает их фактические имена файлов. Какие ярлыки программ принадлежат, какие файлы могут быть обнаружены с помощью grep: например, чтобы узнать, что это за файл символов, введите:

grep -Fi 'character map' *.desktop

который покажет, что он соответствует файлу gucharmap.desktop .

Чтобы отредактировать ярлык, откройте его с помощью gksudo gedit:

gksudo gedit gucharmap.desktop &

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

python -i -c 'from math import *'

войти:

gksudo gedit gcalctool.desktop my-calc.desktop &

gcalctool.desktop - это уже существующий файл ярлыков для Калькулятора, а my-calc.desktop - это новое имя файла, которого еще не существует. Используя gedit, скопируйте содержимое gcalctool.desktop в my-calc.desktop затем измените содержимое my-calc.desktop и сохраните.

содержание gcalctool.desktop:

[Desktop Entry]
Name=Calculator
Comment=Perform arithmetic, scientific or financial calculations
Exec=gcalctool
Icon=accessories-calculator
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Utility;Calculator;
X-GNOME-DocPath=gcalctool/gcalctool.xml
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gcalctool
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-OtherBinaries=gnome-calculator
X-Ubuntu-Gettext-Domain=gcalctool

содержимое my-calc.desktop (измененные поля: Имя, Комментарий, Exec, Терминал):

[Desktop Entry]
Name=My Calculator
Comment=Perform calculations with Python
Exec=python -i -c 'from math import *'
Icon=accessories-calculator
Terminal=true
Type=Application
StartupNotify=true
Categories=Utility;Calculator;

Теперь значок «Мой калькулятор» должен появиться в окне браузера файлов, открытом с помощью xdg-open . , Двойной щелчок по нему должен открыть окно терминала с python -i -c 'from math import *' . Вы также можете запустить его из Launcher Search, выполнив поиск «Мой калькулятор». Вы можете перетащить значок (в окне браузера файлов) в пустое место на панели запуска слева (на панели задач), чтобы иметь его там. Если вы перетащите значок на рабочий стол, Ubuntu скажет

Ошибка при перемещении "my-calc.desktop" ... Ошибка при перемещении файла: разрешение отклонено.

Вместо этого нажмите Alt при перетаскивании его на рабочий стол, Ubuntu отобразит меню: «Переместить сюда», «Скопировать сюда» и «Ссылка здесь», выбрать «Скопировать здесь», ярлык будет скопирован на рабочий стол.

Чтобы иметь возможность удалить ярлык в /usr /share / Applications, введите:

gksudo xdg-open /usr/share/applications &

Вероятно, будет полезно удалить только те ярлыки, которые вы создали, и оставить другие нетронутыми.

Если вы не можете найти что-то в /usr/share/applications и все же это появляется из Launcher Search, это, вероятно, в ~/.local/share/applications/

Дальнейшее чтение:

https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles

9

Я бы использовал alacarte:/usr/bin/alacarte для создания пункта меню.

Затем в alacarte, в разделе, где идет команда, я бы использовал эмулятор терминала, чтобы открыть emacs.

Для экземпляра: terminator -x htop теперь будет запускать htop в окне терминатора. Или, если вы предпочитаете остаться с gnome-terminal , то это будет gnome-terminal -x htop .

Как только это будет добавлено, вы сможете найти его в поиске и добавить в панель запуска в Unity.

У терминатора и gnome-терминала есть другие флаги (например, -x в terminator -x htop), которые могут лучше выполнять задачу.

Вот мой пункт меню для программы под названием MOC, которую я добавил с alacarte, которую я люблю использовать для аудиопрограммы. Вместо этого я использовал флаг -e с терминатором, потому что мне не нужно было передавать другие аргументы с командой.

2

Вот самый простой способ, который я нашел:

  1. Запустите вашу программу (запущенные программы отображаются в панели запуска)
  2. Щелкните правой кнопкой мыши значок в панели запуска и выберите «заблокировать в панели запуска»

Если ссылка не работает, cd в /usr/share/applications и отредактируйте файл, соответствующий вашему приложению (например, theProgramYouWant.desktop , затем просто измените Exec= чтобы он указывал на исполняемый файл для программы).

0

Основываясь на ответе Денниса Эндрю Гутовски, вы можете добавить ярлык программы в дерево приложений в качестве еще одного дополнительного ресурса.

Вы также можете добавить созданный ярлык запуска в апплет рядом с "Приложения", быстрый запуск.

Простое перетаскивание. Перетащите панель запуска ярлыков из дерева "Приложения". Оставьте это рядом с "Приложения".

0

Это операция перетаскивания в последних выпусках. Добавьте команду в качестве нового элемента в графическом интерфейсе приложения Главного меню (alacarte). Затем найдите заголовок команды, щелкните и перетащите значок на панель запуска.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .