web-dev-qa-db-fra.com

Comment régénérer une vignette spécifique dans Nautilus?

Parfois, je recadre des PDF pour pouvoir lire une page au lieu de deux pages numérisées. Toutefois, Nautilus conserve une ancienne vignette montrant l’ancienne page de couverture.

Je sais que je peux supprimer le dossier des vignettes masquées, mais j'aimerais savoir comment je peux régénérer niquement une vignette spécifique. F5 n'aide pas.

9
Ed Villegas

Selon la documentation de freedesktop Thumbnail Managing Standard . Vous pouvez forcer Nautilus à recréer la vignette si mtime (heure de modification) dans la vignette est inférieur à mtime dans le fichier d'origine.

  1. Détecter les modifications

Une chose importante est de s'assurer que la vignette affiche les mêmes informations que l'original, uniquement dans une version réduite. Pour rendre cela possible, nous utilisons l'heure de modification stockée dans la clé 'Thumb :: MTime' requise et vérifions si elle est égale à l'heure de modification actuelle de l'original. Sinon, nous devons recréer la vignette.

Exemple 2. Algorithme pour vérifier les modifications.

if (file.mtime! = thumb.MTime) {recreate_thumbnail (); }

Il ne suffit pas d'effectuer une vérification fichier.mtime> thumb.MTime. Si l'utilisateur déplace> un autre fichier sur l'original, où mtime change mais est en fait inférieur à> la vignette stockée mtime, nous ne reconnaîtrons pas cette modification.

Afin de réaliser cela ... vous pouvez essayer avec un peu Nautilus-Script de régler l'heure dans le fichier d'origine sur l'heure actuelle avec la commande touch .

1) Création du script. Ouvrir une fenêtre de terminal Ctrl+Alt+T et type:

Pour Ubuntu 12.04 & 12.10

  • nano ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail

Pour Ubuntu 13.04 et plus

  • nano ~/.local/share/nautilus/scripts/Regenerate-Thumbnail

2) Le contenu du script.

#!/bin/bash

BAKIFS=$IFS
IFS=$'\n'

for FILE in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
      touch -m "$FILE"
done

IFS=$BAKIFS

Pour enregistrer les modifications dans nano .. Ctrl+O,Enter ensuite Ctrl+X.

3) Pour rendre le script exécutable.

Pour Ubuntu 12.04 & 12.10

  • chmod +x ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail

Pour Ubuntu 13.04 et plus

  • chmod +x ~/.local/share/nautilus/scripts/Regenerate-Thumbnail

4) Pour tester le script, ouvrez Nautilus, sélectionnez un fichier, cliquez avec le bouton droit de la souris et cliquez sur . Scripts> Regenerate-Thumbnail .

enter image description here

enter image description here

enter image description here

enter image description here

J'espère que cela t'aides.

8
Roman Raguet

Je sais que c’est une vieille question, mais ... parfois les vignettes restent bloquées et aucune astuce avec touch -m ou mv ne permet de la régénérer.

Écrivez ce script simple (merci à cette réponse ), appelons-le find-gnome-thumbnail:

#! /bin/bash 
#
fn=$(echo -n "$1" | md5sum | awk '{print $1}')
find $HOME/.cache/ -name "$fn*" 2> /dev/null

et alimentez-le avec le nom canonique du fichier dont vous souhaitez déterminer l'emplacement de la vignette. La meilleure façon de faire est de sélectionner le fichier dans Nautilus. ctrlC, et dans un terminal, écrivez find-gnome-thumbnail ' (avec l’espace et le guillemet simple d’ouverture) et ensuite shiftctrlV; ajoutez la citation de clôture et vous obtiendrez quelque chose comme ceci:

 % ./find-gnome-thumbnail 'file:///home/romano/tmp/0101_IM_3026506.pdf' 
/home/romano/.cache/thumbnails/large/d090cf90d2ac3f8127f62043f06b66df.png

Maintenant, vous pouvez supprimer la vignette incriminée et elle sera régénérée (appuyez sur F5 si cela ne se produit pas seul). L'astuce copier-coller prend en charge les conversions de caractères étranges:

 % ./find-gnome-thumbnail 'file:///home/romano/tmp/lalla%20(copy).pdf'
 /home/romano/.cache/thumbnails/large/28864dd40fab6d4982e1b103365574da.png

Parfois, le script échoue si vous renommez le fichier avec mv, je ne sais pas pourquoi --- mais c'est correct la plupart du temps. De plus, la suppression manuelle de la vignette ne la régénère pas immédiatement --- encore une fois, je suis perdue ici.

4
Rmano

J'ai un script que j'utilise (auteur inconnu) appelé Auto Thumbnailer qui fonctionne très bien pour cela. Je l'ai eu dans un paquet de scripts que j'ai obtenu ici

et installé dans/usr/share/nautilus-scripts/J'ai également installé le gestionnaire de scripts Nautilus afin de ne pas avoir à les voir tous dans le menu de scripts lorsque je clique avec le bouton droit de la souris sur une icône, uniquement celles que j'utilise.

2
Elder Geek