Архив ‘snippet’

LiveJournal TabIndex Greasemonkey plugin

Взьярённый от нововведений ЖЖ, набросал махонький Greasemonkey-скрипт, чтобы комментарии по-прежнему отправлялись в стиле Write-Tab-Space-Style // Adding TabIndex to LJ Post button user script // version 0.1 BETA! // 2010-09-01 // Copyright © 2010, Andrew Jumashev // Released under the GPL license // http://www.gnu.org/copyleft/gpl.html // // -------------------------------------------------------------------- // // This is a Greasemonkey user script. // […]

WoW — гребем достижения в ЖЖ

Суть проста — выгрести из Армори последние ачивы, проверить — не постили ли раньше, запостить в ЖЖ. Накидалось на коленке, я использую БД в расширенной версии скрипта — но решил и такой мелкий написать :) UPD — чёт ппц криво получился этот сниппет в опубликованном виде. Аттачу ссылку на оригинал. Plain-Text

Perl, RegEx и LookAhead — форматируем MAC-адрес

Задача — из 001e8c15ffbc сделать 00:1e:8c:15:ff:bc Решение — perl -le 'my $x = «001e8c15ffbc»;$x =~ s/(...(?!\Z))/\1:/g; print $x' Разберем по кусочкам этот примитив. (...(?!\Z))/\1: ... — два любых символа (можно написать длиннее, если сомневаемся, что к нам придёт именно мак) — например, [a-f\d]{2} (?!\Z) — заглянем вперёд — нет ли там конца строки. Если есть — не попадаем в условие и, соответственно, […]

Опять PHP — скрытая подмена понятий :)

<? print_r ($_POST); ?> <form method="POST"> <input name="через пробел"> <input type="submit"> </form> Как вы думаете, что выведет print_r? Array ( [через пробел] => ) ? А вот и нифига! Он выведет Array ( [через_пробел] => )

Мерзкие отличия MacOS от Linux

Задача: массово переконвертить файлы с расширением .php из Windows-1251 в UTF-8. Итоговое решение: for a in `find /files_folder -type f -name «*.php»`; do iconv -f Windows-1251 -t UTF8 $a > /tmp/cp.file; cat /tmp/cp.file > $a; done; rm -rf /tmp/cp.file

Заменить пробелы регуляркой

Хозяйке на заметку: Два+ пробела заменяются не так: perl -le 'use Data::Dumper; my $x = «abc bca \n \t abc bca»; $x =~ s/\s{2,}/ /g; print Dumper $x' $VAR1 = 'abc bca abc bca'; Два+ пробела заменяются так: perl -le 'use Data::Dumper; my $x = «abc bca \n \t abc bca»; $x =~ s/[[:blank:]]{2,}/ /g; […]

Простейший пример веб-сервиса без веб-сервера

#! /usr/bin/perl -w use strict; use Socket; my $port = shift || 82; my $proto = getprotobyname ('tcp'); socket (SERVER, PF_INET, SOCK_STREAM, $proto) or die «socket: $!»; setsockopt (SERVER, SOL_SOCKET, SO_REUSEADDR, 1) or die «setsock: $!»;

Симулятор активной работы или Matrix — Just for fun

#!/usr/bin/perl -w use strict; use Term::ANSIColor; use Time::HiRes qw[usleep]; if (defined ($ARGV[0]) && $ARGV[0]!~/^\d+$/){ print color 'reset'; exit; } my $num = 2000; # сколько раз крутить my $strlen = 20; # длина строки my $length = 10000; # чем больше — тем дольше будет «вычисляться» строка

Логин в ЖЖ через HTTP

Для одной мерзкой цели потребовалось ходить в ЖЖ через HTTP — так удобней парсить некоторые вещи. Собственно, сниппет под катом. Пара слов о куках. Мне стало уже лениво писать под них лишние регулярки — но список их следующий: ljuniq ljmastersession ljloggedin BMLschemepref (схема кстати — кому хочется обратно dystopia — просто смените эту куку) langpref ljsession ljdomsess.{username} — у меня, […]

Постер статуса Вконтакте в Твиттер

#!/usr/bin/perl -w use strict; use Digest::MD5 qw (md5_hex); use WWW::Curl::Easy; use URI::Escape; use Carp qw[croak]; use Text::Iconv; my $twitter_login = q[skazkin]; my $twitter_password = q[]; my $vkontakte_login = q[e@mail]; my $vkontakte_password = q[];

Страница 1 из 212