[Comm] Вопрос знатокам Tcl/Tk
"А.Китайкин"
=?iso-8859-1?q?cetus_=CE=C1_newmail=2Eru?=
Чт Май 5 12:53:28 MSD 2005
Уважаемые знатоки!
А не подскажет ли кто, что могло сломаться или поменяться в Tcl/Tk
где-то между Master 2.0 и Master 2.2?
Поясню суть вопроса: есть скрипт, который работает в Spring 2001 и
Master 2.0. Под Master 2.2/2.4 для запуска скрипта требуется внесение
исправлений, без которых он вываливается с ошибками. В основном
это замена двойных кавычек на фигурные скобки:
- catch "$le subwidget entry insert 0 [set ::$varname]"
+ catch {$le subwidget entry insert 0 [set ::$varname]}
- foreach v [getopt $varname] "$le appendhistory $v"
+ foreach v [getopt $varname] {$le appendhistory $v}
Здесь не понравились скобки квадратные:
- if {[catch [set variable_props($varname)]]==0} {
+ if {[catch {set variable_props($varname)}]==0} {
Из беглого взгляда в доку по Tcl/Tk я сделал единственный вывод:
конструкции до и после исправления эквивалентны. Однако результат
зависит. Измененная версия работает везде.
Есть ли основания пинать разработчиков скрипта?
С уважением, Анатолий Китайкин.
Подробная информация о списке рассылки community