Архив рубрики: Новости

Автоматическое определение кодировки терминала в perl-скрипте.

Надоело руками менять кодировки для нормального вывода русского текста в своих perl-скриптах в зависимости от кодировки терминала (запускаю скрипты под Linux (utf8), Windows (ActivePerl, cp866) и Windows (Cygwin, cp1251)). Немного погуглил, но никаких готовых рецептов не встретил, хороший запрос для поиска что-то в голову не пришёл.

Решил поступить следующим образом — определять операционную систему, в которой запущен скрипт, и в зависимости от этого выставлять кодировку выходного потока (STDOUT):

#!/usr/bin/perl;
use utf8;
require encoding;
import encoding  ('utf8', 'STDOUT' => &SetEncoding);

sub SetEncoding {
    if ($^O =~ /^MSWin\d{2}$/i) {
        return 'cp866';
    }
    elsif ($^O =~ /^cygwin$/i) {
        return 'cp1251';
    }
    elsif ( условие для следующей ОС (например - linux) ) {
        return 'utf8';
    }
         ... и так далее, исходя из личных потребностей ....
}

Замечания, исправления, дополнения и/или другие способы решения задачи по автоматической установке кодировки для perl-скрипта всегда приветствуются!

И на всякий случай, если вдруг мне не удастся найти время написать ещё что-то в блог до нового года — поздравляю всех своих читателей с наступающим новым годом, успехов вам и побольше приятных открытий! :)

PS: А для интересующихся фрилансом — новый, но достаточно любопытный ресурс ФрилансFM — портал о фрилансе.

Отстрел травматического оружия и патронов

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

Отстрел ТТ, Осы и ружейных травматических патронов.

[hana-flv-player
width=»400″
height=»320″
video=»https://dimio.org/wp-content/uploads/video/weapon/Travma_TT_Osa_Shootgun.flv»
description=»Отстрел Осы и травматических патронов для ружья»
clickurl=»https://dimio.org»
clicktarget=»_self»
player=»4″
autoplay=»false»
loop=»false»
autorewind=»true»
/]

Отстрел пистолета Т10

[hana-flv-player
width=»400″
height=»320″
video=»https://dimio.org/wp-content/uploads/video/weapon/Travma_T10.flv»
description=»Отстрел травматического пистолета Т10″
clickurl=»https://dimio.org»
clicktarget=»_self»
player=»4″
autoplay=»false»
loop=»false»
autorewind=»true»
/]

Настройка GRUB2

Настройка GRUB2
Настройка GRUB2

Как я уже упоминал в своей записи об обновлении Ubuntu:

В конфиге GRUB2 нет толкового описания настроек (по умолчанию список вариантов загрузки он не выводит), нашёл на форумах.

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

Читать далее Настройка GRUB2

Обновил Ubuntu до 9.10

ubuntu 9.10

Дома на двух машинах решил обновить ОС. И если на десктопе всё прошло без приключений, то вот с ноутбуком как будто вернулся на несколько лет назад.
После обновления поверх версии 9.04 перестал работать экран. Нашел возможный вариант решения для чипсетов от интел (мой случай), не помогло. Пришлось ставить начисто.

Поставил, перестали работать всплывающие уведомления (поломали драйвер видео?). В конфиге GRUB2 нет толкового описания настроек (по умолчанию список вариантов загрузки он не выводит), нашёл на форумах. Как можно поставлять загрузчик, не имеющий нормальной документации по настройке?
Выход из спящего режима теперь «двойной» — выходит один раз и тут же «засыпает» обратно.

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

Мой вердикт — нафиг. Если работает 9.04 и нет твёрдой уверенности в успешной установке 9.10 — лучше и не ставить. Ничего особо ценного в релизе нет.

Спам в блог

Каюсь, было время, когда я сам написал пару спамилок (отчасти из интереса — чтобы понять, как работает механизм отправки сообщений). Одну для ЖЖ, другую — для некоей онлайн-игры.
Но я бы никогда не стал писать программу для спама в wordpress блог, зная, что для разрушения результатов всех моих усилий достаточно будет выполнить один-единственный запрос к БД.

Кроме того, мои спамилки писали лог с отчётом о своей работе, благодаря чему можно было менять настройки сообразно ситуации. Вот насколько надо быть глупым, чтобы накатать 65 спам-сообщений подряд под одним именем, при этом не потрудившись проверить, публикуются ли они вообще? То ли спам-софт пишут дети, то ли дети его покупают… DELETE FROM `wp_comments` WHERE `comment_author` = 'Gugserv' — и все усилия пошли прахом. Странно, право слово.

Напоследок о приятном — судя по всему, завтра у меня хватит времени закончить очередную часть рассказа «Как написать плагин для WordPress». Следите за обновлениями и удачи! :)

Время-время или «определение цены продажи ссыки»

Охота на дикого зверя
Охота на дикого зверя

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

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

Читать далее Время-время или «определение цены продажи ссыки»

WordPressSignaturer. Возможность выбрать цвет подписи

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

WordpressSignaturer_settings
Читать далее WordPressSignaturer. Возможность выбрать цвет подписи

WPXMLCreator|Online — генерируй XML для wordpress прямо из браузера!

wpxmlcreator_online

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

Цветовая индикация хода загрузки Linux

Загрузка LinuxРаньше у меня в системе Red Hat Linux 6.0 во время загрузки статус запускаемых демонов выделялся цветом. В случае удачного запуска напротив названия запускаемого демона появлялось зелёное   [ OK ], а при возникновении ошибок — красное [ FAIL ]. Очень удобно, быстро замечаешь, если что-то пошло не так. Да и просто глаз радует, в конце-концов.

А вот стандартные настройки моей нынешней Ubuntu 9.04 таких маленьких радостей, к сожалению, не содержат.

Но на то он и Linux, чтобы можно было всё сделать так, как нравится только тебе!

Читать далее Цветовая индикация хода загрузки Linux