пятница, декабря 25, 2009

elRTE: Наш ответ всяким там.

Добавляя онлайновый редактор контента к проекту elgrand-shop.ru, обнаружил, что в природе появился новый редактор, аналогичный CKeditor. Более сырой, это минус. Русский, это плюс. И с развитым файл-менеджером, который у СКeditor идёт как платная опция, это уже плюс-плюс.

Положил полдня на интегрирование в сайт, главным образом из-за скудной документации. Описываю, где спотыкался.

1. В документации сказано:

Создаем редактор:

бла-бла
url : 'connector/connector.php',
Последнюю строчку надо читать как
connector/php/connector.php
Коннектор работает только если положить его в www-корень. Раскурочивать этот момент не стал, пусть так. А вот скрипты на релокацию не обижаются.

Если коннектор подключен неправильно, при нажатии на кнопку файл-менеджера выскакивает алерт "error: undefined" — проверяйте этот пункт.

2. В документации нет, а в демо есть подключение скриптов
i18n/elfinder.ru.js и i18n/elrte.ru.js
— без них русский есть в морде редактора, но не в диалогах.

3. Редактор создаётся на произвольном элементе DOM (например, div), но кнопка сохранения автомагически сабмитит форму, то есть создавать его всё же лучше на textarea.

4. Каталог для загруженных файлов. Он должен быть. Его местонахождение должно быть правильно отражено в connector/php/connector.php. Он должен быть read/write на сервере, иначе кнопка загрузки файлов будет серой. В случае винды (пфи!) надо посмотреть коннектор на предмет DIRECTORY_SEPARATOR, кое-где вместо него стоит юниксовый слэш (но в УРЛах он должен быть!).

5. В конкретно этом проекте body имеет белый цвет (выворотка, пожелание), в результате в селектах редактора позиции писались белым по белому (а я гадал, куда они пропали). Лечится добавлением в elrtefinder.full.css элементу .el-select свойства color: #000000 (надо написать разработчикам, это должно там быть).

6. Это написано в доках, но мимоходом, поэтому тоже спотыкачный момент: скрипты с именем elrtefinder содержат и редактор, и файл-менеджер в одном флаконе! Не надо подключать скрипт менеджера отдельно.

Вроде всё, а вообще — куча респектов авторам, ну и ждём обновлений.

среда, декабря 23, 2009

ElGrand-Shop.ru: идёт бурная разработка сайта

После затяжного старта резко двинулся elgrand-shop.ru — мой первый настоящий проект интернет-магазина.



Настоящий — потому что проекты с рудиментарными магазинными функциями можно не считать. Игрушки.

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

Всё управление построено на AJAX. Пример: добавление ценового ряда не отходя от кассы.







Править любую цену можно прямо на листе, мимоходом, просто щёлкнув мышкой:



Магазин пишется по принципу drop-in: все обслуживающие его файлы — скрипты, шаблоны, стили — находятся в одной папке, чтобы в будущем прикрутить магазин к любому сайту можно было за 15 минут. Очень актуально, потому что продавать такую поделку можно не раз (следующий магазин уже стоит в очереди на январские каникулы).

Ах, да, ответ на неминуемый вопрос: да потому что нет нормальных решений :-) Лучше иметь своё, чем вечно биться о лимиты чужих.

Работы предстоит ещё масса: покупательский кабинет, отслеживание заказов, ещё куча более мелких вещей. Но теперь есть уверенность, что это будет сделано. Когда я впервые уяснил сложность задачи, такой уверенности у меня вовсе не было.

Собрано, как водится, с миру по нитке:
  • FCKeditor, потерявший за это время букву F;
  • jQuery с dimensions, cookie, dropshadow;
  • 960.css от 960 Grid System;
  • phpThumbLib;
  • мои собственные тулкиты, используемые во всех сайтах (и постоянно растущие: для магазина сделал, наконец, trigger_button — активирующую Аякс кнопку-самоуничтожайку, их много на скриншотах).
Grand Opening... первая половина января.

вторник, декабря 22, 2009

Helena Elange: оборот листовки дисконтной акции

Модный дом Helena Elange запускает новогоднюю акцию, в связи с чем выпускается флаер. Мне досталось сделать оборот.



Inkscape, Gimp, Separate+ — проверенная цепочка.

понедельник, декабря 21, 2009

G'MIC спасает трёх отцов русской демократии

Ситуация: надо изготовить подарочные портреты.

Условия: исходные фото — либо никакие, либо мелкие, а печатать надо А3 @ 300 dpi.

Что делать, что делать... G'MIC! Анамезонное... тьфу... анизатропное сглаживание!

Всё получилось просто замечательно, далее до и после.

Фото 1.

ДО (фрагмент)



ПОСЛЕ (фрагмент)



Пожертвовалась фотографичность, а заодно и все шумы. Фото стало рисуночным. Особенно мне нравится бородка. Прям пастель. Это уменьшено, но все результатные изображения увеличены до 300 dpi, можно представить себе, как они выглядели до фильтра.

Фото 2.

ДО (фрагмент)



ПОСЛЕ



Этот пример особенно яркий. На подбор параметров ушло с полчаса, чтобы и задавить шумы, и сохранить детали. Готовое изображение было слегка тонировано очень грубыми масками (оранжевой и синей) с гауссовым размыванием диаметром аж 140 пикселов.

Фото 3.

Это фото сразу было хорошим. Снимок профессиональный. Однако в квадратном размере 1024х1024. Немножко маловато для печати. Пришлось тоже обработать.

ДО



ПОСЛЕ



Тоже лёгкое тонирование. Я не смог подобрать параметров, сохранявших бы щетину и одновременно убиравших артефакты увеличения. Лицо получалось свежевыбритым, то есть абсолютно. Поэтому тупо наложил щетину сверху с оригинального снимка умножением, сделав её предварительно очень контрастной.

Час назад забрал из печати портреты на холсте. Вот честно... загляденье.

среда, декабря 16, 2009

Этикетка растительного масла



