Re: Ограничения в Tcl/Tk - существуют-ли?
Здравствуйте! Переменная устанавливалась с помощью set, попробовал и variable, unset не используется: >>> … (file "tk.tcl" line 1750) >>> Мммм, а остальные 1747 строчек надо угадать? В столь большом файле >>> очень много ошибок сделать можно. И поставленная не туда фигурная >>> скобка, к сожалению, может запортить разбор всего файла. >> Постеснялся засорять письмо - вот ссылка на файлик >> 44: pack [button .button1 -text "Считать" -command { >> 45: variable jd [exec swetest -b$date -ut$time -fJ -head -p0] >> 46: variable jd1 [expr [exec swetest -b$date -ut$time -fJ -head >> -p0]-1.0/86400.0] 47: variable jd2 [expr [exec swetest -b$date -ut >> $time -fJ -head -p0]+1.0/86400.0] … >> 1745: }] < [expr {$h1 - 0.0}] && $ma2 > $ma3} {lappend ma9 12}}] > С 44 по 1745 строку идёт команда [button .button1 …], а конкретнее > скрипт в параметре -command у неё. Дальнейший код, на котором и > вылетает ошибка, исполняется *до* исполнения скрипта, навешенного на > кнопку, потому он и не видит значения переменной h1, задаваемого > внутри скрипта на кнопке. > Совет: используйте функции, форматируйте код отступами. Будет гораздо > легче читать код и искать ошибки. Александр! Благодарю за добрый совет! Сделаю всё более аккуратно и "внутри кнопки". -- Кабанов Евгений Константинович - http://kabanov.tel -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150123104540.325b2f6b329033846002b...@kabanov.tel
Re: Ограничения в Tcl/Tk - существуют-ли?
On Wed, 21 Jan 2015 20:56:40 +0300 Кабанов Евгений Константинович wrote: > Здравствуйте! > > >> Переменная устанавливалась с помощью set, попробовал и variable, > >> unset не используется: > > … > >> (file "tk.tcl" line 1750) > > Мммм, а остальные 1747 строчек надо угадать? В столь большом файле > > очень много ошибок сделать можно. И поставленная не туда фигурная > > скобка, к сожалению, может запортить разбор всего файла. > > Постеснялся засорять письмо - вот ссылка на файлик > > 44: pack [button .button1 -text "Считать" -command { > 45: variable jd [exec swetest -b$date -ut$time -fJ -head -p0] > 46: variable jd1 [expr [exec swetest -b$date -ut$time -fJ -head > -p0]-1.0/86400.0] > 47: variable jd2 [expr [exec swetest -b$date -ut$time -fJ -head > -p0]+1.0/86400.0] > … > 1745: }] < [expr {$h1 - 0.0}] && $ma2 > $ma3} {lappend ma9 12}}] С 44 по 1745 строку идёт команда [button .button1 …], а конкретнее скрипт в параметре -command у неё. Дальнейший код, на котором и вылетает ошибка, исполняется *до* исполнения скрипта, навешенного на кнопку, потому он и не видит значения переменной h1, задаваемого внутри скрипта на кнопке. Совет: используйте функции, форматируйте код отступами. Будет гораздо легче читать код и искать ошибки. -- Alexander Galanin -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150121215200.094a1f2ae42e932b31168...@galanin.nnov.ru
Re: Ограничения в Tcl/Tk - существуют-ли?
Здравствуйте! >>> Переменная устанавливалась с помощью set, попробовал и variable, >>> unset не используется: >> … >>> (file "tk.tcl" line 1750) >> Мммм, а остальные 1747 строчек надо угадать? В столь большом файле >> очень много ошибок сделать можно. И поставленная не туда фигурная >> скобка, к сожалению, может запортить разбор всего файла. > Постеснялся засорять письмо - вот ссылка на файлик > https://yadi.sk/d/S_QjPK4Be9LTZ Tcl в этом скрипте обрабатывает данные, формируемые программой swe-basic-data и swe-standard-data; используется библиотека libswe0 и libswe-dev. -- Кабанов Евгений - http://kabanov.tel -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150121211032.e66ee4618d008e944ee80...@kabanov.tel
Re: Ограничения в Tcl/Tk - существуют-ли?
Здравствуйте! >> Переменная устанавливалась с помощью set, попробовал и variable, >> unset не используется: > … >> (file "tk.tcl" line 1750) > Мммм, а остальные 1747 строчек надо угадать? В столь большом файле > очень много ошибок сделать можно. И поставленная не туда фигурная > скобка, к сожалению, может запортить разбор всего файла. Постеснялся засорять письмо - вот ссылка на файлик https://yadi.sk/d/S_QjPK4Be9LTZ -- Кабанов Евгений - http://kabanov.tel -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150121205640.3e5b098c00fd6a56959ce...@kabanov.tel
Re: Ограничения в Tcl/Tk - существуют-ли?
On Wed, 21 Jan 2015 18:05:22 +0300 Кабанов Евгений Константинович wrote: > Переменная устанавливалась с помощью set, попробовал и variable, unset > не используется: … > (file "tk.tcl" line 1750) Мммм, а остальные 1747 строчек надо угадать? В столь большом файле очень много ошибок сделать можно. И поставленная не туда фигурная скобка, к сожалению, может запортить разбор всего файла. -- Alexander Galanin -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150121204301.1669a555a6087dee38414...@galanin.nnov.ru
Re: Ограничения в Tcl/Tk - существуют-ли?
Здравствуйте! >> Вопрос возник по результатам сбоя в работе скрипта (can't read >> "h1": no such variable while executing). Это самое h1 неоднократно >> участвует в > Ошибка тут "no such variable", а "while executing" значит, что дальше > будет напечатан стек вызовов. > Возможно, переменной чуть ранее кто-то сделал unset. Или она не видна: > импортирована из неправильного пространства имён или просто задана в > одной функции, а читается в другой, но при этом они не помещены в > общее пространство имён вызовом "variable h1". Переменная устанавливалась с помощью set, попробовал и variable, unset не используется: variable h1 [exec swetest -b$date -house$longitude,$latitude4,k -ut $time -head -p -fPl | grep "house 1" | sed "s/house 1//g" | sed "s/\ //g"] всё равно пишет can't read "h1": no such variable while executing "if {$h1 < $h2 && $h1 < $ve1 && $ve1 < $h2} {lappend ve9 1} elseif { $h2 < $h1 && $h1 < $ve1 && $ve1 < 360.0} {lappend ve9 1} elseif { $..." (file "tk.tcl" line 1750) Ошибиться конечно же мог, но не могу понять, почему сбой не сразу, а только на 8-ом или 9-ом расчёте - всё идентично в коде, код для следующего расчёта берётся от предыдущего и первые восемь расчётов безупречны... -- Кабанов Евгений - http://kabanov.tel -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150121180522.f7d70dfeb66ad4d4eade7...@kabanov.tel
Re: Ограничения в Tcl/Tk - существуют-ли?
On Tue, 20 Jan 2015 18:38:09 +0300 Кабанов Евгений Константинович wrote: > Вопрос возник по результатам сбоя в работе скрипта (can't read "h1": no > such variable while executing). Это самое h1 неоднократно участвует в Ошибка тут "no such variable", а "while executing" значит, что дальше будет напечатан стек вызовов. Возможно, переменной чуть ранее кто-то сделал unset. Или она не видна: импортирована из неправильного пространства имён или просто задана в одной функции, а читается в другой, но при этом они не помещены в общее пространство имён вызовом "variable h1". -- Alexander Galanin
Ограничения в Tcl/Tk - существуют-ли?
Здравствуйте! Существуют-ли в Tcl/Tk какие-либо ограничения на размер строк, число строк кода, количество переменных и т.д. и т.п.? Вопрос возник по результатам сбоя в работе скрипта (can't read "h1": no such variable while executing). Это самое h1 неоднократно участвует в расчётах и вдруг такая ошибка. Особенно непонятно это потому, что абсолютно идентичные куски кода использовали эту переменную много раз до этого и всё было в порядке. Прошу направить в нужном направлении. -- Кабанов Евгений - http://kabanov.tel -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150120183809.a12e3cfa955c2c28fbdfa...@kabanov.tel