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

Могу:

  • Программировать на Перле — как древние CGI-приложения, так и современные, с использованием фреймворков Mojolicious, Dancer, Catalyst.

  • Программировать на PHP: в основном допиливать существующие приложения, а не писать с нуля что-то большое.

  • Настраивать CMS Drupal и WordPress, а также дорабатывать их темы оформления.

  • Настраивать и дорабатывать Open Journal Systems, включая реализацию многоязычности имён — делал это в OJS 2.4.2, 2.4.7.1, 2.4.8.1, думаю, и в Open Conference Systems смогу реализовать.

  • Кроссбраузерно верстать веб-страницы.

  • Немножко программировать на Руби (в том числе, с использованием Ruby on Rails) — наверное, на юниорском уровне.

  • Немножко программировать на ЯваСкрипте — как голый JavaScript, так и с jQuery.

  • Постоянно внушать коллегам необходимость использования багтрекера и системы контроля версий.

  • (хоть и не считаю это основными профессиональными навыками) фотографировать, петь, аккомпанировать на шестиструнной гитаре, водить легковой автомобиль, быть Дедом Морозом, набирать ноты в MuseScore и LilyPond — медленно, но красиво.


1000 рублей

Хочу от 15 USD / 1 kRUB в час.




Statt zu schlafen (нем.) — вместо того, чтобы спать

http://shoorick.ru/2016/10/18/statt-zu-schlafen/
shoorick: (Рыжий)
Задача — сделать на веб-странице косой левый край у текстового блока, то есть, нужна лесенка из строк. Ширина страницы произвольная, текст должен переноситься автоматически.

Решение — накидать слева плавающих элементов с одинаковой шириной, но разной высотой, отличающейся у соседних элементов на расстояние между базовыми линиями соседних строк. Пусть текст и обтекает эту лесенку:

Косой край

Готовый пример — http://codepen.io/shoorick/pen/MaEdPN

http://shoorick.ru/2015/10/16/incline-left-edge/
shoorick: (Рыжий)
Совершенно случайно нашёл способ быстрого создания пустого HTML-файла — достаточно написать команду:
echo | tidy > empty.html
Получается такой файл:
<!DOCTYPE html>
<html>
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 (experimental) for Linux/x86 https://github.com/w3c/tidy-html5/tree/c63cc39">
<title></title>
</head>
<body>
</body>
</html>
Проверено на tidy-html5 — я его поставил вместо обычного, не понимающего HTML5. Обычный, который можно поставить обычным путём (sudo apt-get install tidy — в Ubuntu), выдаёт:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org">
<title></title>
</head>
<body>
</body>
</html>
shoorick: (Рыжий)
Купил таблетки, читаю инструкцию: «от жёлтого до оранжевого цвета» — весьма расплывчато.
Вынимаю таблетки из упаковки —  #fc0 , даже задуматься не успел, сразу и цвет распознал, и HTML-код вспомнил.
shoorick: (Рыжий)
В ЖЖ можно автоматически постить набор ссылок на твиты, накопившиеся за сутки. Выглядит, скажем прямо, не очень. С другой стороны, если есть микроблог, почему б его не прорекламировать в обычном блоге? К тому же, содержимое этих двух блогов не совпадает.

Подсмотрел у Михаила Пищулина [livejournal.com profile] pishchulin идею — добавить блок с твитлентой на страницу своего ЖЖ — это позволит и на твиттер сослаться так, чтобы посетители журнала это увидели, и в то же время не будет засорять френдам их ленты.

Делается так:

1. Заходим в твиттер, а там — настройки → Виджеты → Создать новый. Дальше всё и так понятно: указываем нужные параметры, нажимаем кнопку «Создать виджет», после чего в поле, над которым написано «Скопируйте и вставьте данный код в HTML-код вашего сайта», появится несколько строк кода — HTML и немного яваскрипта.