Черновик, отправлен на согласование. Inkscape, Gimp.

Сезонные изменения в отдельных частях рунета

Пробежался недавно... и поскользнулся.

Сайт товарищества «ТИГР», прославившего себя лозунгом «Путлер капут»:



Это сейчас, а несколько дней назад там было примерно то же, что и на странице цикла комиксов о Человеке-Грызлове, который молча поправит всё:



Что-то правда зима пришла, ребята.

среда, декабря 09, 2009

Google Maps: как сохранять состояние карты при смене страницы

Сделано только что для развивающегося проекта Прим-Поиск.

Ситуация: страница с картой, по которой посетитель может перемещаться. Сходив на другие страницы и вернувшись на карту, он видит её в дефолтном виде, а не в том, в каком покинул. Раздражает.

Задача: сделать так, чтобы состояние карты сохранялось при повторном открытии страницы.

Решение: Очевидно, через cookies с использованием jquery.cookie (плагин гуглить).

1. Выносим объявление переменной карты в глобальный скоп:

Было:

$(document).ready(function(){
var map = new GMap2(document.getElementById('map_canvas'));
. . .

Стало:

var map;
$(document).ready(function(){
map = new GMap2(document.getElementById('map_canvas'));
. . .

2. Пишем функцию сохранения центра и зума карты в куки:

function save_map() {
var center=map.getCenter();
var lng=center.lng();
var lat=center.lat();
var zoom=map.getZoom();
$.cookie("map_state", lng+"_"+lat+"_"+zoom);
}

3. Прицепляем вызов этой функции при выходе, до гугловского сборщика мусора:

Было:

onunload="if (typeof(GUnload)!='undefined') GUnload();"

Стало:

onunload="if (typeof(GUnload)!='undefined') save_map(); GUnload();"

4. Проверяем куки перед инициализацией карты и выковыриваем сохранённые значения:

var saved_state=$.cookie('map_state');
if (saved_state!=null) {
var saved_vals=saved_state.split('_');
prim = new GLatLng(parseFloat(saved_vals[1]), parseFloat(saved_vals[0]));
zoom = parseInt(saved_vals[2]);
}
else {
prim = new GLatLng(44.68,134.0);
zoom=7;
}
map.setCenter(prim, zoom);

5. Заразо, работает! :-)

вторник, декабря 08, 2009

Слова на три буквы, или ностальгическое о раскладках

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

Заметил, что самое популярное слово этого класса у меня сейчас — БзЮ :-)

БзюТакие нынче времена :-)Б.зЮ

Ну вот и Новый Год... — 2: зимняя шкурка сайта «Златы»



...Кстати, до НГ там разыгрывают по бриллианту в неделю среди обладателей билетов, выдаваемых покупателям. Натурально, золото притягивает золото :-)

среда, декабря 02, 2009

Giorgino

Посмотрел весь.

Долгая пауза.

Интересно, на какой такой успех рассчитывал Бутонна, снимая трёхчасовой (в оригинале 4) фильм, в котором он предложит зрителю детей-утопленников, людей-животных, двух повешенных, глумление над трупами, дефлорацию слабоумной и акт некрофилии?

О фильме сказать особо нечего. Все слова плоские. Он потрясающий.

Сюжет похож на тонкий лёд болота, вокруг которого всё вращается. Кажется — миновало, и тут лёд снова проламывается. Абсолютно безнадёжно. Волки обязательно придут.

Смотреть в одиночку, вечером. Ни в коем случае не в депрессии.

Думал, что Милен Фармер — это удачный проект Милен-Жанны Готье при участии Лорана Бутонна. Сейчас подозреваю, что Милен Фармер — это самое удачное из произведений Лорана Бутонна, в котором Милен-Жанна Готье послужила глиной исключительного качества.

Хочу посмотреть полную версию.

Ключевые слова сюжета на IMDB
  • Village
  • Doctor
  • Church
  • Priest
  • Dead Father
  • Countryside
  • Orphanage
  • Snow
  • Winter
  • Psychiatric Hospital
  • Dead Children
  • Shrew
  • Dead Mother
Кадры.



"It's not a dog, it is a wolf".



"...And she said, Father, what if it's pain that makes a bird sing?"



"Degrâce! Come in, Degrâce! Show yourself!"



"You bitch! You filthy bitch!"



"Why? I'll tell you why. Because she blew out the candles, that is why".



"Mr. Voli won't shoot. He's going to give me his revolver. We are going to cure him. Because he is sick."



"Don't go up there. There's nothing we can do for her now. You know there never were any wolves around here. She did it! She killed them!"



"Come back!"

Логотип сочинской Олимпиады

...ну и ушлёпище, прости господи.

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

Второе. Этот логотип — диверсия порноиндустрии на спортивной арене. Сходите на этот сайт, заранее извиняюсь за то, что вы там можете увидеть (но интересовать вас должно только лого). Ничего не смахивает на сочинский zoih?

Вот вам и источник вдохновения.

вторник, декабря 01, 2009

Ну вот и Новый Год...

...пошла группа в полосатых купальниках:

пятница, ноября 27, 2009

логоштудия: Эльгранд


Смущает некоторое сходство с «Гардиан». Наверное, надо ещё подумать.

четверг, ноября 26, 2009

Мой мини-башорг

Заносим в базу номера сертификатов для лотереи.

16:21:13) x: 1212,1208,1210,1211,1215,1160,1213,1214,1209,
1200,1216,1217,1218,1219,1220,1221,0342,1222,1223,1173,
1174,1068,1224,1092,0365,1225,1226,1227,1083,1203,1159,
1050,0228,1161,1119,1202,1204,1207,1199.

(16:25:46) x: записал все?
(16:26:18) 852138: что ты сбросила, уже в игре. Кроме последней порции, их вношу
(16:26:33) x: и еще щас будет немножко цифр
(16:27:39) x: 0728 - 0751
(16:28:08) 852138: :) действительно, немножко :)
(16:28:18) x: и еще будет чуть чуть
(16:28:26) 852138: 1-10000?
(16:28:28) 852138: :-D
(16:28:33) х: :-D нет

