понедельник, 23 мая 2011 г.

Mirage


   Поиски легкой и не сильно навороченной софтинки для просмотра изображений привели меня к программе Mirage. Которая, надо сказать, приятно удивила, удовлетворив практически все мои запросы. Программка GTK'шная и весит всего пару сотен килобайт. Из зависимостей лишь Python, да пара библиотечек. Работает быстро, лишними функциями тоже особо не перегружена. Интерфейс позволяет отключать лишние элементы.
   Ставится программа по команде:
sudo aptitude install mirage

   Рекомендуется дополнительно установить пакет imagemagick. Он нужен для различных преобразований изображений, а так же конвертации и создании миниатюр.

   По дефолту выглядит так:


   Теперь чуть подробнее о том, что же она может:

   Помимо стандартных и не очень форматов изображений, к несомненным плюсам можно отнести возможность проигрывания gif'ок.
   Умеет выводить изображения в полноэкранном режиме с возможностью перелистывания в нем.
   Имеет режим "слайдшоу" с возможностью выбора длительности паузы перед следующей картинкой (так же доступно и в полноэкранном режиме).
   Два режима снятия скриншотов: всего рабочего стола или же отдельного окна, находящегося в данный момент под курсором мышки. Можно задать паузу перед тем, как будет сделан скриншот.
   Сохранение изображений в другом формате.
   Поворот и отражение изображений.
   Изменение размера изображения, насыщенности, а так же обрезка.
   Создание миниатюр изображений, заданного размера.
   Просмотр изображений в случайном порядке.
   4 режима при открытии нового изображения:
      Smart - если открываемое изображение меньше свободной области окна, то оно откроется в режиме 1:1. Если же размер изображения превышает доступное пространство окна, то картинка будет масштабирована к размеру окна.
      Zoom to fit mode - масштабирует все изображения к размеру окна (большие уменьшает, маленькие увеличивает).
      1:1 mode - открывает все картинки в их реальном размере.
      Last active mode - для нового изображения используется последний активный режим открытия.
   При открытии нового изображения позволяет выбирать: загружать ли только его или все файлы из этой папки (опция Load all images in current directory).
   По желанию может отображать скрытые картинки (опция Allow loading hidden files).
   Позволяет задать пользовательские действия (например, открытие картинки в Gimp или перемещение в папку с избранным).
   Гибко настраиваемый интерфейс и поведение.
   Неплохой набор хоткеев.


   Ну и куда же без глюков :) В версии 0.9.5.1 я столкнулась с неработающей функцией снятия скриншотов (в 0.9.3 такой проблемы не было). В терминале эта ошибка выглядела так:

Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/mirage.py", line 2342, in screenshot
    self.screenshot_delay = int(delay.get_text())
ValueError: invalid literal for int() with base 10: ''

В общем-то ничего страшного тут нет и легко исправляется, если у кого-то такая же проблема. Открываем с правами рута какой-нибудь текстовый редактор, например Gedit. Жмем Alt+F2 и пишем:
gksu gedit

Затем открываем в нем файл mirage.py по пути, указанному в ошибке. У меня /usr/lib/pymodules/python2.6/mirage.py. У вас может быть другая версия Питона.
Открыли и ищем в нем поиском следующие слова:
int(delay.get_text())
Целиком строка выглядит так (у меня это строка 2342):
self.screenshot_delay = int(delay.get_text())

И исправляем (delay.get_text()) на (delay.get_value())
Сохраняем и, собственно, все. Ошибка должна пропасть и скриншоты будут нормально сниматься.

   По умолчанию Mirage сохраняет скриншоты в папке /tmp/mirage-произвольный набор символов. По одному скриншоту с именем screenshot.png в каждой такой папке. Разумеется, никто не мешает после снятия скриншота сохранить его где угодно через меню File (Файл) -> Save image as... (Сохранить изображение как). Не могу сказать, что это очень быстро. Да и вообще довольно сомнительное удобство - запускать просмотрщик, чтобы сделать скриншот. Есть способы и получше ;)

Горячие клавиши для работы с программой:

F1 - Помощь
Ctrl-0 - Масштабировать к размеру окна
Ctrl-1 или 1 - Оригинальный размер изображения
Ctrl-F - Открыть каталог
Ctrl-O - Открыть изображение
Ctrl-S - Сохранить изображение
Shift-Ctrl-S - Сохранить изображение как...
F2 - Переименовать изображение
Delete - Удалить изображение
Ctrl-Q - Выход из программы
Ctrl-Left - Повернуть изображение влево
Ctrl-Right - Повернуть изображение вправо
Ctrl-H - Отразить изображение горизонтально
Ctrl-V - Отразить изображение вертикально
Ctrl-Up или +/= или Num+ - Увеличить изображение
Ctrl-Down или - или Num- - Уменьшить изображение
Home - Перейти к первому изображению в списке
End - Перейти к последнему изображению в списке
Left или Backspace или PgDown - Предыдущее изображение
Right или Space или PgUP - Следующее изображение
R - Перейти к случайному изображению в списке
F11 или Shift-Return - Переключение в полноэкранный режим и обратно
Escape - Выход из полноэкранного режима, остановка поиска изображений
F5 - Включить/Выключить режим "слайдшоу"


   Один из примеров пользовательского действия, которое будет преобразовывать изображения в формат jpg:
Идем в меню Edit (Правка) -> Custom actions -> Configure (Конфигурация).
Там добавляем новое действие и пишем в строке Command (Команда): convert %F %P%N.jpg Придумываем какое-нибудь название и задаем горячие клавиши.
Теперь по этой команде изображение будет конвертироваться в формат jpg и сохраняться с тем же именем, что у оригинала, в той же папке.

2 комментария:

  1. Советую Geeqie поглядеть. Сам искал легенькую, да подсказали эту) Она и легкая и функциональная. Помогает при отборе.

    ОтветитьУдалить
  2. Geeqie как раз и пользовалась до Миража :) Но у меня она gif-анимацию не проигрывала, по крайней мере по умолчанию. Приходилось держать еще одну смотрелку для таких файлов..

    ОтветитьУдалить