2. На странице настроек оформления http://www.livejournal.com/customize/options.bml?group=sidebars можно в поле «Content of custom block (HTML is available)» вставить произвольный текст с HTML-разметкой. Вот в это поле и надо вставить код, полученный на предыдущем шаге. После чего останется нажать кнопку «Сохранить изменения» и посмотреть результат в своём ЖЖ.
shoorick: (Default)
Продолжаю ковырять transition — повернул баян на 90°.

Код с действующим примером выложен на http://jsfiddle.net/shoorick/bp7QM/ (там сразу видно всё: и код с подсветкой синтаксиса, и результат), кроме того, как и в прошлый раз, пример — на http://shoorick.ru/lj/net/accordion-horizontal.html, код — на гитхабе и под катом )
shoorick: (Default)
Разбираюсь с модными HTML5 и CSS3, а точнее, с бесскриптовой анимацией, с помощью transition. Попробовал сделать вертикальный (обычный) аккордеон — почти получилось. Ни один яваскрипт не пострадал. Работает под линуксом в Firefox 10, Opera 11.60 и Chromium 14. Под виндой в IE 8 — не работает. В остальных браузерах и ОС пока не тестировал. Modernizr пока тоже не прикручивал.

Действующий пример лежит на http://shoorick.ru/lj/net/accordion-vertical.html, код — на гитхабе и под катом )
Следующая задача — повернуть получившийся баян на 90° — с ней я почти придумал, как справиться. Дальшейшие — смена картинок и прокрутка содержимого блока без участия яваскрипта и посетителя сайта — пока туманны. Но всё равно придумаю. Или нагуглю. Хотя в девизе моей альма-матери другой порядок действий: Нагуглю или придумаю. Aut viam inveniam, aut faciam.
shoorick: (Default)
perl -nle 'print $1 while m!(http://example.com/[^" >]+)!g'
Для входящих данных
<a href="http://example.com/one">one</a> and <a href="http://example.com/two">two</a>
http://example.com/first and http://example.com/second
none

возвращает
http://example.com/one
http://example.com/two
http://example.com/first
http://example.com/second


В виде обычного перлового скрипта — на гитхабе.
shoorick: (Default)
Файрфокс игнорирует все стилевые свойства у тэга <col> кроме background-color (ну, может, и не все, но ни выравнивание текста, ни цвет букв он брать не хочет).

...а ещё боремся за почётное звание дома высокой культуры быта Даже вражеский браузер давным-давно (как минимум, с шестой версии) показывает столбцы как надо, а файрфокс — до сих пор не хочет. Абыдна!
shoorick: (Default)
Обнаружил в коде прекрасное:
[% FILTER replace('\n', '<br>') %][% FILTER replace('<', '\&lt;') %][% FILTER replace('>', '\&gt;') %][% notice.body %][% END %][% END %][% END %]
заменил на:
[% notice.body | html | html_line_break %]
Интересно, в [livejournal.com profile] ru_perlfuck примеры на Template::Toolkit принимают?
shoorick: (Default)
Увидел сегодня на UWDC ещё один метод быстрого создания презентаций — свердловчане Антон Халиков и Роман Иманкулов использовали в своих докладах S5: A Simple Standards-Based Slide Show System — систему, где презентация хранится в HTML-файле. S5, в отличие от takahashi, работает (вроде бы) в разных браузерах (а не только в файрфоксе < 3.6) — у меня оно успешно заработало в Google Chrome. Достигается это за счёт использования не специфического для мозиллы XUL-файла, описывающего интерфейс, а обычного HTML: синтаксис самого описания презентации получается более сложным по сравнению с простым текстовым описанием, применяемым в takahashi, но тому, кто знает HTML, это не страшно. Внешний вид, вроде, можно выбирать из готовых тем, а можно и перекрасить всё вручную правкой CSS-файла.