среда, ноября 25, 2009

вторник, ноября 24, 2009

Читательский мегадневник — 4

Из прочитанного и читаемого этой осенью.

Эжен Фромантен, «Доминик»

Единственный роман человека, чьё имя мне ничего не говорило. Нашёл случайно, прочитал с удовольствием, даже невзирая на пространные словесные пейзажи (как оказалось, основное время автор уделял живописи; потому). Психологически документально верно; чтобы это оценить, нужно побывать в похожей ситуации.

Клаус Фрицше, «Воздушный стрелок»

Мемуары человека, попавшего из школы в люфтваффе, затем — на русский фронт, и проведшего большую часть войны в лагере для военнопленных. В суховатой немецкой манере о лагерном быте, хитростях, любви, людях (в основном русских). Последняя треть книги — о жизни в ГДР (про которую я не знал ничего) и строительстве личного капитализма в стране соцлагеря. Удивительная книга, удивительный человек. И удивительная особенность нашего ума: сохранять самые лучшие, самые ностальгические воспоминания о местах, где проходила молодость, даже если это вшивый барак за ключкой.

Виктор Пелевин, «Граф Т.»

Ну как было пропустить очередной роман Виктора нашего Олегыча (кажется). Интересовался так бурно, что купил в электронном виде на Литресе аж за сто Яндекс-целковых (детализирую, потому что это была первая в моей жизни покупка текстового файла, даже без суперобложки). Что сказать... во-первых, ещё не дочитал (если честно, последние вечера два и не брался). Во-вторых, ощущение, что гражданин Пелевин, развиваясь в китайской традиции — от совершенства к упадку, — успел от великого источника всего существующего в позорную пустыню жизни отойти уже слишком далеко. Меня никак не зацепило и ничем не удивило, одни ходы вызывают зевоту, другие — досаду. Всё это читано-перечитано у того же автора многократно, и в те разы удавалось ему гораздо лучше — а может, просто восприятие было свежéе.

Ещё момент: по невнимательности я купил роман дважды, поэтому, да простят меня правообладатели (получившие своё без обмана), считаю себя вправе отдать этот текст один раз в любые руки, первому желающему: «за что уплóчено, должно быть проглочено».

пятница, ноября 20, 2009

Giorgino



Давно хотел посмотреть.
Посмотрел первые десять минут на Ютюбе, понял, что надо выкачивать. Три дня выкачивал архив из 21 части. Выкачал. Посмотрел первые 19 минут. Понял, что фильм либо очень хорош, либо гениален. Поэтому надо перегнать на DVD и смотреть нормально. To be continued...

Год.

Оказывается, всего год.

Снова о фокусе в VMware

Пытаясь обнаружить закономерность возникновения конфликта фокуса между хостовой ОС и окном консоли, обратил внимание, что неполадка начинается при выходе мышки из области, соответствующей первоначальному размеру окна консоли (которое появляется небольшим, а затем распахивается).

Симптоматическое лечение напрашивалось само: изначально открывать консоль в полном размере.

Соответствующий пункт есть в меню VMware.

Собссно, всё.

четверг, ноября 19, 2009

Проект главной страницы сайта

Срочно поучаствовал в тендере на разработку сайта, посвящённого строительству жилого дома в Находке (вот времена!).

Инкскейп, утилитарно Гимп, пять часов. Нарисовано не идеально, но для иллюстрации подхода достаточно.

вторник, ноября 17, 2009

Текущая софтверная жизнь: об Inkscape, Xorg, VMware

Об Inkscape

Скачивая 4-й пререлиз версии 0.47, обратил внимание на статистику загрузок на офсайте:

Сборка под Windows: 21,783
Под Mac OS X: 10,285
Исходники для Линуксов: 3,044 + 1,062 + 653... итог не дотягивает и до половины Мака.

«Узок круг этих революционеров, страшно далеки они от народа», — сколько лет назад зубрил, а вот всплыло же...

Об Xorg

Вышел Xorg 7.5 с поддержкой MPX. Ежедневно утром и вечером пробиваю репу Дебиана в ожидании свежих пакетов. Уже приготовил вторую мышку, подумываю о трансплантации ещё пары рук.

О VMware

После обновления до ядра 2.6.30 и Гнома 2.8 старый добрый сервер VMware 2.0 заломало: консоль смертным боем бьётся с Х за обладание фокусом, силы равны. Пришлось выкачать самый свежий VMware 2.0.2. По доброй традиции (иначе на моей памяти не бывало, а это уже далеко не первый сервер VMware на моей памяти) модули ядра штатно не собрались. По доброй же традиции нашёл патч на форуме коммьюнити, волшебно всё починивший. Вот интересно: сделать такую софтину ума и сил хватает, а учесть патчи в своём же форуме — это никак?

В новом сервере проблема фокуса решена условно. Теперь нужно явно отдать фокус Иксам (Ctrl+Alt). Можно и не отдавать, но это способно поломать ввод в самих Иксах (уже наблюдал), после чего война за фокус вспыхнет по-старому даже после перезагрузки гостевой ОС. Если это произошло, надо остановить гостевую ОС и рестартнуть VMware (/etc/init.d/vmware restart).

Захват фокуса консолью вроде бы происходит автоматически более-менее гладко, но я теперь дую на воду (Ctrl-G).

суббота, октября 31, 2009

Плету домашнюю сеть

Надоело путаться в проводах и перетыкать модем туда, где он всего нужнее в данный момент. Замутил такое:



Первоначально вместо хаба планировался готовый роутер из кладовки, но он оказался стухшим. Хуже того, стухла и PCMCIA-карточка Wi-Fi, спрятанная у него в нутре. Поэтому без проволоки между ноутбуком и хабом пока что не обойтись.

Попутно приходится преодолевать сопротивление домашней партии зелёных, озабоченной раскидыванием радиосетки в квартирном эфире. И это волнует людей, носящих на себе постоянно включенный радиопередатчик с радиусом действия 30 километров!

