Фильтр или плагин, который заменяет специальные символы? - Фотопедия
1 голос
/ 15 ноября 2017

Мое агентство считает, что специальные символы - это плохо (так как в древности существовали проблемы совместимости между Mac и Windows). Поэтому вместо того, чтобы отправлять картинки с ключевыми словами, названиями и т. Д. В «Einstürzende Neubauten», я должен представить «Einstuerzende Neubauten». Я не хочу портить свою базу данных, а вместо этого имею скрипт или плагин постобработки, который, например, заменяет «ü» на «ue». Есть ли что-то подобное? Некоторые звонят в exiftool?

Редактировать : Я забыл упомянуть, что использую Lightroom. Так что могут быть плагины, которые уже имеют такую ​​функциональность. Метаданные Wrangler довольно хороши, но я не могу придумать, как заменить им шаблоны.

1 Ответ

5 голосов
/ 15 ноября 2017

Exiftool может сделать это с опцией -api "Filter=", но командная строка может стать длинной и грязной.

Используя ваш пример, команда будет выглядеть примерно так:
exiftool -api "Filter=s/ü/ue/g" -TagsFromFile @ -all:all DIR

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

Кроме того, если вы работаете в Windows, вам, возможно, придется добавить опцию -L для работы с символами с акцентом.


Edit: Альтернативная версия, если у вас установлен Perl.

Если установлен Perl и установлен основной Perl-код Exiftool (не исполняемый файл), можно вызвать Unicode::Normalize и использовать эту более простую команду.
perl exiftool.pl -api "filter=use Unicode::Normalize; $_= NFKD( $_ ); $_=~ s/\p{NonspacingMark}//g;" -TagsFromFile @ -all:all DIR

На основании этого ответа StackOverflow .

Единственная проблема заключается в том, что он преобразует ü в u.

Добро пожаловать на сайт Фотопедия, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...