¿Cómo creo un acceso directo de programa para un comando en Ubuntu 12.04 LTS?

9

Recuerdo que podía hacer eso en una versión anterior de Ubuntu, pero estoy perdido en Ubuntu 12.04.

Quiero agregar un elemento en la barra de inicio o en el escritorio, que al hacer doble clic ejecuta el siguiente comando, por ejemplo:

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

En MS Windows, quiero crear un atajo de programa con parámetros personalizados. También sería bueno si también pudiera ejecutar el comando escribiendo "Emacs XYZ" en Launcher Search y seleccionando el elemento encontrado. Todo lo que es posible en Windows 7 y cómo hacerlo se descubre fácilmente haciendo clic derecho en varias cosas.

Como solución alternativa, hice un script ejecutable "Emacs XYZ.sh" que contiene el comando, y creé un enlace al script (arrastrando y presionando Alt) en el escritorio. Pero esta solución está incompleta porque el enlace no se puede arrastrar a la barra de inicio, y cuando hago doble clic en el enlace, Ubuntu siempre pregunta

¿Desea ejecutar "Link to Emacs XYZ.sh" o mostrar su contenido?

convirtiéndolo en dos pasos para ejecutar el comando. Y cuando busco "Emacs XYZ" en Launcher Search y selecciono el elemento, simplemente abre el script con gedit, en lugar de ejecutar el script. Además, el icono de visualización para el script no es el icono de Emacs.

Jisang Yoo
fuente
¿Intentaste algo como esto? - askubuntu.com/a/66918/25798
jokerdino

Respuestas:

9

Me gustaría utilizar alacarte : /usr/bin/alacartepara construir una entrada de menú.

Luego, en alacarte, en la sección donde va el comando, usaría un emulador de terminal para abrir emacs.

Por ejemplo: terminator -x htopahora se iniciará htopen una ventana de terminador. O si prefieres quedarte gnome-terminal, entonces sería gnome-terminal -x htop.

Una vez que se agrega esto, puede encontrarlo en la búsqueda y agregarlo a su barra de inicio en Unity.

terminator y gnome-terminal tienen otros indicadores (como -xin terminator -x htop) que podrían hacer la tarea mejor.

Aquí está mi entrada de menú para un programa llamado MOC que agregué con alacarte, que me gusta usar para un programa de audio. En su lugar, utilicé el indicador -e con terminador debido al hecho de que no necesitaba transmitir ningún otro argumento con el comando.

Dennis Andrew Gutowski
fuente
10

Estaba leyendo y probando muchas cosas y luego encontré https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles que explica todo. Basado en eso, aquí viene una respuesta propia.

En esta respuesta, demostraré:

  • cómo mostrar los detalles de un atajo de programa
  • cómo modificar un atajo de programa
  • cómo crear un nuevo acceso directo de programa que ejecuta un comando
  • cómo agregar un atajo de programa a algún lugar para que aparezca en Launcher Search (Por Launcher Search, me refiero a la interfaz de búsqueda que aparece cuando haces clic en el ícono de inicio de Dash a la izquierda a la derecha o al presionar la tecla de Windows).

Prerrequisitos:

  • Familiaridad con los comandos cd y ls

Terminal abierta Cd a / usr / share / aplicaciones y visualice el contenido de la carpeta con ls, también visualice la carpeta con el explorador de archivos predeterminado usando xdg-open:

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

lsmuestra archivos con .desktopextensión. Estos archivos son archivos de texto y su contenido se puede ver con gedit, por ejemplo ingresando:

gedit gcalctool.desktop &

Cada .desktoparchivo en la carpeta es un acceso directo del programa y el explorador de archivos los muestra como accesos directos del programa en lugar de mostrar sus nombres de archivo reales. Qué atajos de programa pertenecen a qué archivos se pueden descubrir con grep: por ejemplo, para saber qué archivo es para el Mapa de caracteres, ingrese:

grep -Fi 'character map' *.desktop

lo que mostrará que corresponde al archivo gucharmap.desktop.

Para editar el acceso directo, ábralo con gksudo gedit:

gksudo gedit gucharmap.desktop &

Para crear un nuevo acceso directo, por ejemplo, para crear un acceso directo que ejecute el siguiente comando:

python -i -c 'from math import *'

entrar:

gksudo gedit gcalctool.desktop my-calc.desktop &

gcalctool.desktopes el archivo de acceso directo ya existente para Calculator, y my-calc.desktopes un nuevo nombre de archivo que aún no existe. El uso de gedit, copiar el contenido de gcalctool.desktopa my-calc.desktopy luego modificar el contenido de my-calc.desktop, y guardar.

contenido de 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

contenido de my-calc.desktop (campos modificados: Nombre, Comentario, Exec, Terminal):

[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;

Ahora el icono 'Mi calculadora' debería aparecer en la ventana del explorador de archivos abierta con xdg-open .. Hacer doble clic en él debería abrir una ventana de terminal con python -i -c 'from math import *'run. También puede ejecutarlo desde Launcher Search buscando 'Mi calculadora'. Puede arrastrar el icono (en la ventana del explorador de archivos) a un lugar vacío en la barra de inicio a la izquierda (la barra de tareas) para tenerlo allí. Si arrastra el icono al escritorio, Ubuntu dirá

Error al mover "my-calc.desktop" ... Error al mover el archivo: permiso denegado.

En su lugar, presione Alt mientras lo arrastra al escritorio, Ubuntu mostrará un menú: 'Mover aquí', 'Copiar aquí' y 'Enlace aquí', seleccione 'Copiar aquí', el acceso directo se copiará al escritorio.

Para poder eliminar un acceso directo en / usr / share / aplicaciones, ingrese:

gksudo xdg-open /usr/share/applications &

Probablemente sea bueno eliminar solo los atajos que haya hecho y dejar otros intactos.

Si no puede encontrar algo /usr/share/applicationsy aún así aparece en Launcher Search, probablemente esté en~/.local/share/applications/

Otras lecturas:

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

Jisang Yoo
fuente
2

Aquí está la forma más fácil que he encontrado:

  1. Inicie su programa (los programas en ejecución aparecen en el iniciador)
  2. Haga clic con el botón derecho en el ícono en el iniciador y seleccione 'bloquear al iniciador'

Si el enlace no funciona, cden /usr/share/applicationsy luego edite el archivo que coincida con su aplicación (por ejemplo theProgramYouWant.desktop, simplemente cambie el Exec=punto para que ejecute el programa).

MattC
fuente
0

Esta es una operación de arrastrar y soltar en versiones recientes. Agregue el comando como un elemento nuevo en la GUI de la aplicación Menú principal (alacarte). Luego busque el título del comando, haga clic y arrastre el icono al iniciador.

usuario204253
fuente
0

Según la respuesta de Dennis Andrew Gutowski, podría agregar el programa de acceso directo dentro del árbol de aplicaciones, como otro recurso compartido adicional.

También puede agregar el iniciador de accesos directos creado en el applet junto a "Aplicaciones", un iniciador rápido.

Arrastrar y soltar simple. Arrastre el iniciador de acceso directo desde el árbol "Aplicaciones". Colóquelo junto a "Aplicaciones".

adesst
fuente