Типографика для русского языка

Те, кто хоть немного понимает в типографике, часто возмущается отсутствием таковой в русской раскладке под Windows.
В частности, лично меня немного раздражают всего две вещи:
1) Невозможность поставить кавычки-ёлочки (« и »).
2) Невозможность прописать длинное тире ( — ).
В связи с чем создал свою раскладку. От стандартной отличается только этими двумя пунктами.
Правый Alt + «б» = левые «ёлочки» («);
Правый Alt + «ю» = правые «ёлочки» (»);
Правый Alt + «-» = длинное тире (—). Continue reading

Настройка dokuwiki

Немножно технических развлечений …
Простейшая и очень качественная система. Понравилась мне гораздо больше знаменитой MediaWiki.
Один из самых больших плюсов (для меня) — прозрачность хранения данных.
Все данные лежат в обычных текстовых файлах, в отдельной папке. Их можно просто скопировать и перенести на новое место.
И редактировать тоже можно любым редактором, не обязательно встроенными средствами wiki.
Но вот есть у dokuwiki некоторые проблемы с разметкой. Вкратце — разметка у неё немного своя. Поэтому я, как любитель формата markdown, решил постараться добиться того, чтобы исходные текстовые файлы были как можно более универсальны.
Вначале подключаем формат markdown. Для этого, если копнуть интернет, есть три плагина: Continue reading

Плагин dokuwiki XBR: исправление

У незаменимого плагина XBR есть одна неприятная особенность. Он преобразует «перевод каретки» в тег <BR />.
Если в тексте много абзацев, то форматирование абзацев (такое как красная строка, расстояние между абзацами и т.п.) работать не будет. Весь текст у нас обрамлен тегом <P>, поэтому разумно и каждый <BR /> заменить на </P><P>, (то есть закрыть и переоткрыть абзац заново).
Решение:
1) Залезаем в папку \lib\plugins\xbr.
2) Открываем файл renderer.php.
3) Находим следующий код: Continue reading

DevExpress и RouteTable.Routes

Не, такие вещи надо записывать. Угрохать три часа и найти, наконец-то, эту строчку.
Короче, так.
DevExpress не дружит с командой

System.Web.Routing.RouteTable.Routes.MapPageRoute("sometag", "{pagename}", "~/RealPageName.aspx");

Причем не дружит частично: не проходят CallBack-и.
Куча форумов и документации твердит одно: ищи, где используешь JQuery. Но его нет.
Решение: придется отказаться от красивого перехода по страницам «первого уровня» и поменять строку на:

System.Web.Routing.RouteTable.Routes.MapPageRoute("sometag", "/<что-то>/{pagename}", "~/RealPageName.aspx");

Где найти IP-адрес для A-записи в Microsoft Azure?

Без пол-литры это найти непросто.
Открываем Azure Portal. Новый. В старом не найдете ничего.
Ищем перечень Web Apps. Находим свой приложение.
В настройках ищем «Custom domains and SSL». Это где-то посередине в самой правой части экрана.
Теперь вверху ищем маленькую кнопку «Bring External Domains».
А теперь прокручиваем далеко-далеко вниз, и там, мелким шрифтом, заветный IP-шник.
Как же просто! Убил два часа на поиски. Хотя этот параметр ДОЛЖЕН (да, именно ДОЛЖЕН) быть на самом видном месте при создании web-приложения.