Git — начинаем работать :)

Итак, продолжаю группу статей, посвязенных Git — одному из замечательных инструментов по управлению версиями текстовых файлов, а еще более точно — исходных программных текстов.

Этот пост предназначен для тех, кто приступает только работать на Git. Все нижесказанное будет предназначено для Unix окружения и оболочки Bash.

  1. Заходим в Unix, где есть bash & git Читать далее Git — начинаем работать 🙂

git — краткое введение

Давненько уже работаю с такой классной штукой, как git. Git — это программа для контроля версий программ. В дальнейшем я планирую публиковать статейки, связанные с этой темой. Но чтобы как-то начать это, решил написать этот пост — краткое ознакомление с ней. Читать далее git — краткое введение

Отличная документация Subversion на русском

Заинтересовался я сейчас изучением софта для контроля версий программ. Пока что я знаю, что CVS — старая и устаревшая платформа, SVN (Subversion) — современная, заменяющая CVS, и GIT — другая популярная система контроля версий. И встал вопрос, где и как изучить SVN (решил начать с неё). Английская дока — это, конечно, хорошо и правильно (термины часто не переводимы и меньше ошибок), но когда надо понять такой сложный программный комплекс за быстрое время, русская документация, как нельзя, кстати. И вот тут я нарыл отличную документацию SVN на русском — текст книги, изданной O’Reilly Media:

SVN-документация одним файлом HTML для чтения (рекомендую)
Обобщенный список разных форматов этой книги

P.S. Если хотите знать, чем различаются и что чем лучше — Git или SVN — читайте здесь и здесь (анг)

Кнопка «Read More» для WordPress

Только сегодня понял, как вставлять ссылки «Читать далее» в посты на главной странице сайта, через WordPress. До этого, я думал, что это делает какой-то плагин под WordPress, а выяснилось, что это делается с помощью кнопки, которая у меня под носом. Ее действие мне было трудно заметить, потому как в режиме «Просмотреть» действие этой кнопки мне было не видно (просмотр черновика показывается «как есть»).

Итак, пишем пост, там, где хотим сократить свой пост для главной страницы, ставим курсор в желаемом месте разбивки, нажимаем кнопку Кнопка "Далее" и вуаля! 🙂 На этом месте появится ссылка «Читать далее» для вашей текущей темы WordPress.

P.S. Этот пост получился очень коротким, так что такой ссылки в нем я решил не ставить 😉

WordPress и кавычки

При создании постов из WordPress я часто сталкивался с такой проблемой, как кавычки. Если я заключал слово в обыкновенные кавычки, то при публикации кавычки заменялись на угловые. Это делала тема WordPress, которую я использовал. Это вроде бы здорово! Но была проблема — часто кавычки заменялись на неправильные угловые — либо слово начиналось с ‘»’, либо заканчивалось ‘«’. Это меня жутко раздражало, но что делать я не знал. Правда нашел AddOn — Typograf, но у него есть один жирный минус — он все ваши тексты отсылает на сервера авторов плагина для переделки. Я не думаю, что кому то это очень понравится, если он будет знать, что кто-то читает то, что он написал (ведь можно случайно и пароль отправить, и личный пост и т.п..)

Пришлось написать свой плагин, только для GreaseMonkey. Читать далее WordPress и кавычки

Чем редактировать XML?

Не знаю, как у вас, но для меня большой проблемой было найти приемлемый XML редактор, чтобы и XML проверял, и бесплатный, не слишком навороченный, но чтобы данные можно было вводить, не беспокоясь об ескейпе симолов &, <> и т.п..

Для простых задач, например, для таких, когда настройки к какой либо программе надо указать с помощью XML конфиг файла, подойдет редактор XML Notepad, который сделан ненавистной многими фирмой Micro$oft.

Лично я, пришел к выводу, что все редакторы XML либо слишком навороченные и платные, либо ненавороченные и не такие удобные, как XML Notepad. Не могу понять, почему такой популярный формат имеет такую низкую поддержку на уровне редактора… Наверное, может быть потому, что XML часто генерируется программами и ими же парсится, а редактировать ручками не так восстребованно. Но иногда очень надо, а пользоваться обычным текстовым редактором — глупо (постоянно следить за ескейпингом символов)

Из плюсов нашего героя можно перечислить: простота, и понятность.

Минусы: в нем можно настроить либо \r\n, либо \n символы концовки строки, миксовать он не умеет. Можно отключить Indent (имеет имя Auto Format в настройках, не мог сразу догадаться, что это именно Indent). Как то странно, IMHO. Еще один неприятный момент, но он лежит в нормальных рамках Unicode & UTF-8 — он вставляет всегда символ BOM вначале документа. Символ этот нужен для Unicode, для UTF-8 он бесполезен. Скорее всего, это издержки того, что внутри Windows такой документ храниться в Unicode, а для него BOM часто необходим (он указывает процессору Unicode в каком порядке идут старшие и младшие байты 16 разрядной кодировки). Но, многие программы спокойно работают с BOM, так как он аннулируется UTF-8.

Но плюсы перевешивают минусы. Если привыкнуть к этому редактору, то редактировать небольшие XML с ним очень просто.

Краткое пояснение: редактор представляет собой, в общем плане, два окна — левое и правое. В левом — идут названия элементов, аттрибутов и псевдо-нод (например, #text — текстовый child, #comment — комментарий и т.п..). В правом — значения этих элементов, напротив тех, что слева. Если вам надо отредактировать готовый XML, например, какие либо настройки, и не менять структуру XML, то редактирование сводится к изменению только значений в правом окне (перемещаемся курсом вверх-вниз, нажимая Enter — редактируем, Shift-Enter — вставка новой строки в значении). Это очень удобно! А чтобы в правом окне были все значения, как на ладоне, достаточно сделать из меню View -> Expand All, или Alt+V -> Enter или Alt + V -> E. После этого можно приступать к их редактированию.

Для удобства идеалогии редактирования, все строится на понятиях node и sibling (брат/сестра в переводе). Например, даже аттрибут елемента — это тоже node, у него есть parent — елемент, чьим аттрибутом он является. Из этого вытекает простое правило — для всех них существует две команды, через меню — вставка Before и After. Before — это вставить новый sibling перед текущим, выражаясь в понятиях DOM,  After — вставить после. Есть также третья команда — Child — вставить в текущую node.