Shura
Использую так редко, что забываю как делать именованные совпадения в регекспах. Запишу на память:
/(?<name>.+)/
Потом обращаться как $+{name}
Shura
Использую так редко, что забываю как делать именованные совпадения в регекспах. Запишу на память:
/(?<name>.+)/
Потом обращаться как $+{name}
Shura
Случайно сегодня узнал о таком пакете как Capture::Tiny - позволяет удобно захыватывать вывод запускаемых программ.
https://metacpan.org/pod/Capture::Tiny
Shura
Для чтения, записи и вообще работы с файлами использую модуль Path::Tiny. Он всем хорош, за исключением дурацких названий функция для чтения и записи в файл, это slurp и spew соответственно. Хоть убей, не могу их запомнить, каждый раз приходится в справку лезть, чтобы посмотреть их названия
Shura
/The top 10 tricks of Perl one-liners/
https://blogs.oracle.com/ks...s-of-perl-one-liners
Shura
Есть тут люди, пишущие на перл? Вы какой текстовый редактор используете?
Пользовался Komodo Edit, но в последней версии из него взяли и выпилили плагин source, который предоставлял навигацию по функциям. Куды бечь? Неужели на python?
Shura
Как вернуть undef из функции в perl: http://perlmaven.com/how-to...ndef-from-a-function
Shura
Есть файл, первая строка которого начинается с символа # и почему-то она не ловится регекспом /^#.*/
Все остальные строки, которые начинаются на решётку, ловятся, первая - нет. Без символа начала строки ^ ловится и первая. Что за фигня? Начало файла не подразумевает начала строки?
Shura
Написал вчера модуль для конвертирования gpx -> geojson, но возникла проблема. Для сопоставления фоток и заметок с местоположением используются отметки времени, присутствующие в gpx треке, но не предусмотренные в geojson. Получается, что при конвертировании я теряю ключевую информацию. Надо что-то придумывать.
Пока попробую хранить массив с временными отметками отдельно, в секции properties, посмотрим, справится ли с таким монга.
Shura
Удивительно, но не нашлось ни одного модуля, который умел бы конвертить gpx в GeoJSON. Вот такая подстава, буду сам писать, на регекспах.
P.S. GPSBabel тоже не умеет в GeoJSON, говно.
Shura
Копался в гугле и случайно наткнулся на интересный проект для ведения домашнего блога - plerd
Создаём файлы в маркдауне, они автоматом конвертятся в html и закидываются в блог. Всё на статике, отлично работает с dropbox.
Plerd is meant to be an ultralight blogging platform for Markdown fans that plays well with (but does not require) Dropbox.
It allows you to compose and maintain blog posts as easily as adding and modifying Markdown files in a single folder. Plerd creates an entirely static website based on the content of this one folder, automatically updating the site whenever this content changes.
Shura
Вот, ну наконец-то! http://habrahabr.ru/post/270069/
Жаль, что в пятёрку портировать нельзя.
Shura
В Perl можно подгружать модули на лету, если это необходимо.
Например код:
my $m = eval
{
require Module::Name;
1;
};
$m or return;
# тут код, который надо выполнить, если модуль загружен
Shura
Вот есть такая библиотека libgphoto2, ей уже лет 10 наверное, но она до сих пор развивается. Библиотека довольно популярна, её используют многие проекты, в том числе kde. И есть perl, к которому есть куча модулей и вообще он из тех же времён, что и libgphoto, но парадокс! Под perl нет биндингов для этой библиотеки. Под python есть, а под perl нет!
Shura
Написал программу для подключения фотоаппаратов canon по wi-fi к компьютерам с linux, а то родные их программы только под винду, да под мак.
Называется camwatcher, исходные коды: https://bitbucket.org/Shura0/camwatcher
Настраивается папка, в которую будут скидываться новые фотки и интерфейс, на котором слушать подключения. После этого можно запускать. Фотик обнаружит комп и после подключения программа сама скачает все свежие фотографии в преднастроенную папку, разложив фотки по датам. Обалденно удобно, такого нет даже в родном каноновском софте.
Качаем, тестим: https://bitbucket.org/Shura...nloads/camwatcher.pl
p.s. ах, да, на перле!
Shura
Оказывается в perl6 добавили маханизм для разбора опций, переданных через командную строку:
http://habrahabr.ru/post/252451/
Shura
Скачиваем несколько страничек в параллель с AnyEvent
http://perlmaven.com/fetchi...allel-using-anyevent
Shura
Хм, какая интересная штука получается
perl -E 'say .1 + .2 - .3'
5.55111512312578e-17
$ ruby -e 'puts 0.1 + 0.2 - 0.3'
5.551115123125783e-17
$ python -c 'print .1 + .2 - .3'
5.55111512313e-17
$ echo "puts [expr .1+.2-.3]"|tclsh
5.551115123125783e-17
Но спасение есть:
$ perl6 -e 'say .1 + .2 - .3'
0
Shura
Присвоение дефолтных значений в perl
http://perlmaven.com/how-to...fault-values-in-perl