Раз сейчас все стали предлагать улучшения языков программирования и IDE то предложу и я.
Сразу говорю о том, что предложение не сводится к переизобретению doxygen или xml комментов.
Очень_часто_кризис_в_названии_переменных_приводит_к_длинным_и_не_читабельным_названиям.
Причём из-за длинны этих названий исходник превращается в нечитабельную кашу и вот тут думаешь, лучше бы вместо говорящего названия часть переменных имела название в виде номера или id при наведении курсора мыши на который выскакивало всплывающее окно с описанием того, для чего предназначена эта переменная.
Отдельно от исходников создаётся база данных в которой для каждой переменной, структуры, объекта или функции создаётся запись которая содержит.
- Используемое в качестве имени id, при этом id такой чтобы быть корректным именем в рамках языка программирования.
- Не обязательно указываемое имя переменной, функции и пр.
- Объявление переменной, функции и пр.
- Название библиотеки из которой делается импорт, если не импортируется то указывается internal_object, если экспортируется то указывается export_object
- Обязательный комментарий в формате
asciidocdoxygen, который и будет выводится в сплывающем окне в первой вкладке, а во второй будет ввводится объявление. - Поле lock запрещающее изменение полей 1-4.
Формат базы данных это заголовочный файл с одним объектом и содержащий в комментариях специального формата поля 1,2,4,5 и 6, поле 3 это объявление функции как таковое.
Как это будет работать:
при создании или импорте переменной и пр. вместо объявления в .h файле создаётся запись в базе данных.
Если переменная, функция и пр. импортируется из внешней библиотеки или экспортируется то в качестве id указывается имя, при этом для экспортируемого присвоение имени обязательно, а поле lock активируется для предотвращения случайных изменений.
Для не экспортируемых объектов, функций, переменных и пр, в исходниках всегда указывается id, но при указании имени вместо id будет отображаться имя.
При экспорте исходников из IDE все id в исходниках заменяются соответствующим именем, но исходники должны быть компилируемы и без замены id на имя, как они и будут компилироваться без импорта проекта.