Update. Хаб тоже оказался нерабочим. Карточку PCMCIA WiFi на чипсете Prism2 подогнали добрые люди. Вся сеть теперь строится на радио с единственным проводным соединением между ноутбуком и модемом. PPPoE на ноутбуке настроено, Host AP настроена, DHCP настроен (dnsmasq), клиенты WiFi к точке доступа коннектятся, пинг есть. Осталось раздать интернет жаждущим клиентам.

Баннер линуксграфикса

...собственно, здесь он, чтобы дать ссылку в форуме на linuxgraphics.ru

среда, октября 28, 2009

Inkscape: спасение заглюченного файла

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

После сегфолта все попытки открыть сохранённый прежде файл (бог уж с ними, с несохранёнными изменениями) приводили только к новым сегфолтам.

Перспектива потерять двухчасовой труд настолько расстроила, что решил, что утро вечера мудренее.

За ночь сообразил открыть SVG в текстовом файле и ручками почекрыжить фильтры эффектов, на которые грешил.

Почекрыжил, не помогло.

Нашёл и удалил ноды path, к которым применялись эффекты. После этого рисунок открылся. Потеряна пара контуров, но это мелочи жизни.

Думаю, контуры не виноваты. Всё-таки грешу на фильтры эффектов:

1) к контурам применял эффект деформации по обтекающей, который в общем работал, но как-то нелогично, и только нелогичными же способами удалось получить желаемую деформацию;

2) сегфолтнуло при применении фильтра Фаска - Сверкающий металл с последующей правкой параметров фильтра.

В общем, всевозможные фильтры по-прежнему зыбкая почва. Одно радует: случись это с какой-нибудь корелдрой, запорченный файл было бы уже не спасти. Всё-таки открытый (и читабельный!) формат — огромное благо.

Update. Сегодня продолжил работу с файлом и повторил ситуацию в точности. Сегфолт произошёл при попытке скопировать контур с эффектом деформации по обтекающей. Судя по всему, автоматически сохраняя рисунок перед падением, Инкскейп записывает его в состоянии, вызывающем при последующем открытии немедленный сегфолт. Очень удобная фича, чтобы надёжно убить работу :-) Надо порыть настройки, вдруг на это можно как-то повлиять.

Update2.

Program received signal SIGSEGV, Segmentation fault.
0x082d1443 in Inkscape::LivePathEffect::LPEEnvelope::doEffect_pwd2 (
this=0xb255c28, pwd2_in=...) at live_effects/lpe-envelope.cpp:122
122 live_effects/lpe-envelope.cpp: Нет такого файла или каталога.
in live_effects/lpe-envelope.cpp

Всё-таки это операции над контурами.

Update 3.

На этот раз удалось открыть файл в том виде, как он был сохранён (или автосохранён?). Перед этим в текстовом редакторе выбросил из файла SVG все ноды inkscape:path-effect и inkscape:perspective. Как ни странно, трансформации при этом сохранились. Заодно нашёл в домашнем каталоге файл аварийного автосохранения (естественно, вызывающий сегфолт). Получается, при сегфолте Инкскейп испортил рабочий файл, что в уме не укладывается.

вторник, октября 27, 2009

GIF-анимация в Inkscape (и немножко Gimp)

Подытожил опыт рисования анимированных гифов в основном в Инкскейпе с минимальной обработкой в Гимпе: см. на офсайте.

Заодно скачал книжку Diving into Python и читаю перед сном. Кто-то должен написать эти скрипты, которых так не хватает при работе с гифом в уме.

Thickbox мёртв. Да здравствует...

Thickbox, плагин к jQuery, ставший практически стандартом в показе плавающих над страницей картинок, почил 30 сентября с. г. Он is not maintained any longer.

На странице проекта советуют обратиться к его отпрыскам и альтернативам. Мне нужно было, я обратился. Чтобы не тратили время, вот выжимка.

Fancybox. В стиле Мака. Мне не понравилось внешне, вглубь не пошёл.

DOM Window. Вэри бэйсик. Можно обвешивать своими фичами, но зачем?

jQueryUI. Немного очень не то.

Shadowbox. Универсальный медиавьюер. Настолько универсальный, что может работать в отсутствие других тулкитов. В результате код немножко не очень компактный, скажем так. Зачем дублировать функционал jQuery и Prototype, когда что-то из этого уже используется на сайте? Если не используется — вам сюда.

Colorbox.
Ты чуть вошел, я вмиг узнала,
Вся обомлела, запылала
И в мыслях молвила: вот он!
:-)

четверг, октября 22, 2009

Inkscape + Gnome Clipboard manager

...несовместимы.

Если вдруг вы не можете скопировать объекты между двумя окнами Инкскейпа, скорее всего, перед этим вы добавили Gnome Clipboard manager на панель. Уберите к чертям. Хотя с ним и удобно.

четверг, октября 15, 2009

Inkscape: журнальная реклама

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

Inkscape на этот раз был выбран не только из хулиганства, но и потому что работать с PDF никто не может лучше него.

Была потрачена пара часов. Важнейшее лого также было выдрано в векторном виде из PDF. Результат сохранился в PNG и через ImageMagick (Separate+, прости, ты пока что отдыхаешь) превратился в CMYK TIFF (техусловие). Немного спустя пришло подтверждение: всё в порядке.

Перешёл на широкий формат

С появлением на столе монитора формата 16:9 понял, что сайты фиксированной ширины больше делать не буду.



Есть большой соблазн попробовать повернуть его вертикально, но, по имеющимся сведениям, это отключит второй монитор. Требуется исследование. Пока что как-то так.

пятница, октября 09, 2009

SVG Color 1.2 — W3C Working Draft 01 October 2009

По посту на линуксграфиксе нашёл интересный документ: рабочий черновик спецификации SVG Color 1.2. Важен тем, что это продукт W3C, то есть по принятии рискует стать общесетевым стандартом с какой-то степенью обязательности к следованию.

