Как восстановить определенный эскиз в Nautilus?

Иногда я обрезаю PDF-файлы, чтобы получить оттиск на одной странице вместо отсканированных двух страниц. Тем не менее, Наутилус сохраняет старую миниатюру, показывающую первую полосу.

Я знаю, что могу удалить скрытую папку с миниатюрами, но я хотел бы знать, как я могу восстановить только одну конкретную миниатюру. F5 не помогает.

9
задан 1 May 2014 в 06:55

4 ответа

Согласно freedesktop Миниатюре документации Руководящий Стандарт. Можно вынудить наутилус воссоздать миниатюру, если mtime (время изменения) в миниатюре ниже, чем mtime в исходном файле.

  1. Обнаружьте модификации

Одна важная вещь состоит в том, чтобы гарантировать, что изображение миниатюр отображает ту же информацию, чем оригинал, только в уменьшенной масштаб версии. Для создания этого возможным, мы используем время изменения, сохраненное в необходимом 'Ползунке:: MTime' ключ и проверка, если это равно текущее время изменения оригинала. Если не мы должны воссоздать миниатюру.

Пример 2. Алгоритм для проверки на модификацию.

если (file.mtime! = ползунок. MTime) {recreate_thumbnail ();}

Не достаточно сделать file.mtime> ползунок. Проверка MTime. Если пользователь перемещается> другой файл через оригинал, где mtime изменяется, но на самом деле ниже, чем>, миниатюра сохранила mtime, мы не распознаем эту модификацию.

Для достижения этого... можно попытаться небольшим Сценарием Наутилуса установить mtime в исходном файле к текущему времени с сенсорной командой.

1) Создание сценария. Откройте Окно терминала Ctrl+Alt+T и тип:

Для Ubuntu 12.04 и 12.10

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

Для Ubuntu 13.04 и выше

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

2) Содержание сценария.

#!/bin/bash

BAKIFS=$IFS
IFS=$'\n'

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

IFS=$BAKIFS

Сохранить изменения в нано.. Ctrl+O, Введите затем Ctrl+X.

3) Сделать исполняемый файл сценария.

Для Ubuntu 12.04 и 12.10

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

Для Ubuntu 13.04 и выше

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

4) Для тестирования сценария, можно открыть наутилус, выбрать файл (файлы), щелкнуть правой кнопкой и перейти к Сценариям> Повторно-создавать-миниатюра.

enter image description here

enter image description here

enter image description here

enter image description here

Надеюсь, это поможет.

8
ответ дан 1 May 2014 в 06:55

У меня есть сценарий, который я использую (автор неизвестен) названный Автоматическим Thumbnailer, который хорошо работает для этого. Я получил его в пакете сценариев, которые я получил здесь

и установил в/usr/share/nautilus-scripts/мне также Установленный менеджер по сценариям Наутилуса так, чтобы я не должен был видеть их всех в меню сценариев, когда я щелкаю правой кнопкой по значку, просто те я использую.

0
ответ дан 1 May 2014 в 06:55

Я знаю, что это - старый вопрос, но... когда-то миниатюры застревают, и никакой прием с touch -m или mv не заставляет его повторно создать.

Запись этот простой сценарий (спасибо к этому ответу ), давайте назовем его find-gnome-thumbnail:

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

и канал это с каноническим именем файла, которого Вы хотите определить местоположение миниатюры. Лучший способ сделать это должно выбрать файл в наутилусе, сделать ctrl C , и в терминальной записи find-gnome-thumbnail ' (с пространством и вводной одинарной кавычкой) и после этого сдвиг ctrl V ; добавьте заключительную кавычку, и у Вас будет что-то вроде этого:

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

Теперь можно удалить незаконную миниатюру, и она будет повторно создана (нажмите F5, если этого не происходит одно). Прием вставки копии заботится о странных преобразованиях символов:

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

Когда-то сценарий перестал работать при переименовании файла с mv я не знаю, почему---, но все в порядке большинство времен. Также удаление миниатюры вручную сразу не повторно создает его---снова, я в замешательстве здесь.

4
ответ дан 1 May 2014 в 06:55
  • 1
    удалите свой старый ответ перед получением большего количества downvotes на нем этот ответ лучше. – Mark Kirby 4 November 2015 в 23:00

Упрощенный ответ (на основе @Roman Raguet)

  1. Открыть терминал
  2. Перейдите в папку, где находятся ваши файлы, например, / home / me / myimages
  3. Выполните touch -m

    • Либо для одного файла, например, touch -m myfile.jpg
    • , либо для всех файлов, touch -m *

Теперь эскизы должен быть восстановлен в вашем наутилусе.

1
ответ дан 3 December 2019 в 16:00

Другие вопросы по тегам:

Похожие вопросы: