Czy można używać plików .desktop do otwierania lokalnych plików pdf na określonych stronach za pomocą przeglądarki?

8

Chciałbym użyć desktop filesdo otwarcia plików pdf na określonych stronach, próbowałem utworzyć plik o następującej składni:

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

Kiedy otwieram ten plik, domyślna przeglądarka otwiera mój plik pdf na stronie 1, wygląda to tak, jakby uważał to za #page=45komentarz, nawet jeśli wkleję adres file:///home/myhomefolder/mypdf.pdf#page=45bezpośrednio w przeglądarce, otrzymuję oczekiwany wynik (pdf otwiera się na stronie 45). .

Uświadomiłem sobie, że jeśli użyję tej składni do plików pdf w Internecie, będzie działać zgodnie z oczekiwaniami i otworzy pdf na stronie, którą wcześniej ustaliłem, problem dotyczy tylko plików lokalnych. Czy można używać plików na pulpicie do otwierania lokalnych plików pdf na określonych stronach? Czy jest to ograniczenie desktop files?

Rafael Muynarsk
źródło

Odpowiedzi:

10

Używasz adresu URL?

Muszę to sprawdzić, ale chyba pamiętam, że Type Linkjest przestarzały w pliku .desktop. W każdym razie nie zadziała tutaj, jak się dowiedziałeś. Encodingjest z pewnością przestarzałe, ale nie o to chodzi. Co więcej, xdg-opennie będzie działać; otworzy twoją domyślną aplikację do plików pdf.

Więc czego użyć?

Utwórz plik .desktop, wywołując preferowaną przeglądarkę z plikiem pdf + stroną jako argumentem. W twoim przykładzie:

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

wprowadź opis zdjęcia tutaj

Następnie uczyń go wykonywalnym i kliknij dwukrotnie. Jeśli używasz innej przeglądarki, musisz zmienić linię, Exec=aby to odzwierciedlić.

Jacob Vlijm
źródło
6

Niektóre przeglądarki dokumentów pozwalają na uruchomienie ich z argumentem wskazującym na żądaną stronę.

Od evince --help:

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

Dlatego plik .desktop może wyglądać następująco:

[Desktop Entry]
Name=mypdf.pdf page 45
Type=Link
Exec=evince --page-index=45 /home/myhomefolder/mypdf.pdf
Icon=application-pdf
Nonny Moose
źródło