Как известно, нынче SVG — сугубо экранный формат, знающий только RGB. Что предлагается?

3.2 ICC colors

В этом разделе описывается дополнительный нод icc-profile со ссылкой на профиль ICC, а далее к объектам можно применять атрибут
icc-color(acmecmyk, 0.11, 0.48, 0.83, 0.00)
что уже даст нам возможность видеть корректные цвета на экране и как-то управлять их выводом в тот же PDF.

Но это цветочки.

3.4 ICC named color

Здесь можно будет определить палитру именованных цветов и использовать эти цвета в изображении. Палитра теоретически может быть любой, но на практике все мы видим писаное огненными буквами слово, начинающееся на «пан» и заканчивающееся «тон» :-)

Ну и контрольный выстрел.

Uncalibrated device color

Здесь можно описывать цвета device-gray, device-rgb, device-cmyk и device-nchannel, что вторгается в святая святых Adobe, поскольку это (поправьте меня) претензия на первый в истории открытый стандарт работы с выводными устройствами.

В спецификациях элемента color-profile находим подробные указания, как приложению обращаться с рендеринг-интентами, как быть с чёрной-белой точками, и т. д., и т. п.

Наверное, даже конченый оптимист не назовёт эту спецификацию убивцей PDF, да и кому это нужно? Но графика, описанная в таких терминах, может быть переведена в типографский PDF даже шелл-скриптом :-) а что ещё нужно?

четверг, октября 08, 2009

OpenOffice.org 3.1.1 от Инфра-ресурс

Надоело мучаться с docx в прежней версии. Выкачал русскую сборку 3.1.1. Поставил. Открыл для проверки документ (из домашней папки; попался на немецком, присылали клиенты). Вздохнул. Закрыл. Поставил язык по умолчанию — немецкий. Открыл. Вздохнул. Поставил язык текущего документа — немецкий. Выматерился. Закрыл всё к чертям.

Интересно, а в XXI веке вообще принято ожидать от национальной сборки большого офисного пакета понимания, что текст может содержать не только национальные и латинские символы? Что в нём могут быть и умляуты, и иероглифы?

Scheiß.

среда, октября 07, 2009

Ну и я про 17- значный VIN...

...как же без этого.

Почитал. Посмотрел. Думал, что можно было бы тупо добивать недостающие позиции нулями — ан нет, там значимая информация.

Господин Рахманов объясняет, что чиновники стремятся создать единую базу учёта автомобилей, где VIN — ключевой момент. Это похвально.

Господин Рахманов не понимает (или делает вид, что не понимает), что если система учёта не умеет учитывать объективную реальность — значит, система говно. Вместо этого он предлагает реальности прогнуться, чтобы влезть в систему учёта.

Типичный административно-совковый бред.

Проблема-то решаема элементарно, было бы желание. Можно присваивать VIN нужного формата при таможенном оформлении, благо вся требуемая для этого информация присутствует в документах. Можно проставлять его на синьке и пробивать в техталоне. То есть можно устранить административные несообразности административными же средствами, что правильно.

Было бы желание.

Как сегодня прочитал где-то по тому же поводу — «правительство, которое этого не понимает, тренируется потерять свою страну».

Ну или страна правительство, что в математическом смысле то же самое.

Update 27.10

- Мы планируем сейчас в рамках мероприятий по введению регламента создать единую базу, с возможностью «расшифровывать» VIN-номер практически любого автомобиля, в том числе японского. (Кстати, такого рода бесплатная услуга уже сейчас есть в интернете, но в основном касается «стандартизованных», 17-значных номеров). Для этого мы запросим японских производителей дать «переводные» таблицы 11-значных в 17-значные номера и правила интерпретации. Надеюсь, что если японские изготовители уважают российских потребителей своих подержанных машин, сделать такую работу не составит большого труда и я уверен, что к моменту вступления регламента в силу, мы урегулируем этот вопрос. — Рахманов.

Мюнхгаузен

(взглянув на часы)

Без десяти четыре!.. Успели!.. Их счастье!

В продаже появился русский газ

Будучи, несомненно, одним из самых активных потребителей плиточных баллончиков в Находке (огнепоклонник, а большой баллон в моём доме устанавливать запрещено; последние три года нажигаю 4-баллонную упаковку в неделю), давно и с нетерпением ждал, когда я перестану спонсировать корейских производителей и начну вкладываться в родной Газпром.

Дождался.

В «Кашёлке» появились газовые баллончики из Сибири.

По цене 48 рублей за баллон.

Вот кто мне объяснит, почему можно 1) импортировать газ в Республику Корея; 2) разлить по баллонам; 3) экспортировать в РФ, заплатить мзду таможне; 4) накрутить на перепродаже — и продавать по цене 30 рублей за баллон? А сделать то же самое не через жопу без двух пересечений границы — 48?

В общем, пасись, Газпром, со своими 200 граммами газа по цене двух литров бензина. Корея рулит форэва.

(и эти люди потом рассуждают о центробежных тенденциях на периферии... йопт, я же видел, почём этот газ в Подмосковье... из Сибири что туда, что сюда — одинаково).

Сезон, однако! (календарная сетка 2010)

Ощутив сезонную нужду в календарной сетке, справил её традиционно, посредством скрипта, давно включаемого в Scribus.

Сгенерировал календарь, поправил календарный стиль, чтобы буквы стояли потеснее.

Сохранил в 12-страничный PDF (скрипт генерит отрывной календарь, по месяцу на странице).

12 раз бросил этот PDF в Инкскейп, выбирая каждый раз новую страницу для импорта.

Разрулил, разровнял, раскрасил.

Вот иногда я очень-очень люблю опенсорц (а иногда — просто очень).

Можно взять в SVG здесь.

пятница, сентября 25, 2009

Градиенты в Инкскейпе: занимательный факт

Градиенты в Inkscape всегда имеют 1024 градации, независимо от их размера: см.

Соответственно, градиент шириной 2048 пикселов будет иметь по два пиксела на градацию, что сделает его ясно видимым на экране.

