web-dev-qa-db-fra.com

Lancement de mpv à partir d'une entrée .desktop avec le presse-papiers comme argument

J'essaye de faire une entrée de sous-menu sur un fichier d'application .desktop qui lance une adresse youtube avec mpv. L'URL YouTube est copiée depuis le presse-papiers. À l'intérieur de gnome-terminal, cela fonctionne bien:

xclip -o | xargs mpv

Mais si je fais une action .desktop comme celle-ci:

[Desktop Action mpv]
Name=mpv clipboard
Comment=Play the url on the clipboard with mpv
Exec=xclip -o | xargs mpv

Ça ne marche pas. J'ai essayé de mettre gnome-terminal -x avant, mais cela ne fonctionne toujours pas. Comment ceci peut être fait?

2
B Jog

Un pipeline est une fonctionnalité Shell et le lancement de .desktop n'implique pas de Shell. Vous pouvez utiliser quelque chose comme:

Exec=sh -c 'xclip -o | xargs mpv'

Ou (selon le contenu du presse-papiers):

Exec=sh -c 'mpv "$(xclip -o)"'

Ou placez la commande dans un fichier de script exécutable quelque part et utilisez Exec=/path/to/script.

1
muru