更新 tcl 脚本的 $auto_path,在其中包含一个变量
update $auto_path of tcl script,include a variable in it
我是 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) 将在项目构建之前设置。
如何设置?
一般来说,使用 lappend 等列表命令将 auto_path
的值视为 Tcl 列表。至于你的具体问题:
I want to include a variable in $auto_path.
在您的 Tcl 脚本的序言中,您需要访问此环境变量(请参阅 tclvars
)并将其附加到列表中:
if {[info exists ::env(PROJECT_HOME)]} {
lappend auto_path $::env(PROJECT_HOME)
}
or delete an old path,then add a new path
考虑使用 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
我是 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) 将在项目构建之前设置。
如何设置?
一般来说,使用 lappend 等列表命令将 auto_path
的值视为 Tcl 列表。至于你的具体问题:
I want to include a variable in $auto_path.
在您的 Tcl 脚本的序言中,您需要访问此环境变量(请参阅 tclvars
)并将其附加到列表中:
if {[info exists ::env(PROJECT_HOME)]} {
lappend auto_path $::env(PROJECT_HOME)
}
or delete an old path,then add a new path
考虑使用 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