Est-il possible d'utiliser des fichiers .desktop pour ouvrir des fichiers pdf locaux sur des pages spécifiques avec un navigateur?

8

J'aimerais utiliser desktop filespour ouvrir des fichiers pdf sur des pages spécifiques, j'ai essayé de créer un fichier avec la syntaxe suivante:

[Desktop Entry]
Encoding=UTF-8
Name=mypdf.pdf
Type=Link
URL=file:///home/myhomefolder/mypdf.pdf#page=45
Icon=application-pdf

Lorsque j'ouvre ce fichier, le navigateur par défaut ouvre mon fichier pdf en page 1, c'est comme s'il considérait #page=45comme un commentaire, même si si je colle l'adresse file:///home/myhomefolder/mypdf.pdf#page=45directement sur le navigateur j'obtiens le résultat attendu (le pdf s'ouvre en page 45). .

J'ai réalisé que si j'utilise cette syntaxe pour les fichiers pdf sur Internet, elle fonctionne comme prévu et ouvre le pdf sur la page que j'ai prédéterminée, le problème ne concerne que les fichiers locaux. Est-il possible d'utiliser des fichiers de bureau pour ouvrir des fichiers pdf locaux sur des pages spécifiques? Ou s'agit-il d'une limitation de desktop files?

Rafael Muynarsk
la source

Réponses:

10

Utiliser l'URL?

J'ai besoin de le rechercher, mais je semble me souvenir que Type Linkest déconseillé dans un fichier .desktop. Quoi qu'il en soit, cela ne fonctionnera pas ici comme vous l'avez découvert. Encodingest obsolète à coup sûr, mais ce n'est pas le problème. De plus, xdg-openne fonctionnera pas; il ouvrira votre application par défaut pour les fichiers pdf.

Alors quoi utiliser?

Créez un fichier .desktop, en appelant votre navigateur préféré avec le fichier pdf + page comme argument. Dans votre exemple:

[Desktop Entry]
Type=Application
Name=Open pdf on page 45
Exec=firefox 'file:///home/myhomefolder/mypdf.pdf#page=45'
Icon=application-pdf

entrez la description de l'image ici

Rendez-le ensuite exécutable et double-cliquez. Si vous utilisez un autre navigateur, vous devez modifier la Exec=ligne-pour refléter cela.

Jacob Vlijm
la source
6

Certains visualiseurs de documents vous permettent de les démarrer avec un argument pointant vers la page souhaitée.

De evince --help:

  -i, --page-index=NUMBER     The page number of the document to display.

Par conséquent, votre fichier .desktop pourrait ressembler à ceci:

[Desktop Entry]
Name=mypdf.pdf page 45
Type=Link
Exec=evince --page-index=45 /home/myhomefolder/mypdf.pdf
Icon=application-pdf
Nonny Moose
la source