Я строю программу в QT, которая будет нуждаться в определяемом пользователем файле конфигурации запуска, аналогично .vimrc
, Короче говоря, он должен определить, какие нажатия клавиш отвечают за основные команды в таких проклятиях, как интерфейс.
Я не совсем решил, какой формат использовать, но подумал, что QBS может удовлетворить все требования, так как я уже использую его для управления проектами, и на первый взгляд может показаться, что он хорошо подходит для такого рода вещей.
Идея состоит в том, чтобы файл конфигурации находился в /home/me/.programrc
, что достаточно просто. Однако я не знаю, какие интерпретаторы существуют для его синтаксиса в Qt или C ++, если таковые имеются, или он практически пригоден для использования в качестве конфигурации запуска.
Правильно ли реализована вся эта идея и существуют ли адекватные инструменты для достижения этой цели?
Благодарю.
QBS теперь устарела в пользу CMake (вместе с QMake).
Вы можете добавить файл «.qmake.conf» в тот же каталог, где находится ваш .pro файл.
В этом файле вы можете хранить параметры, которые вы можете использовать в .pro / .pri файлах.
.qmake.conf
BUILD_DIR=$$shadowed($$PWD)/build
BUILD_TESTS_DIR=$$shadowed($$PWD)/unit_tests
SCRIPTS_DIR=$$PWD/scripts
TOP_SRC_DIR=$$PWD
project.pro
DESTDIR = $$BUILD_DIR/
INCLUDEPATH += $$TOP_SRC_DIR/
Вы могли бы добавить свой конфиг нажатия клавиш в параметре DEFINES, например, для TOP_SRC_DIR:
DEFINES += "TOP_SRC_DIR=\\\"$$TOP_SRC_DIR\\\""
TOP_SRC_DIR теперь известен в вашем исходном коде как определение.
Конечно, вам нужно будет перестроить файл (ы), которые используют определение, чтобы вы могли связать определение (я) с централизованной «внешней» переменной (ами), на которую вы ссылаетесь, и принудительно пересвязывать при изменении параметров (например, PRE_TARGETDEPS) + = $ BUILD_DIR / myParams.a)
Других решений пока нет …