Команды, о которых вы спрашиваете (find_item
, et c.), Не являются частью Tcl. Команды, которые перечислены здесь .
Я углубился в одну из них (eval_in_component
). Кажется, это команда, которая указывает c для некоторой библиотеки. К счастью, я нашел некоторую документацию (хотя вам нужно будет искать в ней) от «magi c of Google» (которую вы должны полностью попробовать сами). В частности, он эквивалентен этому в современном синтаксисе Tcl (за исключением сокрытия переменной save_component
):
set saved_component [get_current_component]
set_current_component $theComponentNameYouSupply
try {
eval $theScriptYouSupply
} finally {
set_current_component $saved_component
}
Документация выглядит более скудной (похоже, она предшествует стандарту Tcl try
команда), но принятие разумных догадок дает вышесказанное.
Точное значение get_current_component
и set_current_component
задается библиотекой c (имеет ли смысл понятие «текущий компонент» для вас?), но они будут похожи друг на друга. Шаблон в целом является общим; Я использую что-то вроде этого, например, для смены каталога на временное местоположение, в то время как выполняется конкретная команда без необходимости быть осторожным с последующим изменением.