Преди няколко часа приключи нещо, което започнах някъде преди около девет месеца. Досега бях IT Expert, от днес вече мога с чиста съвест да се наричам IT Architect. Има разлика с този от Матрицата, обаче 😉 Не, че досега не го играех и такъв като се наложи, но вече е официално. Това само на пръв поглед изглежда, че е казано с облекчение. На практика acceleration програмата ми приключи, но тепърва започва работата, която не че досега ми бе особено малко. Също и акредитация и сертификация за нагоре ако реша. Утре ми предстои среща с мениджмънта на ниво Централна и Източна Европа и летя обратно за България.

Днес в цялата лудница се оказа, че има и ядове около Creative Commons – България, заради което не можем да си позволим да не стартираме и open-culture.net, което пък форсира някак пускането му. Въобще веселба. Но ще се преборим до понеделник всякак. Момците работят здраво! 🙂

Хубавата новина е, че Иван Попов е предоставил почти всичките си неща, ако не и всичките под CC. Лошата е, че бяха във форматиран txt [dos] формат и се наложиха гимнастики. Всъщност проблемът беше как да се зачисти края на ред на всеки екранен ред, a да се запазят параграфите. Сигурно има и по-хитър начин, но Maniax ми подсказа идея, която ползвах като груб хак, който свърши работа.

В общи линии идеята е следната. Трябва да се конвертира файла с unix-ов край на ред (end-of-line EOL). Това е лесно:

dos2unix $filename

След това в конвертирания файл се сменят 4 последователни интервала (така започва всеки параграф – с 5 последователни интервала – в друг случай може да е само с два или три) с някакъв странен знак, който не се среща в текста като вертикална черта например. Идеята е така да се запазят параграфите.

sed -e ‘s/    /|/g’ $filename > tmp.file

Зачистват се символите за край на ред, от които искаме да се отървем. Всъщност подменяме ги с интервал:

cat tmp.file | tr -s ‘\n’ ‘ ‘ > $filename

Заменят се вертикалните черти с нови символи за край на ред, защото там трябва да ги има и затова всъщност вкарахме чертите:

sed -e ‘s/|/\n/g’ $filename > tmp.file

И накрая файла се конвертира до unicode:

iconv -f cp1251 -t utf8 tmp.file > $filename

Остава това да се подреди в един скрипт и да се изпълни за всички файлове в някоя работна директория, в която се изсипват файловете за конвертиране. Със сигурност има и по-елегантно решение, но така и не открих готово такова за 2-3 минути с Google, а със сигурност това работи и може да потрябва някому.

А, да. Сигурно не е работа на новопокръстени IT architect-и да пишат скриптове, ама само заради свободната култура ;-P