обновить $ auto_path tcl-скрипта, включить в него переменную - PullRequest
0 голосов
/ 10 февраля 2020

Я новичок в сценарии tcl.

lappend может добавить путь в $ auto_path.

, но если я хочу обновить auto_path или удалить старый путь, то добавьте новый путь к $ auto_path, какая команда может это сделать?

и еще один вопрос, я хочу включить переменную в $ auto_path.

вроде

%puts $auto_path
%/usr/local/lib/tcl8.5 /usr/local/lib $(PROJECT_HOME)/tools/lib

$ (PROJECT_HOME) будет установлен перед сборкой проекта.

как его настроить?

1 Ответ

3 голосов
/ 10 февраля 2020

Вообще говоря, обрабатывайте значение auto_path как список Tcl, используя команды списка, такие как lappend. Что касается ваших c вопросов:

Я хочу включить переменную в $ auto_path.

В преамбуле вашего сценария Tcl вам нужно получить доступ к этому Переменная среды (см. tclvars) и добавьте ее в список:

if {[info exists ::env(PROJECT_HOME)]} {
   lappend auto_path $::env(PROJECT_HOME)
}

или удалите старый путь, затем добавьте новый путь

Рассмотрите возможность использования lset:

% lappend auto_path /path/to/your/tools/lib
/opt/local/lib/tcl8.6 /opt/local/lib /path/to/your/tools/lib
% lset auto_path end /another/path/to/your/tools/lib
/opt/local/lib/tcl8.6 /opt/local/lib /another/path/to/your/tools/lib
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...