А градиент шириной в метр будет иметь примерно по миллиметру на градацию на печати.

Есть надежда, что между точками многоточечного градиента действует тот же лимит 1024, то есть промежуточная точка посередине градиента увеличит его цветовое разрешение вдвое. Надо проверить.

среда, сентября 23, 2009

«Злата»: редизайн

Ювелирная сеть «Злата» созрела для редизайна своего сайта, который верой и правдой отработал уже скоро год.

Новый дизайн: а) воздушнее, б) ярче, в) резиновый. То есть отражает изменения в ощущении «Златой» себя и своего имиджа, произошедшие за последний год (за исключением пункта «резиновый», конечно).

Очень люблю смотреть резиновые сайты, но не люблю их делать. Во всяком случае, пока на свете ещё есть Invalid explorer.

Новый вариант уже в общем готов, но пока не согласован. Соответственно, и не запущен. Сама картинка нового дизайна поступила уже в готовом виде.



Владельцы кое-каких бумаг от «Златы» могут начинать волноваться, глядя на загадочные шарики со сменяющимися номерами. Но - тссссс, это наша с вами тайна! :-)

четверг, сентября 17, 2009

Ядро 2.6.30: враг хорошего

Накопив за пару месяцев гиг с небольшим проигнорированных апдейтов (Debian testing), решил наверстаться. Вот не в добрый час я это затеял.

Первое: выяснилось, что fglrx-driver от ATI больше не поддерживает целую пачку чипсетов, безнадёжно устаревших, с точки зрения ATI. Проблемы безнадёжно устаревших пользователей компанию не волнуют. Она их презирает. Пришлось переходить на драйвер radeon из Xorg. Это поломало двухмониторную настройку Х, использовавшую фичу атишного драйвера: MergeFB. Теперь эта задача возложена на xrandr. Функционал восстановлен, однако кровушки отпили.

Второе, ещё более ужасное. Поломано автомонтирование USB-накопителей в 30-м ядре. Судя по гуглу, решение пока что состоит в распевании мантры «Всё Будет Хорошо» и ручном монтировании. Блин, XXI-й век на дворе, а тут флешки ручками в /mnt прописывать, ну как при царе Горохе, ей-богу.

Третье. Как ожидалось, слетел VMware. Он всегда слетает при смене ядра, это нормально. Но когда пересобрать его модули под новое ядро невозможно, это уже слегка ненормально. Решение в виде патча нашлось на форуме VMware commutiny.

Сижу и думаю: ну на хрена понадобился козе баян, а? Всё ведь так чудесно работало.

О новых приятных фичах после апгрейда: не заметил.

Update. OpenOffice:

