Как сделать файл .tcl непосредственно исполняемым из Launcher [дубликат]

Я использую Ubuntu 14.04 LTS. Я использую программу под названием ApE (редактор плазмид), которую мне нужно запускать непосредственно из Терминала, используя следующую команду:

tclsh8.5 /home/justin/ApE/AppMain.tcl 

Для удобства я хотел бы иметь возможность открывать эту программу непосредственно как исполняемый значок, встроенный в Launcher. . Я ожидаю, что должен быть простой сценарий bash, который я мог бы написать для вызова tclsh8.5, чтобы напрямую открыть файл .tcl, но я полный новичок и понятия не имею, как действовать в этом направлении. Любая помощь будет принята с благодарностью.

1
задан 4 October 2015 в 01:59

1 ответ

Вот полный процесс того, что я закончил тем, что делал;

$ sudo apt-get install gksu
$ cd /usr/share/applications
$ gksudo gedit ApE.desktop

Затем я сделал следующий .desktop файл

[Desktop Entry]
Type=Application
Name=ApE
Icon=/home/justin/ApE/ApE.png
Exec=/home/justin/ApE/AppMain.tcl %f
Version=1.0
Comment=A Plasmid Editor
GenericName=Plamid Editor
Terminal=false
X-MultipleArgs=false
Categories=Utility;
StartupWMClass=ApE
StartupNotify=true

Оттуда, я должен был изменить .tcl файл путем добавления следующей хижины к тому сценарию;

#!/usr/bin/tclsh

Затем я сделал .tcl исполняемый файл сценария;

$ cd /home/justin/ApE
$ chmod +x AppMain.tcl

Затем я проверил и установил .desktop со следующими командами;

$ cd /usr/share/applications
$ desktop-file-validate ApE.desktop
$ desktop-file-install ApE.desktop

Команда установки файла на рабочем столе добавила следующую строку к .desktop файлу;

X-Desktop-File-Install-Version=0.22

Затем я должен был сделать простое перетаскивание значка ApE в/usr/share/applications каталоге к Средству запуска Единицы, и там это было.

Однако, в то время как это поместило значок ApE в средство запуска, каждый раз, когда я нажал значок ApE, это создало значок вопросительного знака в средстве запуска для представления открытого окна. Для облегчения этого я должен был сделать значения StartupWMClass в соглашении. Таким образом, назад в терминале, я выполнил следующую команду;

$ xprop WM_CLASS

и затем нажатый открытое окно ApE, которое возвратило следующий вывод;

WM_CLASS(STRING) = "dna_window18", "Toplevel"

Таким образом, я возвратился в файл ApE.desktop;

$ cd /usr/share/applications
$ gksudo gedit ApE.desktop

и измененный StartupWMClass оценивают Верхнему уровню, давая заключительный файл ApE.desktop

[Desktop Entry]
Type=Application
Name=ApE
Icon=/home/justin/ApE/ApE.png
Exec=/home/justin/ApE/AppMain.tcl %f
Version=1.0
Comment=A Plasmid Editor
GenericName=Plamid Editor
Terminal=false
X-MultipleArgs=false
Categories=Utility;
StartupWMClass=Toplevel
StartupNotify=true
X-Desktop-File-Install-Version=0.22

И это зафиксировало его полностью.

0
ответ дан 4 October 2015 в 11:59
  • 1
    Это потребовало некоторой модификации, но работало! GOF (значение достаточно хорошего) – Hamid 2 January 2017 в 12:30

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

Похожие вопросы: