Нашел недавно одно очень полезную программку под емакс -- msf-abbrev. Предназначена она для работы с сокращениями (abbrev). То есть, вводишь определенное слово, если это слово совпадает с определенным сокращением, то вместо него вставляется другой текст.
Чем же интересен msf-abbrev?
* Поддержка программируемых сокращений (в принципе, возможность аналогична предоставляемым такими библиотеками как tempo или skeleton, но реализована гораздо более удачно). Подробности на сайте разработчика.
* Каждое сокращение определяется в отдельном файле (его имя определяет ключевое слово сокращения). Сокращения, которые работают только в каком-то определенном режиме (mode), хранятся в отдельном каталоге, имя которого совпадает с названием режима. Например, сокращения, которые используются во время кодировки на С хранятся в каталоге `c-mode'. ИМХО, такой способ управления сокращениями гораздо удобней, чем определять все сокращения в одном файле.
Пользуясь второй возможностью, легко написать скрипт, который из списка функций (правда, немножко обработанного sed'ом для удобства ;)) какой-то библиотеки генерирует сокращения для всех ее функций, что и продемонстрировано на данном скриншоте. В первом окне код скрипта, во втором -- тестовый код, в котором происходит вставка сокращения `qsortx' (между аргументами можно переключаться с помощью клавиш TAB и S-TAB). В нижнем окне -- непосредственно код соответствующего сокращения.
Не знаю пока, удобно ли будет использовать эти сгенерированные сокращения, но идея в любом случае интересная :)
Дом. страница: http://www.bloomington.in.us/~brutt/msf-abbrev.html.
>>> Просмотр (1024x768, 21 Kb)