В редакторе jEdit, с которым я прожил много лет, есть такая штука - "Abbreviations", совершенно незаменимая, особенно при работе со всякими многословными языками типа XSLT. Например, чтоб вставить ужасающую конструкцию:
<xsl:value-of select="$node" disable-output-escaping="yes" />
- я пишу "xvd", жму "Ctrl+;" - и вот, страшилище уже в моем редакторе, а курсор стоит там, куда надо вбить выбираемую ноду. Как этого добиться:
- Utilities / Global Options (короче - Ctrl+F12) / Abbreviations
- при необходимости - выбираем режим редактирования, где будет работать сокращение - например "xsl"
- жмем плюсик внизу
- Abbreviation: xvd
- Text to insert before carret:
- OK - наступает радость!
Кстати, в jEdit есть набор предустановленных сокращений для XSLT, и довольно осмысленный.
Теперь пробуем сделать то же самое в NetBeans. Поскольку NetBeans - это IDE, там, как и положено, есть такой функционал, с большущим комплектом опций и, разумеется, нифига не понятно и все сложно - на то и IDE :)
Итак, в моей русифицированной версии:
- Сервис / Параметры / Редакторе (OMG! так и написано) / Шаблоны кода
- Выбираем язык, например PHP
- Жмем "Новый"
- Сокращение: например, prnt
- Раскрытый текст:
echo htmlspecialchars(print_r($$${var},1));
- Сохраняем, пишем в коде prnt, жмем Tab
- Шаблон вставляется в код вот так:
echo htmlspecialchars(print_r($var, 1));
- Выделение ставится на "var" - вбиваем название переменной, которую хотим распечатать, жмем Enter - курсор уходит в конец строки.
Конструкция $$${var} - это $$ (экранированный доллар) + ${var} - параметр, который надо заполнить. В шаблоне может быть несколько параметров, фокус перемещается последовательно при заполнении и нажатии Enter.
Параметры могут использоваться несколько раз в одном шаблоне. Вот чуть более сложный пример. Создаем вот такой шаблон, обзываем "clvar" например:
${VARIABLE variableFromPreviousAssignment default="$var"} = trim(${VARIABLE editable=false});
${VARIABLE editable=false} = preg_replace('~\s+~', ' ', ${VARIABLE editable=false});
${cursor}
Теперь пишем:
$x = '123';
// вот тут мы написали clvar и нажали таб
// появилось следующее:
$x = trim($x);
$x = preg_replace('~\s+~', ' ', $x);
Ага, он нашел ближайшую присвоенную переменную в коде перед шаблоном, и использовал ее название в качестве параметра. При этом мы можем это название изменить и нажать Enter - поменяется во всем шаблоне.
Более развернутый мануал по применению шаблонов кода в NetBeans - вот тут, на русском.
Уставшим от тяжелого трудового программерского дня рекомендую забыться, окунувшись в виртуальную реальность. Вот тут http://www.free-game-club.com/war-games есть большой выбор игр-войнушек на любой вкус.
Уверен, он гораздо пиздатее!