Архив рубрики: linux

Переключение окон в mc

Midnight Commаnder позволяет переключаться между панелями и окнами редатора и просмотра — в меню F9 → C̲ommand есть пункт Screen list̲ M-` — эта же клавиатурная команда работает и в редакторе mcedit (хотя в меню там нет такого пункта), и в просмотрщике (хотя там вообще нет меню). Сочетания клавиш LWin+` (точнее, Meta+`) и LAlt+` третий гном по умолчанию использует для переключения окнами одного приложения (хотя некоторые приложения поддерживают ещё и традиционное Ctrl+Tab), так что мне в терминале доступен лишь один способ ввести M-` — нажать и отпустить по очереди Esc и `

В командной строке эти клавиши не работают — для возврата к синим панелям оттуда есть традиционное сочетание Ctrl+O.

Старый хром

Браузер Google Chrome не желает обновляться на 32-битных системах, включая всякие линуксы:

Unsupported 32-bit Linux

застрял когда-то на версии 48, и всё. Всякие сайты ругаются, но Хром обновляться не желает.

About Google Chrome 48

Выход — использовать Chromium. Он спокойно продолжает обновляться и видит те дополнения, что были поставлены в Хроме.

About Chromium 61

Чтоб не тыкать вручную — автоматическое совмещение кадров в Hugin

Под виндой для склеивания панорам есть Kolor Autopano, под линуксом — Hugin. В принципе, Хугином вполне можно пользоваться: единственное, чего в нём не было по сравнению с Автопано — автоматического поиска серий кадров, но это не критично. С остальными задачами — аккуратно совместить кадры, внося необходимые геометрические искажения и поправляя цвет, дать пользователю выбрать тип проекции и сделать панораму в нужном размере — Хугин справляется. Однако с недавних пор в нём пропала возможность автоматически находить контрольные точки для совмещения кадров — приходится указывать их вручную. На панорамах из двух-трёх кадров это ещё терпимо, но если кадров десяток и панорам — не одна, это быстро утомляет.

Причина оказалась в том, что программу autopano-sift, которая использовалась для совмещения, из доступных в Ubuntu программ убрали, а альтернативу — autopano-sift-c — не добавили.

Способ решения — поставить что-нибудь из программ совмещения, с которыми Хугин умеет работать. Мне, как перлопрограммеру, ближе способ, который сводится к установке модуля Panotools::Script, и выбору Match-n-shift в настройках Хугина (File → Preferences → Control Point Detectors) в качестве программы по умолчанию. Попробовал — работает.

Аргазинское водохранилище

Аргазинское водохранилище

Аргазинское водохранилище

Река Миасс

Иконки в меню

Кто-то альтернативно одарённый, разрабатывая третий GNOME с третьим же GTK, решил, что иконки в меню не нужны. Во всяких простых приложениях вроде проводника^W файлового менеджера или калькулятора, где менюшки усохли, а то и вовсе пропали, может, и можно без них обойтись, но в программах с классическим GUI и развесистыми меню — никак: при переезде под третий гном стало заметно труднее ориентироваться. Меня, например, пестрота в меню раздражает куда меньше, чем невозможность быстро найти нужную команду.

Попутно выяснилось, что предлагаемый во многих местах рецепт не работает:

gsettings set org.gnome.desktop.interface menus-have-icons true
No such key 'menus-have-icons'

потому что параметр org.gnome.desktop.interface.menus-have-icons пропал — dconf-editor его не показывает.

Сработал другой вариант:

gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/ButtonImages': <1>, 'Gtk/MenuImages': <1>}"

Результат — иконки вернулись на место. Попутно иконки и на кнопках появились — тоже иногда полезно.

Inkscape с иконками в меню

Перекодирование кривой кириллицы в именах зазипованных файлов

По старой ещё досовской привычке я до сих пор стараюсь избегать использования кириллицы в именах файлов. А другие люди — нет, не избегают. В итоге приходится сталкиваться с кривыми кодировками имён. Вот, например, так гномячий архиватор отображает ZIP-архив с кириллицей:

Неправильная кодировка кириллических имён файлов

Консольные инструменты — хоть unzip, хоть 7z — тоже не помогают.

Возможный способ решения — распаковать, а потом перекодировать имена:


convmv -f utf-8 -t latin1 --notest *
convmv -f cp866 -t utf-8  --notest *

При запуске без параметра --notest утилита convmv не переименовывает файлы, а только показывает, что должно получиться на выходе.

Забывчивый верстак

MySQL Workbench — графический клиент к популярной СУБД MySQL — штука хорошая. Я, пожалуй, поставил бы его на второе место среди известных мне клиентов, но в связи с тем, что самый с моей точки зрения лучший клиент — EMS Studio for MySQL — сейчас выпускается только под винду, приходится использовать всё-таки верстак воркбенч.

Среди нужных мне функций — сохранение паролей к базам данных и SSH-туннелям до них: достаточно ввести один раз, поставить галочку, что пароль должен быть сохранён, и всё — пароль сохранится в Gnome Keyring. Точнее, сохранялся в предыдущих версиях, а в 6.2 эта штука сломалась. Пишут, что в версиях 6.2.5 и 6.3.0 проблема устранена, но у меня установлена более древняя версия.

Проблема решается путём присваивания переменной окружения GNOME_KEYRING_CONTROL значения 1 — можно сделать это прямо в файле /usr/bin/mysql-workbench

#!/bin/bash

# Uncomment the following line if you're having trouble with gnome-keyring lockups.
# This will cause passwords to be stored only temporarily for the session.
#WB_NO_GNOME_KEYRING=1
export GNOME_KEYRING_CONTROL=1

/usr/bin/workbench

После этого MySQL Workbench пароли всё-таки запоминает.

Мелкими шажочками

Надоело, что под Убунту 12.04 LTS не всегда есть свежие версии софта даже в сторонних хранилищах — решил наконец-то обновить домашнюю систему прямо сейчас, не дожидаясь семнадцатого года.

Выяснил, что Убунту теперь предлагает обновляться не до следующей версии, а до ближайшей LTS-версии, что, конечно, в четыре раза лучше, чем было когда-то, но ещё в два раза медленнее, чем хотелось бы. Но делать нечего — обновляемся, как предлагают, в несколько этапов — 12.04 LTS (Precise Pangolin) → 14.04 LTS (Trusty Tahr) → 16.04 LTS (Xenial Xerus).

В ходе первого этапа у старого Гнома пропало меню, рамки окон и способность хоть что-нибудь запускать клавиатурными командами. Разбираться не стал — переключился на третий GNOME, чтоб можно было перейти к следующему этапу. Может, и останусь на третьем Гноме — на работе я уже на него перешёл.

Терминал

Быстрое переключение рабочих столов в третьем гноме

С тех пор, как я из-под Windows переехал под юниксоподобные ОС, я в оконных средах стал использовать несколько рабочих столов, число коих в конце концов дошло до шести — стол для всяких задач, для редактора, терминала, браузера, почты∕аськи∕скайпа и для графики. Естественно, что между столами я переключаюсь с помощью клавиатуры, а не мыши — так быстрее.

Когда вышел Gnome 3, в нём пропала возможность задать через графический интерфейс сочетания клавиш для переключения на конкретный стол — осталась лишь возможность переходить к соседним, что для меня не совсем удобно. Именно это и мешало переходить к третьему гному, вынуждая сидеть на втором либо на его форке MATE.

Однако, нашёлся способ — он описан на https://github.com/linuxmint/Cinnamon/issues/544 — можно нужные последовательности задать с помощью dconf-editor, настройки клавиатурных команд хранятся в org.gnome.desktop.wm.keybindings

dconf-editor

UPDATE∕20:00: оказывается, полтора года назад я на эти грабли уже наступал.

И слово было — два байта

Когда-то давно мельком заметил я, что счётчик кадров в фотоаппарате Nikon D70s какой-то странный: номер не всегда возрастает. Порывшись в фотоархиве, нашёл я пачку кадров, где номер сбрасывается, проверил:

#!/bin/sh
for file in `ls 442*jpg`
do
    echo  -n $file
    exiftool $file | grep 'Shutter Count' | cut -c33-44
done

Так и есть!

4420.jpg: 65534
4421.jpg: 65535
4422.jpg: 0
4423.jpg: 1
4424.jpg: 2
4425.jpg: 3
4426.jpg: 4
4427.jpg: 5
4428.jpg: 6
4429.jpg: 7

Выходит, счётчик всего-навсего двухбайтовый. Что же, предполагалось, что камера не может сделать больше, чем 65535 кадров? И ведь ме́ста-то в EXIF для нормального счётчика хватает — поле имеет тип LONG (32-битное беззнаковое целое), но используется лишь наполовину.

Кстати, geeqie показывает некоторые тэги, которые exiftool не отображает и среди них есть Shutter Count 1 (Exif.NikonSi01xx.ShutterCount1), в котором хранятся целые числа со значениями около 869×10⁶ (хотя есть и другие, сильно отличающиеся значения), а также поле Shutter Count 2 (Exif.NikonSi01xx.ShutterCount2), где лежат па́ры небольших целых чисел. Что это за числа — не вышло ни понять, ни нагуглить.

Атомный редактор

Пробую очередной текстовый редактор — Atom. Поначалу не удавалось его запустить — на сайте выложена версия для архитектуры amd64, а собрать из исходников не получилось (не очень-то и хотелось), однако нашёлся вариант для ленивых — PPA с поддержкой 32-битных версий убунты.

Проверка синтаксиса в редакторе Atom

Хоть, конечно, и требует напильника, но пока нравится: работает шустро, клавиатурные сочетания для основных операций с текстом по умолчанию вполне подходящие плюс можно легко скачиватьи ставить модули для функций, которых по умолчанию нет. Вот, например, модуль linter-perl позволяет проверить синтаксис перловых файлов, а svn подсвечивает изменённые строки и файлы при использовании Subversion — до полноценного клиента, правда, ещё далеко.