Implement !f, !ф, !fortune, !фортунка commands
This commit is contained in:
30
bin/fortune_seed.pl
Normal file
30
bin/fortune_seed.pl
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
use 5.018;
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
use utf8;
|
||||||
|
use open qw(:std :utf8);
|
||||||
|
use English qw( -no_match_vars );
|
||||||
|
use vars qw/$VERSION/;
|
||||||
|
$VERSION = '1.0';
|
||||||
|
|
||||||
|
my $workdir;
|
||||||
|
|
||||||
|
# before we run, change working dir
|
||||||
|
BEGIN {
|
||||||
|
use Cwd qw(chdir abs_path);
|
||||||
|
my @CWD = split /\//xms, abs_path ($PROGRAM_NAME);
|
||||||
|
if ($#CWD > 1) { $#CWD = $#CWD - 2; }
|
||||||
|
$workdir = join '/', @CWD;
|
||||||
|
chdir $workdir;
|
||||||
|
}
|
||||||
|
|
||||||
|
use lib ("$workdir/lib", "$workdir/vendor_perl", "$workdir/vendor_perl/lib/perl5");
|
||||||
|
use fortune qw(seed fortune);
|
||||||
|
use Carp;
|
||||||
|
$SIG{__DIE__} = sub { Carp::confess @_ };
|
||||||
|
|
||||||
|
seed ();
|
||||||
|
|
||||||
|
exit 0;
|
||||||
521
data/fortune_src/citates
Normal file
521
data/fortune_src/citates
Normal file
@@ -0,0 +1,521 @@
|
|||||||
|
Что сказал Берлиоз своей музыкой? - ничего; но как потрясающе он это
|
||||||
|
сказал.
|
||||||
|
-- Джеймс Гиббонз Хьюнекер
|
||||||
|
%
|
||||||
|
Музыка будет по-немецки, вы не поймете.
|
||||||
|
-- Оскар Уайльд
|
||||||
|
%
|
||||||
|
Четвертый раз смотрю этот фильм и должна вам сказать, что сегодня актеры
|
||||||
|
играли как никогда.
|
||||||
|
-- Фаина Раневская
|
||||||
|
%
|
||||||
|
Продолжительность фильма определяется выносливостью мочевого пузыря
|
||||||
|
обычного зрителя.
|
||||||
|
-- Альфред Хичкок
|
||||||
|
%
|
||||||
|
А что, если наша Земля - ад какой-нибудь другой планеты?
|
||||||
|
-- Олдос Хаксли
|
||||||
|
%
|
||||||
|
Если видишь женщину голой достаточно долго, опять начинаешь обращать
|
||||||
|
внимание на ее лицо.
|
||||||
|
-- Генри Миллер
|
||||||
|
%
|
||||||
|
Самое главное - выглядеть совершенно естественно; но для этого нужно очень
|
||||||
|
много косметики.
|
||||||
|
-- Кельвин Кляйн
|
||||||
|
%
|
||||||
|
Любовь - лучшая косметика. Но косметику купить легче.
|
||||||
|
-- Ив Сен-Лоран
|
||||||
|
%
|
||||||
|
Людей без лишнего веса больше всего на кладбище.
|
||||||
|
-- Биверли Силлз
|
||||||
|
%
|
||||||
|
Лучше быть молодым навозным жуков, чем старой райской птицей.
|
||||||
|
-- Марк Твен
|
||||||
|
%
|
||||||
|
К старости недостатки ума становятся все заметнее, как и недостатки
|
||||||
|
внешности.
|
||||||
|
-- Франсуа Ларошфуко
|
||||||
|
%
|
||||||
|
Лучше быть старой, чем мертвой.
|
||||||
|
-- Бриджит Бардо
|
||||||
|
%
|
||||||
|
Вечеринка с коктейлями: место, где можно встретить людей, которые пьют так
|
||||||
|
много, что вы не можете вспомнить их имена.
|
||||||
|
-- Космо Сардо
|
||||||
|
%
|
||||||
|
Средство от похмелья: выжать сок из двух бутылок виски...
|
||||||
|
-- Эдди Кондон
|
||||||
|
%
|
||||||
|
Дважды два уже четыре, а будет еще лучше.
|
||||||
|
-- Хенрик Ягодзинский
|
||||||
|
%
|
||||||
|
Я сидел на диете 14 дней и потерял всего две недели.
|
||||||
|
-- Тоти Филдс
|
||||||
|
%
|
||||||
|
В жизни можно полагаться только на себя самого. Да и то не советую!
|
||||||
|
-- Тристан Бернар
|
||||||
|
%
|
||||||
|
Источник нашей мудрости - наш опыт. Источник нашего опыта - наша глупость.
|
||||||
|
-- Саша Гитри
|
||||||
|
%
|
||||||
|
Уходя на тот свет, не забудь выключить этот.
|
||||||
|
-- Виктор Коваль
|
||||||
|
%
|
||||||
|
Я не верю ни единому слову из того, что вы говорите... или я вам.
|
||||||
|
-- Оскар Уайльд
|
||||||
|
%
|
||||||
|
Я думаю, мы должны говорить правду или хотя бы говорить то, что мы думаем.
|
||||||
|
-- Юрий Лужков
|
||||||
|
%
|
||||||
|
Нельзя иметь все. Куда вы это положите?
|
||||||
|
-- Стивен Райт
|
||||||
|
%
|
||||||
|
Сначала забываешь имена, потом забываешь лица, потом забываешь застегивать
|
||||||
|
ширинку, потом забываешь расстегивать ширинку.
|
||||||
|
-- Лео Розенберг
|
||||||
|
%
|
||||||
|
Время - лучший учитель, но, к сожалению, оно убивает своих учеников.
|
||||||
|
-- Гектор Берлиоз
|
||||||
|
%
|
||||||
|
Прошлое - чужая страна, там все по-другому.
|
||||||
|
-- Лесли Хартли
|
||||||
|
%
|
||||||
|
Помните о бедняках - это не требует никаких расходов.
|
||||||
|
-- Генри Уиллер Шоу
|
||||||
|
%
|
||||||
|
Я люблю своих детей, но некоторые мне не нравятся.
|
||||||
|
-- Лилиан Картер, мать президента США Д.Картера
|
||||||
|
%
|
||||||
|
Дружба - это когда можно ни с того ни с сего приехать к человеку
|
||||||
|
и поселиться у него.
|
||||||
|
-- Давид Самойлов
|
||||||
|
%
|
||||||
|
Врагов я забрасываю цветами - в гробу!
|
||||||
|
-- Сальвадор Дали
|
||||||
|
%
|
||||||
|
Я не боюсь умереть. Я просто не хочу при этом присутствовать.
|
||||||
|
-- Вуди Аллен
|
||||||
|
%
|
||||||
|
Какой замечательный некролог! С таким бы жить и жить!
|
||||||
|
-- М.Генин
|
||||||
|
%
|
||||||
|
Твои шансы выиграть в лотерею возрастут, если ты купишь билет.
|
||||||
|
-- Уинстон Грум из "Правил Фореста Гампа"
|
||||||
|
%
|
||||||
|
Пока вы ищете, кого бы стоило полюбить, вам нужен кто-то, кто любит вас.
|
||||||
|
-- Шейла Делейни
|
||||||
|
%
|
||||||
|
Если двое любят друг друга, это не может счастливо кончиться.
|
||||||
|
-- Э.Хемингуэй
|
||||||
|
%
|
||||||
|
Я порвала с ним через три года. Это была типичная любовь-ненависть. Мы оба
|
||||||
|
любили его и ненавидели меня.
|
||||||
|
-- Кэрол Зискинд
|
||||||
|
%
|
||||||
|
В тех кругах, в которых я вращаюсь, переспать с женщиной - недостаточный
|
||||||
|
повод для того, чтобы быть ей представленным.
|
||||||
|
-- Вирджиния Маклауд
|
||||||
|
%
|
||||||
|
Она говорила на восемнадцати языках и ни на одном из них не умела сказать
|
||||||
|
"нет".
|
||||||
|
-- Дороти Паркер
|
||||||
|
%
|
||||||
|
Помни: в пяти случаях из шести свет в конце туннеля - это свет
|
||||||
|
надвигающегося поезда.
|
||||||
|
-- Пол Диксон
|
||||||
|
%
|
||||||
|
Все соседи плохи, но верхние хуже нижних.
|
||||||
|
-- Константин Мелихан
|
||||||
|
%
|
||||||
|
Америка - единственный матриархат, под сенью которого женщины ведут борьбу
|
||||||
|
за равные права.
|
||||||
|
-- А. Рот
|
||||||
|
%
|
||||||
|
Брак - это лотерея, но в случае проигрыша вы не можете порвать свой билет.
|
||||||
|
-- Ф. Ноулз
|
||||||
|
%
|
||||||
|
Британский солдат устоит против кого угодно, только не против Британского
|
||||||
|
министерства обороны.
|
||||||
|
-- Бернард Шоу
|
||||||
|
%
|
||||||
|
Век наш таков, что он гордится машинами, умеющими думать, и побаивается
|
||||||
|
людей, которые пытаются проявить ту же способность.
|
||||||
|
-- Г.Мамфорд Джонс
|
||||||
|
%
|
||||||
|
Военная мудрость есть понятие, заключающее противоречие в самом себе.
|
||||||
|
Война - слишком серьезное дело, чтобы доверять его военным.
|
||||||
|
-- Талейран
|
||||||
|
%
|
||||||
|
Выход из беды найти не столь просто, как попасть в нее.
|
||||||
|
-- Эд Хау
|
||||||
|
%
|
||||||
|
Граница в политической географии - воображаемая линия между двумя
|
||||||
|
государствами, отделяющая воображаемые права одного от воображаемых прав
|
||||||
|
другого.
|
||||||
|
-- А.Бирс
|
||||||
|
%
|
||||||
|
Да не устрашит тебя величие: одни рождаются великими, другие достигают
|
||||||
|
величия, третьим его навязывают.
|
||||||
|
-- Уильям Шекспир
|
||||||
|
%
|
||||||
|
Две тысячи лет нам поставляли примеры для подражания, и теперь ничто нас
|
||||||
|
не извиняет, если мы, воюя, воем плохо.
|
||||||
|
-- Т.Э. Лоуренс
|
||||||
|
%
|
||||||
|
Дипломная работа среднего выпускника университета есть не что иное, как
|
||||||
|
кости, перенесенные из одной могилы в другую.
|
||||||
|
-- Дж. Фрэнк Доуби
|
||||||
|
%
|
||||||
|
Для любой волнующей человека проблемы всегда легко найти решение -
|
||||||
|
простое, достижимое и ошибочное.
|
||||||
|
-- Г.Л. Менкен
|
||||||
|
%
|
||||||
|
Добрым словом и револьвером вы можете добиться гораздо большего, чем одним
|
||||||
|
только добрым словом.
|
||||||
|
-- Аль Капоне
|
||||||
|
%
|
||||||
|
Если вы не восходящий, значит, вы ниспадающий.
|
||||||
|
-- Стивен Поттер
|
||||||
|
%
|
||||||
|
Если честолюбивая мечта не заставляет вас страдать, значит, ее у вас нет.
|
||||||
|
-- К. Норрис
|
||||||
|
%
|
||||||
|
Идеалист тот, кто, заметив, что роза пахнет лучше капусты, заключает, что
|
||||||
|
и суп из нее будет лучше.
|
||||||
|
-- Г. Менкен
|
||||||
|
%
|
||||||
|
Жизнь что луковица - вы чистите ее, снимая слой за слоем, и иногда
|
||||||
|
плачете.
|
||||||
|
-- С. Сандберг
|
||||||
|
%
|
||||||
|
Когда люди вольны поступать как угодно, они обычно подражают друг другу.
|
||||||
|
-- Э. Хоффер
|
||||||
|
%
|
||||||
|
Коли все думают одинаково, значит, никто особенно и не думает.
|
||||||
|
-- У.Липпман
|
||||||
|
%
|
||||||
|
Компьютеры бесподобны: за несколько минут они могут совершить такую
|
||||||
|
грандиозную ошибку, какую не в состоянии сделать множество людей за многие
|
||||||
|
месяцы.
|
||||||
|
-- М. Мичэм
|
||||||
|
%
|
||||||
|
Логика - это искусство ошибаться с уверенностью в своей правоте.
|
||||||
|
-- Дж. У. Крач
|
||||||
|
%
|
||||||
|
Любовь - вещь идеальная, супружество - реальная; смешение реального с
|
||||||
|
идеальным никогда не проходит безнаказанно.
|
||||||
|
-- И. Гете
|
||||||
|
%
|
||||||
|
Любое ваше решение - это ошибка.
|
||||||
|
-- Эдуард Далберг
|
||||||
|
%
|
||||||
|
Мой способ шутить - это говорить правду. На свете нет ничего
|
||||||
|
смешнее.
|
||||||
|
-- Бернард Шоу
|
||||||
|
%
|
||||||
|
На моем веку было очень много прогресса, но, боюсь, не в том направлении.
|
||||||
|
-- О. Нэш
|
||||||
|
%
|
||||||
|
Нам мало добиться успеха. Надо еще, чтобы друзья наши потерпели крах.
|
||||||
|
-- Ларошфуко
|
||||||
|
%
|
||||||
|
Невеста - женщина, у которой виды на счастье остались позади.
|
||||||
|
-- А. Бирс
|
||||||
|
%
|
||||||
|
Нужно учредить Нобелевскую премию за остроумие. Без физиков, химиков,
|
||||||
|
экономистов мы, если прижмет, как-нибудь обойдемся. Без мира обычно тоже
|
||||||
|
обходимся. Без остроумия - пропадем.
|
||||||
|
-- Джордж Ф. Уилл
|
||||||
|
%
|
||||||
|
О несчастном случае мой подзащитный впервые узнал лишь тогда, когда этот
|
||||||
|
случай произошел.
|
||||||
|
-- Из речи адвоката
|
||||||
|
%
|
||||||
|
Первый и наихудший из всех подвохов - обмануть самого себя. Потом уже
|
||||||
|
легко впасть в любой грех.
|
||||||
|
-- Дж. Бэйли
|
||||||
|
%
|
||||||
|
По самой своей природе человек, чем старше он становится, тем больше
|
||||||
|
противится переменам, особенно переменам к лучшему.
|
||||||
|
-- Дж. Стейнбек
|
||||||
|
%
|
||||||
|
Поиск истины способен изрядно позабавить.
|
||||||
|
-- Вернон Говард
|
||||||
|
%
|
||||||
|
Полицейский находится на своем месте не для того, чтобы создавать
|
||||||
|
беспорядок; полицейский находится там, чтобы поддерживать беспорядок.
|
||||||
|
-- Ричард Дж. Дейли, мэр Чикаго
|
||||||
|
%
|
||||||
|
Посредственность - добродетель в глазах посредственных людей.
|
||||||
|
-- Ж. Жобер
|
||||||
|
%
|
||||||
|
Посредственный учитель излагает. Хороший учитель объясняет. Выдающийся
|
||||||
|
учитель показывает. Великий учитель вдохновляет.
|
||||||
|
-- Уильям Артур Уорд
|
||||||
|
%
|
||||||
|
Президенту в его окружении не нужны мужчины и женщины, умеющие только
|
||||||
|
поддакивать. Если он говорит "нет", мы все говорим "нет".
|
||||||
|
-- Элизабет Доул, помощница президента Рейгана
|
||||||
|
%
|
||||||
|
"Радость моя, мы живем в переходную эпоху", говорил Адам Еве по дороге из
|
||||||
|
рая.
|
||||||
|
-- У. Инге
|
||||||
|
%
|
||||||
|
"С нами такого случиться не может" - это фраза номер один в списке
|
||||||
|
знаменитых последних слов.
|
||||||
|
-- Дэвид Кросби
|
||||||
|
%
|
||||||
|
Самая большая ложь - это неверно понятая правда.
|
||||||
|
-- Уильям Джеймс
|
||||||
|
%
|
||||||
|
Скрипка - инструмент для щекотания человеческих ушей при помощи трения
|
||||||
|
лошадиного хвоста о внутренности кошки.
|
||||||
|
-- Амброз Бирс
|
||||||
|
%
|
||||||
|
Среди преподавателей большинство составляют те, кто не прервет чтение
|
||||||
|
своих лекций по навигации, даже если корабль уже тонет. Следствие:
|
||||||
|
путешествие длиною в тысячу миль завершается одним-единственным шагом.
|
||||||
|
-- Джеймс Г. Борен
|
||||||
|
%
|
||||||
|
Творческое мышление, возможно, означает всего-навсего понимание, что нет
|
||||||
|
никакой особой добродетели в том, чтобы вести дела так, как их всегда вели до
|
||||||
|
нас.
|
||||||
|
-- Рудольф Флеш
|
||||||
|
%
|
||||||
|
Технический прогресс лишь снабдил нас действенными средствами для движения
|
||||||
|
назад.
|
||||||
|
-- О. Хаксли
|
||||||
|
%
|
||||||
|
То, что мы называем прогрессом, представляет собой замену одной
|
||||||
|
неприятности другою.
|
||||||
|
-- Г. Эллис
|
||||||
|
%
|
||||||
|
Учитель прикасается к вечности: никто не может сказать, где кончается его
|
||||||
|
влияние.
|
||||||
|
-- Генри Адамс
|
||||||
|
%
|
||||||
|
Человеку надлежит жить с самим собой и постоянно заботиться, чтобы это
|
||||||
|
была хорошая кампания.
|
||||||
|
-- С.И. Хьюз
|
||||||
|
%
|
||||||
|
Эксперт - это человек, знающий все больше и больше о все меньшем и
|
||||||
|
меньшем. Следствие: колледж не может обеспечить компетентность; он может
|
||||||
|
обеспечить диплом.
|
||||||
|
-- Николас Батлер
|
||||||
|
%
|
||||||
|
Эксперт - это человек, который больше уже не думает; он знает.
|
||||||
|
-- К. Хаббард
|
||||||
|
%
|
||||||
|
Я не верю в коллективную мудрость невежественных индивидуумов.
|
||||||
|
-- Т. Карлейль
|
||||||
|
%
|
||||||
|
Я не против полиции, я просто боюсь ее.
|
||||||
|
-- Альфред Хичкок
|
||||||
|
%
|
||||||
|
Я никогда не мог взять в толк, почему из-за того только, что я выражаюсь
|
||||||
|
невразумительно, никто меня не понимает.
|
||||||
|
-- Милтон Мейер
|
||||||
|
%
|
||||||
|
Пожилые люди думают, что с тех пор, как они постарели, мир только теряет,
|
||||||
|
но ничего не приобретает.
|
||||||
|
-- Жеремена Сталь
|
||||||
|
%
|
||||||
|
Меня интересует мнение не тех людей, которые разбираются в данном вопросе,
|
||||||
|
а тех, которые сами кое-что сделали в одной из областей знания.
|
||||||
|
-- Hорберт Винер
|
||||||
|
%
|
||||||
|
Случайные открытия совершают только подготовленные умы.
|
||||||
|
-- Паскаль
|
||||||
|
%
|
||||||
|
Бывают услуги настолько большие, что рассчитаться за них можно только
|
||||||
|
неблагодарностью.
|
||||||
|
-- Дюма-отец
|
||||||
|
%
|
||||||
|
"Тоже неплохо!" - сказал зять, бросив камнем в собаку, а попав в тещу.
|
||||||
|
-- Плутарх. "Пир семи мудрецов".
|
||||||
|
%
|
||||||
|
Не ковыряй в носу перочинным ножиком. Лезвие легко ржавеет.
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
Очень много - иногда вполне достаточно для женщины.
|
||||||
|
-- Из книги "Ву"
|
||||||
|
%
|
||||||
|
В жизни можно рассчитывать только на самих себя. И то не всегда.
|
||||||
|
-- Тристан Бернар
|
||||||
|
%
|
||||||
|
Все было бы очень хорошо, если бы все наши поступки можно было бы совершать
|
||||||
|
дважды.
|
||||||
|
-- Гете
|
||||||
|
%
|
||||||
|
E = mC
|
||||||
|
-- Альберт Эйнштейн
|
||||||
|
%
|
||||||
|
Человек бывает таким, каким его создал бог, но преимущественно немного хуже.
|
||||||
|
-- Сервантес
|
||||||
|
%
|
||||||
|
Две параллельных линии полюбили друг друга. Трагедия!
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
Я знаток всех "и т. д., и т. п." и я знаю, когда за ними ничего больше
|
||||||
|
не скрывается.
|
||||||
|
-- Гомес де ля Серна
|
||||||
|
%
|
||||||
|
Одна туча может погрузить в темноту весь парк, одно слово может затемнить
|
||||||
|
самое большое счастье.
|
||||||
|
-- Гомес де ля Серна
|
||||||
|
%
|
||||||
|
Тот факт, что будильник не прозвенел, изменило уже много человеческих судеб.
|
||||||
|
-- Агата Кристи
|
||||||
|
%
|
||||||
|
Заполнять жизнь - это еще не значит обогащать ее.
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
Самым серьезным достоинством современного искусства является то, что, когда
|
||||||
|
эти произведения смотрят дети, они не задают таких вопросов, на которые
|
||||||
|
обычно бывает трудно отвечать.
|
||||||
|
-- Лорд Галлюкс
|
||||||
|
%
|
||||||
|
Замужних женщин значительно больше, чем женатых мужчин.
|
||||||
|
-- По данным американской статистики
|
||||||
|
%
|
||||||
|
Совесть - это тот голос, который говорит тебе, что не надо делать именно то,
|
||||||
|
что ты только что сделал.
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
И мелкие неприятности могут отравить жизнь, если нет крупных.
|
||||||
|
-- Р. Гомес де ля Серна
|
||||||
|
%
|
||||||
|
Счастлив тот, кто ни о чем не думает.
|
||||||
|
-- Софокл
|
||||||
|
%
|
||||||
|
Я не читаю газет. Все, о чем там стоит знать, всегда кто-нибудь расскажет.
|
||||||
|
-- Лорд Галлюкс
|
||||||
|
%
|
||||||
|
Недостаточно встать рано, надо еще и проснуться.
|
||||||
|
-- Из книги "Ву"
|
||||||
|
%
|
||||||
|
Высохшую реку не благодарят за ее прошлое.
|
||||||
|
-- Рабиндранат Тагор
|
||||||
|
%
|
||||||
|
Давать советы всегда плохо, но хорошего совета тебе никто не простит.
|
||||||
|
-- Оскар Уайльд
|
||||||
|
%
|
||||||
|
Устарели не только ответы, но даже сами вопросы.
|
||||||
|
-- Хемингуэй
|
||||||
|
%
|
||||||
|
Друзья, как арбузы: случается, что из десяти ни одного хорошего не выбрать.
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
Пока слушатели во время лекции поглядывают на часы, все в порядке. Страшно,
|
||||||
|
когда они начинают удивленно подносить часы к уху.
|
||||||
|
-- Из книги "Пи"
|
||||||
|
%
|
||||||
|
Нет правила, которого нельзя было бы нарушить ради более прекрасного.
|
||||||
|
-- Л. Бетховен
|
||||||
|
%
|
||||||
|
Прекрасна молодость, когда она в движении и знает, куда приложить свои силы.
|
||||||
|
-- Менандр
|
||||||
|
%
|
||||||
|
Простим горячке юных лет
|
||||||
|
И юный жар, и юный бред.
|
||||||
|
-- А. С. Пушкин
|
||||||
|
%
|
||||||
|
Грустно думать, что напрасно
|
||||||
|
Была нам молодость дана.
|
||||||
|
-- А. С. Пушкин
|
||||||
|
%
|
||||||
|
Всего больнее знать, что счастье было так близко - и ты сам его отверг.
|
||||||
|
-- Софокл
|
||||||
|
%
|
||||||
|
Настоящий художник настолько владеет искусством, насколько оно владеет им.
|
||||||
|
-- Г. Флобер
|
||||||
|
%
|
||||||
|
Великие люди сами сооружают себе пьедестал; статую воздвигнет будущее.
|
||||||
|
-- В. Гюго
|
||||||
|
%
|
||||||
|
...заслуги отца на сына не распространяются.
|
||||||
|
-- М. Сервантес
|
||||||
|
%
|
||||||
|
Давайте жить так, чтобы даже гробовщику стало жалко, когда мы умрем.
|
||||||
|
-- Марк Твен
|
||||||
|
%
|
||||||
|
- Обладаешь ли ты разумом?
|
||||||
|
- Обладаю.
|
||||||
|
- Почему же ты не пользуешься им?
|
||||||
|
-- Марк Авелий
|
||||||
|
%
|
||||||
|
Нет такой глупости, которой нельзя было бы исправить при помощи ума,
|
||||||
|
и нет такой мудрости, которой нельзя было бы испортить при помощи глупости.
|
||||||
|
-- В. Гёте
|
||||||
|
%
|
||||||
|
Оптимист верит, что мы живем в лучшем из миров.
|
||||||
|
Пессимист боится, что так оно и есть.
|
||||||
|
%
|
||||||
|
Пессимист видит темный туннель.
|
||||||
|
Оптимист видит свет в конце туннеля.
|
||||||
|
Реалист видит, что это на них мчится поезд.
|
||||||
|
И только машинист видит трех мудаков, тупящих на рельсах.
|
||||||
|
%
|
||||||
|
Мы познаем человека не по тому, что он знает, а по тому, чему он радуется.
|
||||||
|
-- Р.Тагор
|
||||||
|
%
|
||||||
|
Если вы уверены в победе вашей национальной сборной на Евро 2004, то вы либо
|
||||||
|
дурак, либо немец.
|
||||||
|
-- М.Задорнов
|
||||||
|
%
|
||||||
|
Нет некрасивых женщин - есть только женщины, не знающие, что они красивы.
|
||||||
|
-- Вивьен Ли
|
||||||
|
%
|
||||||
|
Любая сложная технология неотличима от волшебства.
|
||||||
|
-- Артур Кларк
|
||||||
|
%
|
||||||
|
Я люблю тебя не за то, кто ты, а за то, кто я, когда я с тобой.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Ни один человек не заслуживает твоих слез, а те, кто заслуживают,
|
||||||
|
не заставят тебя плакать.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Только потому что кто-то не любит тебя так, как тебе хочется, не значит,
|
||||||
|
что он не любит тебя всей душой.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Настоящий друг – это тот, кто будет держать тебя за руку
|
||||||
|
и чувствовать твоё сердце.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Худший способ скучать по человеку – это быть с ним и понимать,
|
||||||
|
что он никогда не будет твоим.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Никогда не переставай улыбаться, даже когда тебе грустно: кто-то может влюбиться
|
||||||
|
в твою улыбку.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Возможно, в этом мире ты всего лишь человек, но для кого-то ты – весь мир.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Не трать время на человека, который не стремится провести его с тобой.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Возможно, Бог хочет, чтобы мы встречали не тех людей до того, как встретим того
|
||||||
|
единственного человека. Чтобы, когда это случится, мы были благодарны.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Не плачь, потому что это закончилось. Улыбнись, потому что это было.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Всегда найдутся люди, которые причинят тебе боль. Нужно продолжать верить людям,
|
||||||
|
просто быть чуть осторожнее.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Стань лучше и сам пойми, кто ты, прежде чем встретишь нового человека и будешь
|
||||||
|
надеяться, что он тебя поймет.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Не прилагай столько усилий, все самое лучшее случается неожиданно.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
|
%
|
||||||
|
Всё, что случаеется, имеет причину.
|
||||||
|
-- Габриэль Гарсиа
|
||||||
@@ -31,5 +31,9 @@
|
|||||||
"friday" : {
|
"friday" : {
|
||||||
"dir" : "data/friday",
|
"dir" : "data/friday",
|
||||||
"src" : "data/friday.txt"
|
"src" : "data/friday.txt"
|
||||||
|
},
|
||||||
|
"fortune" : {
|
||||||
|
"dir" : "data/fortune",
|
||||||
|
"srcdir" : "data/fortune_src"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
83
lib/fortune.pm
Normal file
83
lib/fortune.pm
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
package fortune;
|
||||||
|
# Any fortune_mod sources are suitable. Text file with "\n%\n" sentence delimeter.
|
||||||
|
|
||||||
|
use 5.018;
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
use utf8;
|
||||||
|
use open qw(:std :utf8);
|
||||||
|
use English qw( -no_match_vars );
|
||||||
|
use Carp qw(cluck croak);
|
||||||
|
|
||||||
|
use vars qw/$VERSION/;
|
||||||
|
use Exporter qw(import);
|
||||||
|
our @EXPORT_OK = qw(seed fortune);
|
||||||
|
|
||||||
|
$VERSION = '1.0';
|
||||||
|
|
||||||
|
use SQLite_File;
|
||||||
|
use MIME::Base64;
|
||||||
|
use File::Path qw(mkpath);
|
||||||
|
use conf qw(loadConf);
|
||||||
|
use botlib qw(logger);
|
||||||
|
|
||||||
|
my $c = loadConf();
|
||||||
|
my $dir = $c->{fortune}->{dir};
|
||||||
|
my $srcdir = $c->{fortune}->{srcdir};
|
||||||
|
|
||||||
|
sub seed () {
|
||||||
|
unless (-d $dir) {
|
||||||
|
mkpath ($dir) || croak "Unable to create $dir: $OS_ERROR";
|
||||||
|
}
|
||||||
|
|
||||||
|
my $backingfile = sprintf '%s/fortune.sqlite', $dir;
|
||||||
|
|
||||||
|
if (-f $backingfile) {
|
||||||
|
unlink $backingfile || croak "Unable to remove $backingfile: $OS_ERROR\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
tie my @fortune, 'SQLite_File', $backingfile || croak "Unable to tie to $backingfile: $OS_ERROR\n";
|
||||||
|
|
||||||
|
opendir (my $srcdirhandle, $srcdir) || croak "Unable to open $srcdir: $OS_ERROR";
|
||||||
|
|
||||||
|
while (my $fortunefile = readdir ($srcdirhandle)) {
|
||||||
|
my $srcfile = sprintf '%s/%s', $srcdir, $fortunefile;
|
||||||
|
# next;
|
||||||
|
next unless (-f $srcfile);
|
||||||
|
# next if (m/[\.|\$|\@]/);
|
||||||
|
open (my $fh, '<', $srcfile) || croak "Unable to open $srcfile, $OS_ERROR\n";
|
||||||
|
# set correct phrase delimiter
|
||||||
|
local $INPUT_RECORD_SEPARATOR = "\n%\n";
|
||||||
|
|
||||||
|
while (readline $fh) {
|
||||||
|
my $phrase = substr($_, 0, -3);
|
||||||
|
push @fortune, $phrase;
|
||||||
|
}
|
||||||
|
|
||||||
|
close $fh; ## no critic (InputOutput::RequireCheckedSyscalls, InputOutput::RequireCheckedOpen)
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir $srcdirhandle;
|
||||||
|
untie @fortune;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
# just return answer
|
||||||
|
sub fortune () {
|
||||||
|
my $backingfile = sprintf '%s/fortune.sqlite', $dir;
|
||||||
|
|
||||||
|
tie my @array, 'SQLite_File', $backingfile || do {
|
||||||
|
cluck "Unable to tie to $backingfile: $OS_ERROR\n";
|
||||||
|
return '';
|
||||||
|
};
|
||||||
|
|
||||||
|
my $phrase = $array[int (rand ($#array - 1))];
|
||||||
|
# decode?
|
||||||
|
utf8::decode $phrase;
|
||||||
|
untie @array;
|
||||||
|
return $phrase;
|
||||||
|
}
|
||||||
|
|
||||||
|
1;
|
||||||
|
|
||||||
|
# vim: ft=perl noet ai ts=4 sw=4 sts=4:
|
||||||
@@ -17,6 +17,7 @@ use botlib qw(weather logger trim randomCommonPhrase);
|
|||||||
use lat qw(latAnswer);
|
use lat qw(latAnswer);
|
||||||
use karma qw(karmaSet karmaGet);
|
use karma qw(karmaSet karmaGet);
|
||||||
use friday qw(friday);
|
use friday qw(friday);
|
||||||
|
use fortune qw(fortune);
|
||||||
|
|
||||||
use Exporter qw(import);
|
use Exporter qw(import);
|
||||||
use vars qw/$VERSION/;
|
use vars qw/$VERSION/;
|
||||||
@@ -113,6 +114,7 @@ sub __new_bot_message {
|
|||||||
} elsif (substr($text, 1) eq 'help' || substr($text, 1) eq 'помощь') {
|
} elsif (substr($text, 1) eq 'help' || substr($text, 1) eq 'помощь') {
|
||||||
$bot->SendGroupMessage($hash{'reply_to'}, <<"EOL" );
|
$bot->SendGroupMessage($hash{'reply_to'}, <<"EOL" );
|
||||||
!help | !помощь - это сообщение
|
!help | !помощь - это сообщение
|
||||||
|
!f | !ф | !fortune | !фортунка - рандомная фраза из сборника цитат fortune_mod
|
||||||
!friday | !пятница - а не пятница ли сегодня?
|
!friday | !пятница - а не пятница ли сегодня?
|
||||||
!lat | !лат - сгенерировать фразу из крылатого латинского выражения
|
!lat | !лат - сгенерировать фразу из крылатого латинского выражения
|
||||||
!ping | !пинг - попинговать бота
|
!ping | !пинг - попинговать бота
|
||||||
@@ -136,6 +138,11 @@ EOL
|
|||||||
$bot->SendGroupMessage($hash{'reply_to'}, karmaGet($hash{'reply_to'}, $mytext));
|
$bot->SendGroupMessage($hash{'reply_to'}, karmaGet($hash{'reply_to'}, $mytext));
|
||||||
} elsif (substr($text, 1) eq 'friday' || substr($text, 1) eq 'пятница') {
|
} elsif (substr($text, 1) eq 'friday' || substr($text, 1) eq 'пятница') {
|
||||||
$bot->SendGroupMessage($hash{'reply_to'}, friday());
|
$bot->SendGroupMessage($hash{'reply_to'}, friday());
|
||||||
|
} elsif (substr($text, 1) eq 'fortune' || substr($text, 1) eq 'фортунка' || substr($text, 1) eq 'f' || substr($text, 1) eq 'ф') {
|
||||||
|
my $phrase = fortune();
|
||||||
|
# workaround Net::Jabber::Bot outgoing message ![:print:] replacement
|
||||||
|
$phrase =~ s/\s\s+\-\-/\n \-\-/xmsg;
|
||||||
|
$bot->SendGroupMessage($hash{'reply_to'}, $phrase);
|
||||||
} else {
|
} else {
|
||||||
$hailo->learn($text);
|
$hailo->learn($text);
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user