В качестве тренировки слепил коротенькую презентацию о Lingua::RU::Inflect — можно делать блиц-доклад? :-)
shoorick: (Default)
Если к веб-странице прицепить несколько стилей и указать у тэга <link> атрибут title, то есть, написать так:
<link rel="stylesheet" type="text/css" href="/css/first.css" title="Основной стиль" />
<link rel="stylesheet" type="text/css" href="/css/second.css" title="Дополнительный стиль" />
то MSIE при показе страницы использует оба стилевых файла, а вот Mozilla Firefox, Opera и Konqueror используют лишь первый (в мозилле пользователь может выбрать, какой именно из стилей следует использовать). Почему — непонятно, вроде бы rel="stylesheet", а не "alternate stylesheet".

Если убрать title хотя бы из второго тэга (или из обоих) — страница отображается с учётом обоих файлов во всех перечисленных браузерах.
shoorick: (Default)
Чтобы в спешке не забыть:
ls -lkh *pdf | perl -pe 's{^(\S+\s+){4}(.+?)\s.+?\s(\S+)$}{<li><a href="$3">$3 \&mdash; $2</a></li>}g'
Хотя, чую, есть более элегантный метод. Помнится, была команда для разбиения строк на поля...
shoorick: (Default)
В третьем файрфоксе наконец-то появилось нормальное отображение мягких переносов (&shy;), которые в стандарте HTML есть давным-давно, а все мозильные браузеры всё это время упорно его игнорировали (во втором файрфоксе их ещё нет).

Не знаю, был ли мягкий перенос в HTML 1, но в HTML 2 (стандарт опубликован в ноябре 1995) он уже встречается. Получается, разработчикам мозиллы понадобилось почти 13 лет для того, чтобы реализовать поддержку мягких переносов. Весьма неспешно...
shoorick: (Default)
Задача: надо преобразовать XML в HTML (или в XHTML — особой разницы нет).

Мысль первая — парсить ручками.
Мысль вторая — всё украдено до нас; может быть, имеет смысл взять, например, XML::Parser, распарсить XML им, а затем из получившегося дерева собрать HTML.
Мысль третья — а если пробовать XSLT? Проблема лишь одна — отсутствие знакомства с технологией. С другой стороны, надо же когда-то начинать.

Ув. тов. френды! Поделитесь, пожалуйста, опытом.
shoorick: (Default)
Нашёл распространяемый по GPL календарь, прикручиваемый к полю ввода в HTML-формах.
Работает. Есть и локализация, работающая после небольшой обработки напильником:
diff lang/calendar-ru.js.OLD lang/calendar-ru.js
37,44c37,48
< ("вск",
< "пон",
< "втр",
< "срд",
< "чет",
< "пят",
< "суб",
< "вск");

---
> ("вс",
> "пн",
> "вт",
> "ср",
> "чт",
> "пт",
> "сб",
> "вс");
>
> // First day of the week. "0" means display Sunday first, "1" means display
> // Monday first, etc.
> Calendar._FD = 1;
shoorick: (Default)
(пишу сюда, чтоб потом самому легче было искать)
Как скопировать пример в строку поиска:
<html><head>
<title>Examples &rarr; Text Field</title>
<style type="text/css">
.ex a:link, .ex a:visited	{
	text-decoration:	none;
	border-bottom:	1px dashed #666;
	color:	#666;
}
</style>
<script language="javascript">
function cp(obj)	{
	document.getElementById('what').value = obj.innerHTML;
} // function cp
</script>
</head>
<body>
<form><p>Search for <input type="text" name="what" id="what"></p>
<p class="ex">Examples:
<a href="#" onclick="cp(this); return false">apple</a>,
<a href="#" onclick="cp(this); return false">banana</a>,
<a href="#" onclick="cp(this); return false">cucumber</a></p>
</form>
</body></html>
А теперь пойдём на Яндекс, поглядим, как сделано у них.
shoorick: (Default)
Подумалось тут, что, вообще-то, есть разница между
<strike>зачёркнуто</strike> и <del>удалено</del>.
И, наверное, второе использовать правильнее.

Profile

shoorick: (Default)
shoorick

December 2016

S M T W T F S
    1 23
45678910
11121314151617
18 19 2021222324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 19th, 2017 03:10 pm
Powered by Dreamwidth Studios