Недавно я таки собрался с мыслями и доработал RDot в соответствии с текущим моментом. Что это такое в целом, я уже писалраньше. Особо повторяться не буду, лучше о текущем состоянии.
Базовая версия Ruby — 1.9.3. Возможности, которых не было в 1.8.7, позволили полностью отказаться от трассировки, которая могла вызывать непонятные и нестабильные баги на сложных библиотеках.
Собран гем, что позволяет легко устанавливать/удалять/обновлять.
Помимо наследования/включения/расширения показывается вложенность пространств имен.
Этот пост для тех, кто работает с текстом в Linux, дабы они поняли свое счастье.
Вообще говоря, ввод каких бы то ни было символов с клавиатуры можно организовать разными путями, некоторые из которых (например, определение собственной раскладки) доступны и в оффтопичной системе от MS. Однако, удобных способов существенно меньше. Собственно, я буду говорить о двух, простых как в использовании, так и в настройке: «третий уровень» и Compose Key.
Несколько переработал программу — изменения не то, чтобы принципиальные, но существенные.
1. Исправлен баг с бинарными библиотеками.
2. Кроме методов, теперь выводятся и константы (можно отключить).
3. Если включен показ protected и private методов, они выделяются серым фоном.
4. Атрибуты выделяются в отдельный список, методы показываются с заголовками (список параметров).
В планах:
1. Подумать-таки над кластеризацией…
2. «Шлифовать» код, сейчас местами он неизящен.
Исходник, README со всеми параметрами командной строки и немного примеров, как и прежде — на GitHub.
Очень непривычно почти без форматирования. Лучше дам ссылку на свою Blogger-запись.
Возникло у меня желание автоматом создавать граф иерархии классов и модулей Ruby в формате DOT для последующей обработки утилитами GraphViz. Вообще-то такая возможность есть в штатном автодокументаторе RDoc, но она меня не устроила.
Немного поковырялся и написал, благо Ruby поддерживает богатые возможности самоисследования.
По ссылке подробное описание.