to post messages and comments.

← All posts tagged Perl

Для чтения, записи и вообще работы с файлами использую модуль Path::Tiny. Он всем хорош, за исключением дурацких названий функция для чтения и записи в файл, это slurp и spew соответственно. Хоть убей, не могу их запомнить, каждый раз приходится в справку лезть, чтобы посмотреть их названия

Есть тут люди, пишущие на перл? Вы какой текстовый редактор используете?
Пользовался Komodo Edit, но в последней версии из него взяли и выпилили плагин source, который предоставлял навигацию по функциям. Куды бечь? Неужели на python?

Есть файл, первая строка которого начинается с символа # и почему-то она не ловится регекспом ^#.*
Все остальные строки, которые начинаются на решётку, ловятся, первая — нет. Без символа начала строки ^ ловится и первая. Что за фигня? Начало файла не подразумевает начала строки?

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

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

Удивительно, но не нашлось ни одного модуля, который умел бы конвертить gpx в GeoJSON. Вот такая подстава, буду сам писать, на регекспах.

P.S. GPSBabel тоже не умеет в GeoJSON, говно.

Вот есть такая библиотека libgphoto2, ей уже лет 10 наверное, но она до сих пор развивается. Библиотека довольно популярна, её используют многие проекты, в том числе kde. И есть perl, к которому есть куча модулей и вообще он из тех же времён, что и libgphoto, но парадокс! Под perl нет биндингов для этой библиотеки. Под python есть, а под perl нет!

Написал программу для подключения фотоаппаратов canon по wi-fi к компьютерам с linux, а то родные их программы только под винду, да под мак.
Называется camwatcher, исходные коды: bitbucket.org

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

Качаем, тестим: bitbucket.org

p.s. ах, да, на перле!

Хм, какая интересная штука получается

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

perlnews.ru

Приехал ко мне новый трекер Holux GPSport 260 Pro! Оказалось, что в линуксе с него треки не скачать, нужно ставить кривой виндузовый софт, хотя предыдущая модель, GPSport 245, поддерживалась программкой mtkbabel и проблем с ним не было.
Вообщем на этих выходных болел, заняться было нечем и я написал программу для работы с GPSport 260 под линукс:
bitbucket.org

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

Что-то произошло на той неделе, то ли какие-то модули обновились, то ли что-то сломалось, но LWP упорно пытается передать по https соединению нешифрованные данные. Никак не могу найти решение.

Поставил я таки сервер на свой медиаплеер, но радости это не принесло. Perl подцепился нормально, только вот модули-то к нему нормально не ставятся. Всякий примитив работает, а чуть сложнее копни, LWP какой-нибудь, уже не ставится и не работате. Короче не нужен мне такой сервер. Для статики есть и более удобные варианты, тот же narod.ru или bitbucket.org

Узнал великолепное:
$_="one two three";
my ($first, $second, $third)=/(\S+) (\S+) (\S+)/;
print "$first, $second, $third)

Позволяет не возиться с $1, $2, $3, а сразу поместить нужное в удобно названные переменные!