20 октября 2010 г.
12 октября 2010 г.
Tahoma в Linux
Выполняем в консоли следующие магические команды: :-)
cd /tmp sudo apt-get install msttcorefonts wget http://download.microsoft.com/download/ie6sp1/finrel/6_sp1/W98NT42KMeXP/EN-US/IELPKTH.CAB cabextract IELPKTH.CAB sudo cp *.ttf /usr/share/fonts/truetype/msttcorefonts/ sudo fc-cache -f -v
И насkаждаемся Tahom-ой со сглаживанием и т.д.
На всякий случай, та Tahoma которая идет в wine нифига не имеет сглаживания и отображается весьма криво...
25 сентября 2010 г.
Qt + SQLITE + регистронезависимый поиск
Стояла задача обеспечить в sqlite регистронезависимый поиск по русскому тексту в UTF-8. Sqlite такого в стандартной поставке делать не умеет.
Выход найден.
Делаем следующее:
- Устанавливаем пакеты если их еще нет
- libsqlite3-dev
- sqlite3-0-dbg
- Скачиваем файл
wget www.sqlite.org/cvstrac/getfile?f=sqlite/ext/icu/icu.c -O icu.c
- Собираем
gcc -shared icu.c `icu-config --ldflags` -o libSqliteIcu.so
для AMD 64
gcc -shared icu.c `icu-config --ldflags` -fPIC -o libSqliteIcu.so
Не забываем о регистре в именах файлов для *nix систем
Копируем собранную библиотеку например к бинарику проекта, я скопировал в /usr/lib т.к. пользуюсь этой либой в command-line интерфейсе sqlite
- В pro файле добавляем
LIBS += -lsqlite3
- В проекте добавляем
#include <sqlite3ext.h> ... // после того как база данных открыта пишем QVariant v = db.driver()->handle(); if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*")==0) { // v.data() returns a pointer to the handle sqlite3 *handle = *static_cast
(v.data()); if (handle != 0) { // check that it is not NULL int res = sqlite3_enable_load_extension(handle,1); if (res == SQLITE_OK) { res = sqlite3_load_extension(handle,"libSqliteIcu.so",0,0); if (res == SQLITE_OK) qDebug() << "Sqlite3 load ICU extension sucessfully"; else qDebug() << "Sqlite3 load ICU extension fail"; } else qDebug() << "Sqlite3 enable load extension fail"; } }
И получаем проект в котором все запросы c LIKE, UPPER, LOWER отрабатываются с русским языком именно так как должно быть.
3 июля 2010 г.
Fancybox в FF под Linux
Хотел бы поделиться своими наблюдениями по особенностям работы чудного плагина Fancybox для JQuery
Помимо разных вкусностей этот плагин умеет делать "Image gallery" очень просто и достаточно красиво. Как это выглядит, для тех кто не в курсе, можно посмотреть на http://fancybox.net/
Так вот была у меня задача организовать эту самую галерею. Организовал (для тестов взял пачку своих wallpaper-ов, это важно) и натолкнулся на грабли, а именно под windows в IE, FF, Opera, Chome под linux в Opera, Chome, Seamonkey все эффекты просто летают, а под FF на linux - безбожно тормозят.
Как проверял версии Java, как тестировал под разными дистрибутивами и т.д. рассказывать не буду, опишу сам результат...
fancybox по умолчанию показывает эту самую галлерею в окне размером не более 75% от текущего разрешения монитора. Если картинка больше он ее соответственно масштабирует. Так вот в FF под linux это самое масштабирование происходит с жуткими тормозами. Если размеры картинок подпилить до более разумных размеров тут же наступает счастье и все эффекты летают как положено.
Если будете использовать такую фичу имейте в виду.
15 февраля 2010 г.
Переустановка мира
Если вдруг захочется странного, то можно переустановить все пакеты следующим образом:
Вариант 1:
# aptitude reinstall \~m
Вариант 2:
# dpkg -l | awk '{print $2;}' > /tmp/list_package # cat /tmp/list_package | xargs -n1 apt-get -y --reinstall install