X-Error: BadRequest (invalid request code or no such operation)
Major opcode: 152
Minor opcode: 19
Resource ID: 0x4a00001
Serial No: 127 (127)
These errors are reported asynchronously,
set environment variable SAL_SYNCHRONIZE to 1 to help debugging
soffice.bin: ../../src/xcb_io.c:542: _XRead: Проверочное утверждение `dpy->xcb->reply_data != ((void *)0)' не выполнено.

Fatal exception: Signal 6

Чинится установкой переменной:

export SAL_NOOPENGL=true

Однако это несколько левая припарка, так как сама ошибка означает отсутствие OpenGL в Иксах, и это надо будет лечить.

понедельник, сентября 14, 2009

Gimp-2.7: скончался.

Аккурат через неделю после сборки, без видимых на то причин, Гимп 2.7 умэр. Ошибка malloc().

Не стал долго разбираться, так как дело не ждёт:

# rm /usr/local/lib/libgegl*
# rm /usr/local/lib/libbabl*
# rm /usr/local/lib/libgimp*
# apt-get install --reinstall gimp libgimp2.0 libbabl-0.0-0 libgegl-0.0-0

Гнумерик прослабило

Вчера, 13 сентября, в течение суток на freshmeat.net было сообщено о трёх релизах Gnumeric: 1.9.7, 1.9.8 и 1.9.9. Вона как работают. А тут над плёвым сайтом по две недели сидишь...

четверг, сентября 10, 2009

Debian на Asus eeePC 700: часть 3, айсикьюшная

Коротко: кутим.



Это не глагол, это существительное: qutim, лёгкий IM.

При установке --without-recommends вытянулось 7.7 метров, развернувшихся в 21. Установка по умолчанию - 10 метров, разворачивается в 28. Не такой уж лёгкий... но приемлемо.

Здесь.

Debian на Asus eeePC 700: часть 2

Продолжение культивирования Дебиана на отдельно взятом недокомпьютере.

Сперва немного скриншотов, как это выглядит. «Соль-перец», то есть веб и почта:





Скайп и терминал (с выводом команды df, ненавязчиво):



FBreader в полноэкранном режиме с поворотом, при этом компьютер выглядит и ощущается как обычная книга, разве что слегка тёплая:



Звук заработал, как и обещалось в инете, после замены в конфиге ALSA чего-то там на master (кому надо подробности - ищите, они на поверхности).

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

# apt-get install lm-sensors

Ищем /etc/fancontrol, пишем там:

INTERVAL=5

FCTEMPS=hwmon1/pwm1=hwmon0/temp1_input
FCFANS=hwmon1/pwm1=hwmon1/fan1_input
MINTEMP=hwmon1/pwm1=55
MAXTEMP=hwmon1/pwm1=70
MINSTART=hwmon1/pwm1=50
MINSTOP=hwmon1/pwm1=50

и затем


# invoke-rc.d fancontrol start

Вентилятор начинает работать адекватно.

Остаётся в задачах:

1) dial-up GPRS via Bluetooth;

2) индикатор батареи на экране;

3) ICQ (Pidgin?)

T.B.C. ...

вторник, сентября 08, 2009

Gimp внутри: даунсэмплинг в более чем два раза

Вот замечал, но не верил глазам своим: иногда уменьшение картинки в Гимпе происходит нормально, а иногда - хоть святых выноси.

На объяснение набрёл случайно в Багзилле. Свен Нойманн поясняет:

Scaling by 50% is done in one pass, scaling by 49% in two passes. The first pass scales down to 50% using a box filter and then the Lanczos interpolation is used in the second step. This method can introduce some blurring. But the current Lanczos implementation can not scale down by a factor smaller then 0.5, so a two-pass approach is needed. We know that this is not ideal and we would like to see this improved in the next development cycle.

...

... the same multi-step scaling is done for all interpolation methods, not only for Lanczos.

Как я понимаю, эти сведения остаются актуальными, т. к. в ченджлоге к 2.7 никаких ремарок на эту тему не нашлось.

Логоштудия: Xpromt

В дополнение к летним наброскам лого Xpromt (ужасным, на мой сегодняшний взгляд), поработал два часа на ту же тему («строго, креативно, с вырезабельной дыркой»), не имея в голове никакого подобия плана или идеи. Подтвердилось старое правило, что отсутствие плана - лучший план.



Мне, в общем, нравится. Сегодня последний день, когда предложения по лого ещё рассматриваются; авось.

понедельник, сентября 07, 2009

Gimp-2.7: открыл неделю сборкой

С утра собрал девелоперскую версию Gimp 2.7. Цели: 1) утолить любопытство; 2) посмотреть, как выглядит ввод текста на холсте; 3) выяснить, годится ли эта версия для повседневной работы.

Сперва не смог собрать babl и gegl, взятые через git: какие-то совершенно дурацкие ошибки, связанные, как я понял, с путями. Не стал разбираться, взял то и другое с ftp, так собралось.



Посмотрел. Ну Гимп. Текст на холсте, да, вводится, но нового функционала пока нет. Единственное замеченное добавление - выбор способа (или степени?) сглаживания шрифта, как в Фотошопе. Навскидку не прочувствовал разницы. Вероятно, потому что пробный текст был очень большого кегля. Надо будет в процессе уже смотреть на мелких надписях.

Из неприятного: включил галку «Использовать ГЕГЛ», открыл пункт «Операция ГЕГЛ», сегфолт.

Обнаружил эффекты слоя, внешне точь-в-точь как в Фотошопе, но с большой разницей: эффекты не живые, они создают новые слои. То есть это только ещё один способ автоматом создать слой с тенью или т. п. При включенном превью прилично притормаживает, т. к. вспомогательные слои создаются на лету, и пересоздаются, стоит тронуть какой-нибудь параметр.



Вот такие впечатления первой минуты, дальше посмотрим.

Update.

Установка новых gegl и babl огорчила Гимп 2.6: он сказал, что требуется версия минимум 0.0.22, а установленная 0.1.0... слишком стара :-) Похоже, переход на 2.7 у меня состоялся в добровольно-принудительном порядке.

Как и обещалось, XCF теперь единственный формат Гимпа, всё остальное происходит через импорт-экспорт. Практически, может быть, и не всегда удобно, но идеологически - верно. К тому же я уже не раз попадался, сохраняя только конечный результат работы. Лишнее напоминание сохранить в XCF будет более чем уместно.

четверг, сентября 03, 2009

Граф Толстой, ненавистный на все времена

В Москве развлекался чтением карманных книг -  натурально, бумажных, размером от колоды карт до коробка спичек. Когда-то это было популярно и коллекционно.

Поразил "Холстомер". Не только открытием, что Лев Николаич мог писать сжато, но и послесловием.

Сперва место, которое зацепило (не могло не) - если кто, как я, не читал, эти слова принадлежат мерину:

Впоследствии, расширив круг своих наблюдений, я убедился, что не только относительно нас, лошадей, понятие моё не имеет никакого другого основания, как низкий и животный людской инстинкт, называемый ими чувством или правом собственности. Человек говорит: "дом мой", и никогда не живет в нем, а только заботится о постройке и поддержании дома. Купец говорит: "моя лавка". "Моя лавка сукон", например,- и не имеет одежды из лучшего сукна, которое есть у него в лавке. Есть люди, которые землю называют своею, а никогда не видали этой земли и никогда по ней не проходили. Есть люди, которые других людей называют своими, а никогда не видали этих людей; и все отношение их к этим людям состоит в том, что они делают им зло. Есть люди, которые женщин называют своими женщинами или жёнами, а женщины эти живут с другими мужчинами. И люди стремятся в жизни не к тому, чтобы делать то, что они считают хорошим, а к тому, чтобы называть как можно больше вещей своими. Я убежден теперь, что в этом-то и состоит существенное различие людей от нас.

Прочёл и подумал: хорошо вам было, граф Толстой, писать такие вещи в ваши времена. Во-первых, будучи графом. Во-вторых, потому что в ваше время над этими строками кто-то действительно бы задумался. Вас бы в XXI век, да пропишите эти банальные истины в блоге, и вам сперва укажут, что спёрто у Толстого, потом - что идейки тухлые и плоские, а на дострел - что только конченое чмо может видеть жизнь в таком разрезе (естественно, втайне мечтая и завидуя).

Однако все эти уничижительные вещи были бы сказаны только потому, что в цитате - голая и наивная правда. Настолько голая, что глаза выкалывает. Настолько наивная, что... ммм... аморальна, потому что - вразрез и плюя на святое.

В общем, оттаскали бы графа в наше время за козлячьи патлы, чтобы неповадно.

В конце книги нашёл:

  

Нет, ничего не меняется: ни истины, ни противоречащая им мораль.


Debian на Asus eeePC 700

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

Ноутбуки, было два: Ровербук и Asus. У обоих аккумуляторы ни к чёрту. Соответственно, автономности около нуля. Вес... грустно, особенно при авиаперелётах, когда на счету каждые полкило. Как рабочий компьютер слишком малы, как мобильный - чересчур велики. Разочаровался.

Смартфон, был СониЭрик М600. Близко к теме, но: тормоза - раз, плохо с софтом (UIQ3) - два, экран размером с пачку презервативов - три. Годится для чтения RSS и книжек, всё. Когда потерял, даже не расстроился.

Карманные компьютеры. Тошибовский кирпич с мобильными окошками - убожество во всех смыслах. Поставил на него Линукс, но - ресурсы. Sony Clie SJ20 - уже гораздо горячее, Palm OS - почти идеальная карманная система, автономность (без подсветки) - недели. Но: записная книжка и просто книжка, остальное - ноль или чуть больше нуля. Жив, впрочем, до сих пор и используется для чтения.

Я было решил, что всё это от лукавого, но появились нетбуки. Прогнал наваждение. В ответ лукавый стал предлагать нетбуки по цене плохонького телефона. Тут случилась Москва, поехал в MediaMarkt на Ленинградке и взял из огромного распродажного штабеля коробку с самой базовой моделью eeePC. Экран 800х480, полметра памяти, 2 метра SSD. Предустановленная Windows XP Home оставила на нём свободными жалкие крохи. Bluetooth-адаптер докупил там же. Запостился в родном форуме из поезда Москва-Баку через GPRS: хм. В принципе, всё устраивает. Кроме ХР.

Особенно впечатлило утро, когда искал Biblio Globe в районе Лубянки. Был там семь лет назад. Вроде помнил: от гебэшной конторы чуть за угол. Углов там много. Бродил, заплутал. Зашёл в кафе, взял обед и стакан пива. Достал нетбук, нашёл сайт магазина и схему проезда. Действительно, было за углом (только уже в двух кварталах). Удобно же, чёрт возьми.

В свободный день в Москве снёс к чертям ХР и стал ставить линуксы. Не ставятся, заразы. Дистрибутивы для eeePC рассчитаны на 4-гиговый SSD. Родной Xandros от 2-гиговой модели найти не удалось. Свернул работы до дома. Привёз нетбук в виде мёртвого кирпича без системы вообще.

Дома в спокойной обстановке изучил тему. Вышел на DebianEeePC. Зацепило: дебианщик. Поставил. Есть моменты, здесь подробнее.

1. GRUB не встал загрузчиком (ни legacy, ни новый), однако встал LILO.

2. Разделил жалкие 2 гига на 1.7 под корневую файловую систему etx2 (скорости ради) и 0.3 подкачки.

3. При выборе задач (tasksel) отключил всё, даже стандартный набор. Вообще всё отключил. Получил рабочую консольную систему и заметно больше гига свободного места. Чем его занять - вопроса нет, это же настоящий Дебиан: «мы в его репозитариях как в сору роимси».

3.5. После первой перезагрузки не смог залогиниться в систему ни юзером, ни рутом (логин рутом включён). Матюкнулся, перезагрузился в single mode:

linux single root=/dev/sda1 initrd=

и через passwd перезадал пароли рута и юзера. Помогло.

4. Поставил голые Иксы, совсем голые. И XDM (самый беспонтовый, зато маленький).

5. Поставил LXDE. Восторг.

6. Поставил lynx исключительно ради более удобного скачивания Оперы. Не забыть снести.

7. Нашёл образец ееешного xorg.conf (мои Иксы были настолько суровы, что работали с пустым конфигом, полностью на дефолтах). Дописал в него русскую раскладку: работает.

8. Поставил утилиту панирования экрана отсюда. Включаю-отключаю по необходимости (иногда без неё никак: в диалогах кнопка ОК ниже границы экрана).

9. Гибернация работает.

10. Звука пока не обнаружил (поставил alsa и xmms2), в инете описано и решено, просто руки не дошли.

11. Поставил bluez, адаптер Bluetooth заморгал, в dmesg всё пучком, но реально GPRS пока не проверял (в офисе и дома втыкаю Ethernet). Это, однако, наибольший приоритет: без GPRS вся цацка теряет смысл. Сейчас надо выбрать самый удачный dialer (можно обойтись и консолью, но я хомячков в детстве отлюбил). Пока что нравится вот этот (однако не пробовал).

12. Почта: Claws mail, конечно. Написал .gtkrc с 8-пунктовыми шрифтами, на маленьком экране получается довольно компактно.

13. Нехороший пункт, пропустим.

14. WiFi: дебиановское ееешное ядро 2.6.30 обещает его как огурчик, но не проверял: деревня-с, сетки нет поблизости.

15. Батарея. Надо будет найти иксовый индикатор, пока не занимался.

16. Место. С иксами, Оперой, почтой, Питоном, ещё не чистив ненужные темы LXDE и не затирав /usr/share/doc, имею что-то около 600 метров наличными (посмотрю точнее). Это всё под кэш веба и почты.

Update.

После sudo aptitude clean:

ФС Исп Доступно Исп% смонтирована на
/dev/sda1 658230 902303 43% /


17. Рудиментарная ретушь (надо иногда обработать фотки для блога). mtPaint. Всем хорош, но не делает скриншотов (решить) - был неправ: Файл - Действия - Time delayed screenshot.

18. Файловый менеджер, просмотрщик картинок: всё включено в LXDE. Дополнительно поставил binutils (из файлового менеджера входить в архивы).

19. Надо написать скриптик, перебирающий предначертанные конфигурации eth0 и выбирающий работоспособну. Пока что переключаю сети через wicd, но руками шевелить заламывает.

20. Надо удобный ридер ебуков.

2 B continued... скриншоты тож...

суббота, августа 22, 2009

Познакомился с Еленой Эланж

Как правило, фотографии красивых женщин лучше оригинала. Елена - не правило.

пятница, августа 21, 2009

Гнездо Маклаудов

Попал туда второй раз в жизни. В первый раз было полно людей, коров и комбайнов. Я плохо стоял на земле и смотрел на всех снизу далеко наверх. Брежнев ещё не впал в маразм и был чернобровым брюнетом.



Это райцентр. Дорожный указатель самой деревни снять не удалось: его нет, как, впрочем, и дороги, и деревни.





В дом пробрался я один. Кто не захотел; а кто не захотел расстраиваться.


Поиск по этому блогу