eddy_em: (Костерок)
eddy_em ([personal profile] eddy_em) wrote2017-01-11 12:48 pm
Entry tags:

Век живи — век читай документацию!

Geany вполне способен работать с автодополнением — нужно лишь сгенерировать для него файлы с тегами. Его формат не совсем совместим с ctags, но здесь доступно описывается, что geany -g генерирует файлы с тегами, которые затем можно вставить в проект. Можно добавить в Makefile правило для автоматической перезаписи этого файла.

Таким образом, для библиотечных файлов той же opencm3 можно сгенерировать теги и автодополнение будет работать. Отсюда можно скачать уже сгенерированные теги для некоторых библиотек.

Вот так генерируется файл для libopencm3 под F0:
CFLAGS="-DSTM32F0 -DSTM32F042x6 -I/usr/local/arm-none-eabi/include" geany -g opencm3f0.c.tags /usr/local/arm-none-eabi/include/libopencm3/stm32/*.h /usr/local/arm-none-eabi/include/libopencm3/stm32/f0/* /usr/local/arm-none-eabi/include/libopencm3/cm3/*.h  /usr/local/arm-none-eabi/include/libopencmsis/core_cm3.h /usr/local/arm-none-eabi/include/libopencmsis/stm32/f0/irqhandlers.h /usr/local/arm-none-eabi/include/libopencm3/stm32/common/*.h 2>/dev/null


Жаль только, что при щелчке с ctrl по функциям/переменным файл с их определением не открывается. В перечнях плагинов я такой вещи не встречал. Будем ждать реализации...

[identity profile] eddy-em.livejournal.com 2017-01-11 08:12 pm (UTC)(link)
Ну автодополнение же! Ты начинаешь поле структуры писать, а оно тебе — фигакс, и список вываливает. Аналогично с типами, глобальными переменными и функциями. Локальные переменные, к сожалению, geany не автодополняет, а жаль...

[identity profile] dlinyj.livejournal.com 2017-01-11 08:15 pm (UTC)(link)
Аааааааааааа! Я просто никогда такого не видел, и не знал что оно бывает :)))

[identity profile] mbr.livejournal.com 2017-01-12 06:06 am (UTC)(link)
Как можно писать код без автодополнений?! Они же раза в три повышают производительность!