web-dev-qa-db-fra.com

Comment faire Nautilus pour suggérer automatiquement le dossier 'Documents' pour les fichiers PDF?

Dans Ubuntu 11.10, comment puis-je configurer Nautilus de sorte que, lorsque je sélectionne "Enregistrer sous ..." sur Evince ou un autre visualiseur PDF, pour un PDF, j'ai téléchargé à l'aide du navigateur , il suggère automatiquement le dossier 'Documents' pour sauvegarder ce fichier pdf?

Pour le moment, il ne me donne que le dernier dossier utilisé pour enregistrer quelque chose auparavant. Je me souviens que 11.04 faisait exactement cela, ce qui est pratique pour garder tous les fichiers PDF dans un seul dossier.

14
719016

Pourquoi...

Dans cette réponse, je me concentre sur la preuve puisque vous avez mentionné cela comme votre application clé dans la question.

En regardant le code source, la boîte de dialogue Enregistrer sous ne définit que le nom de fichier par défaut. Comme aucun dossier n'est défini, les bibliothèques GTK3 supposent que les dossiers récemment utilisés sont les premiers à être affichés dans la boîte de dialogue.

Les applications GTK3 doivent définir explicitement le dossier dans lequel effectuer la recherche.

Personnellement, je pense que le dossier par défaut pour evince devrait être défini - en tant que tel, vous devriez le déposer sur bugzilla en tant que demande de bogue/liste de souhaits.

Comment...

Voici un moyen de forcer evince à utiliser par défaut le dossier Documents plutôt que le précédent récemment utilisé .

En résumé, la source est modifiée pour obtenir le dossier par défaut Document et le définir comme dossier par défaut pour la sauvegarde . -As dialogue.

enter image description here

installer les outils de développement de base

Sudo apt-get install devscripts build-essential fakeroot 

récupère la source

cd ~/Downloads
mkdir build
cd build
apt-get source evince
cd evince*

faire le changement

Ouvrez ev-window.c

gedit Shell/ev-window.c

Copiez et collez le texte suivant dans le fichier à la position indiquée dans l'image

const gchar *folder;
folder = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS);
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (fc),
                             folder ? folder : g_get_home_dir ());

enter image description here

Enregistrer et fermer gedit

donnez-lui un nom de paquet unique

OK, nous devons attribuer un nom unique au package pour empêcher les mises à jour du référentiel de remplacer votre package modifié.

gedit debian/changelog

maintenant ajouter +yourname à la version de première ligne et enregistrer

c'est-à-dire evince (3.2.1-0ubuntu2+fossfreedom)

construire le paquet

Sudo apt-get build-dep evince
debuild -us -uc

N.B. cela téléchargera 161 Mo de dépendances

Allez prendre un café ... et probablement un déjeuner!

cd ..
Sudo dpkg -i evince_3.2*.deb

En passant - pour éviter que cette nouvelle version d’evince ne soit mise à jour, utilisez synaptic pour épingler cette version d’evince.

9
fossfreedom

Malheureusement, en raison de la manière dont le dialogue de sélecteur de fichier a été codé dans GTK + 3.x, vous ne pouvez pas modifier ce comportement de manière cohérente.

Le sélecteur de fichier restera toujours sur les documents récents en tant qu'emplacement, sauf si l'application que vous utilisez est spécifiquement codée pour ouvrir un dossier par défaut et si la plupart des applications ne disposent pas de cette option.

Voir cette réponse: Puis-je empêcher les applications de sélectionner "Utilisés récemment" par défaut dans les boîtes de dialogue du sélecteur de fichiers?

Comme vous allez le lire, j'ai fait beaucoup d'essais et il n'y avait aucun moyen de le contourner. Je suis désolé que vous ne puissiez pas obtenir ce que vous voulez dans ce cas, mais vous pouvez signaler un bogue, et peut-être qu'ils implémenteront l'option.

4
RolandiXor

Vous pouvez utiliser Libre Office pour PDF et dans Libre Office, vous pouvez changer l'emplacement par défaut des types de fichiers et son ici ~/.libreoffice/3/user/gallery/ et dans Libre Office ses variables modifiables dans Outils -> Options -> Chemins -> Graphique.

Plugins http://www.libreoffice.org/features/extensions/

En recherchant Google et en trouvant https://superuser.com/questions/220647/executing-the-default-application-assigned-to-a-file-type-from-terminal-given AND http://www.packtpub.com/article/control-of-file-types-in-ubunt ET http://silverwav.wordpress.com/2010/21/note- ubuntu-default-folders / AND Le fichier à modifier est un fichier de configuration situé dans un dossier caché de votre dossier personnel: gedit ~/.config/user-dirs.dirs effectuez les modifications à votre guise, enregistrez et fermez. Ensuite, exécutez xdg-user-dirs-update pour refléter les modifications. Mais comment je ne sais pas mais quelque chose de tout cela est ce que je pense devrait être de cette façon possible.

"Les emplacements de sauvegarde personnalisés pourraient probablement être piratés dans Firefox car ils peuvent déjà enregistrer des actions en fonction du type de fichier.

Vous pouvez également écrire un script Shell, puis configurer Firefox pour ouvrir les types de fichiers souhaités avec ce script. Firefox téléchargera le fichier dans un répertoire temporaire et transmettra le nom du fichier au script. Le script analyse la sortie de file ${1} ou effectue une correspondance rationnelle sur le nom du fichier et effectue l'action appropriée que vous souhaitez (déplacer vers X, déplacer vers Y, etc.).

Ce niveau de préférences de type mime ne sera probablement pas une fonctionnalité de Gnome lui-même. "

BTW Libreoffice a cette possibilité https://bugs.launchpad.net/ubuntu/+source/libreoffice/+bug/8011

En outre, vous pouvez toujours enregistrer dans le même dossier, mais effectuer une vérification du dossier par un script et déplacer des fichiers de type X.

Je pense que ce serait en quelque sorte fait s'il est possible de créer un programme de lancement spécifique pour l'extension .pdf et un programme de lancement permettant de créer le dossier par défaut comme vous le souhaitez.

Comment? Je ne sais pas mais j'espère que cela vous aidera à trouver une réponse.

2
Kangarooo