288 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			288 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>tclvars</title>
 | ||
|   </head>
 | ||
| 
 | ||
|   <body>
 | ||
|     <h1>tclvars</h1>
 | ||
| 
 | ||
|     <p>Переменные, используемые Tcl.</p>
 | ||
| 
 | ||
|     <h2>ОПИСАНИЕ</h2> 
 | ||
| 
 | ||
|     <p>Следующие глобальные переменные автоматически создаются при
 | ||
|       запуске программ. Как правило, они ведутся автоматически и в
 | ||
|       пользовательском приложении их значения не изменяются.</p>
 | ||
| 
 | ||
|     <dl>
 | ||
| 
 | ||
|       <dt><a name="env"></a><strong>env</strong></dt>
 | ||
| 
 | ||
|       <dd><p>Эта переменная представляет собой массив, элементы
 | ||
| 	  которого соответствуют переменным окружения. Присвоение
 | ||
| 	  значения элементу массива приводит к изменению значения (или
 | ||
| 	  созданию) соответствующей переменной окружения. Удаление
 | ||
| 	  элемента массива с помощью команды <strong><a href=
 | ||
| 	  "unset.html">unset</a></strong> удаляет соответствующую
 | ||
| 	  переменную окружения. Модифицированное состояние массива
 | ||
| 	  используется для процессов - потомков, запущенных командой
 | ||
| 	  <strong><a href="exec.html">exec</a></strong>.
 | ||
| 	</p>
 | ||
| 
 | ||
| 	<p>На Windows-платформах переменные <strong>PATH</strong>,
 | ||
| 	  <strong>COMSPEC</strong> и <strong>WINDIR</strong> всегда пишутся в верхнем
 | ||
| 	  регистре. Все остальные переменные оставляются в том виде, в
 | ||
| 	  каком они заданы в операционной системе.</p>
 | ||
| 
 | ||
| 	<p>На Macintosh-платформах, на которых нет переменных
 | ||
| 	  окружения, автоматически формируемый массив <strong>env</strong>, тем
 | ||
| 	  не менее, содержит следующие элементы:</p>
 | ||
| 
 | ||
| 	<p> LOGIN, USER, SYS_FOLDER, APPLE_M_FOLDER, CP_FOLDER,
 | ||
| 	  DESK_FOLDER, EXT_FOLDER, PREF_FOLDER, PRINT_MON_FOLDER,
 | ||
| 	  SHARED_TRASH_FOLDER, TRASH_FOLDER, START_UP_FOLDER, PWD
 | ||
| 	</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><a name="errorCode"></a><strong>errorCode</strong> </dt>
 | ||
| 
 | ||
|       <dd><p>При возникновении ошибки эта переменная содержит
 | ||
|         дополнительную информацию об ошибке в форме, удобной для
 | ||
|         автоматической обработки. Эта информация содержится в виде
 | ||
|         списка из одного или более элементов. Первый элемент списка
 | ||
|         содержит имя класса ошибки. Его значение определяет формат
 | ||
|         остальной части списка. Стандартно используются следующие
 | ||
|         классы ошибок (в приложении могут определяться и
 | ||
|         дополнительные классы):</p>
 | ||
|         <dl>
 | ||
|           <dt><strong>ARITH</strong> <em>code</em> <em>msg</em></dt>
 | ||
| 
 | ||
| 	  <dd> Этот класс ошибки формируется при арифметической ошибке
 | ||
| 	    (например, при попытке делить на ноль в команде <a
 | ||
| 	    href="expr.html"><strong>expr</strong></a>). Код <em>code</em>
 | ||
| 	    определяет конкретный тип ошибки, а <em>msg</em> содержит
 | ||
| 	    текст с описанием ошибки. Возможные значения кода
 | ||
| 	    <strong>DIVZERO</strong> (попытка делить на нуль), <strong>DOMAIN</strong>
 | ||
| 	    (аргумент не принадлежит области определения функции,
 | ||
| 	    например <em>acos(2)</em>), <strong>IOVERFLOW</strong> (переполнение
 | ||
| 	    при целочисленных операциях), <strong>OVERFLOW</strong>
 | ||
| 	    (переполнение при вычислениях с плавающей запятой) или
 | ||
| 	    <strong>UNKNOWN</strong> (если не удается определить тип ошибки).
 | ||
| 	  </dd>
 | ||
| 	  
 | ||
| 	  <dt><strong>CHILDKILLED</strong> <em>pid</em> <em>sigName</em> <em>msg</em></dt>
 | ||
| 
 | ||
| 	  <dd>Этот класс ошибки используется, если выполнение процесса
 | ||
| 	    - потомка прервано сигналом. Второй элемент списка
 | ||
| 	    (<em>pid</em>) содержит в этом случае идентификатор
 | ||
| 	    прерванного процесса. Элемент <em>sigName</em> содержит
 | ||
| 	    символьное имя сигнала, например <strong>SIGPIPE</strong>, а в
 | ||
| 	    элементе <em>msg</em> содержит текст с описанием сигнала,
 | ||
| 	    например "write on pipe with no readers".
 | ||
| 	  </dd>
 | ||
| 	  
 | ||
| 	  <dt><strong>CHILDSTATUS</strong> <em>pid</em> <em>code</em></dt>
 | ||
| 
 | ||
| 	  <dd>Этот класс ошибки используется, когда процесс - потомок
 | ||
| 	    завершается с кодом ошибки. Второй элемент списка
 | ||
| 	    (<em>pid</em>) содержит в этом случае идентификатор
 | ||
| 	    прерванного процесса а третий элемент (<em>code</em>) -
 | ||
| 	    значение кода ошибки.
 | ||
| 	  </dd>
 | ||
| 	  
 | ||
| 	  <dt><strong>CHILDSUSP</strong> <em>pid</em> <em>sigName</em> <em>msg</em></dt>
 | ||
| 
 | ||
| 	  <dd>Этот класс ошибки используется, когда выполнение
 | ||
| 	    процесса-потомка приостановлено из-за сигнала. Элементы
 | ||
| 	    списка имеют тот же смысл, что и для <strong>CHILDKILLED.</strong>
 | ||
| 	  </dd>
 | ||
| 
 | ||
| 	  <dt><strong>NONE</strong></dt>
 | ||
| 
 | ||
| 	  <dd>Этот класс используется для тех ошибок, для которых
 | ||
| 	    дополнительная информация не может быть получена,
 | ||
| 	    поскольку при попытке ее выдать произошла ошибка.
 | ||
| 	  </dd>
 | ||
| 
 | ||
| 	  <dt><strong>POSIX</strong> <em>errName</em> <em>msg</em></dt>
 | ||
| 
 | ||
| 	  <dd>Этот класс используется для тех ошибок, которые
 | ||
| 	    происходят при выполнении вызовов <strong>POSIX</strong>. Второй
 | ||
| 	    элемент списка содержит символическое имя ошибки,
 | ||
| 	    например, ENOENT, а в элементе <em>msg</em> содержит текст с
 | ||
| 	    описанием ошибки, например, "no such file or directory".
 | ||
| 	  </dd>
 | ||
| 	</dl>
 | ||
| 
 | ||
|       <dt><a name="errorInfo"></a><strong>errorInfo</strong></dt>
 | ||
| 
 | ||
|       <dd>При возникновении ошибки эта переменная содержит описание
 | ||
| 	команды или процедуры, в которой произошла последняя
 | ||
| 	ошибка. Описание построено в виде описания стека, указывающего
 | ||
| 	вложенные Tcl-команды, выполнявшиеся при возникновении ошибки.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_library</strong></dt>
 | ||
| 
 | ||
|       <dd>В этой переменной хранится имя каталога, содержащего
 | ||
| 	системную библиотеку Tcl-скриптов, используемых, в частности,
 | ||
| 	при автозагрузке. Величина этой переменной возвращается
 | ||
| 	командой <a href="info.html#library"><strong>info</strong>
 | ||
| 	<strong>library</strong></a>. Начальное значение переменной формируется
 | ||
| 	в результате просмотра ряда каталогов и поиска в них
 | ||
| 	соответствующих скриптов. Если задана переменная окружения
 | ||
| 	<strong>TCL_LIBRARY</strong>, указанный в ней каталог проверяется
 | ||
| 	первым. Если переменная <strong>TCL_LIBRARY</strong> не задана или в ней
 | ||
| 	не содержатся необходимые файлы, то просматриваются еще
 | ||
| 	несколько каталогов, зависящих от расположения каталогов Tcl и
 | ||
| 	текущего каталога.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>tcl_patchLevel</strong></dt>
 | ||
| 
 | ||
|       <dd>В этой переменной хранится информация о текущей версии Tcl,
 | ||
| 	например <strong>7.3p2</strong> для второй доработки версии 7.3. или
 | ||
| 	<strong>7.4b4</strong> для четвертого бета релиза версии 7.4.  Значение
 | ||
| 	переменной возвращается командой <a
 | ||
| 	href="info.html#patchlevel"><strong>info</strong> <strong>patchlevel</strong></a>.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_pkgPath</strong></dt>
 | ||
| 
 | ||
|       <dd>Переменная содержит список каталогов, используемых для
 | ||
| 	размещения пакетов библиотек. Обычно список состоит из двух
 | ||
| 	элементов - каталога для бинарных файлов и каталога для
 | ||
| 	скриптов. Пакеты обычно устанавливаются как подкаталоги этих
 | ||
| 	каталогов. Исходное значение переменной добавляется к списку
 | ||
| 	каталогов в <strong>auto_path</strong> и используются для поиска пакетов
 | ||
| 	при выполнении команды <a href=
 | ||
| 	"package.html#require"><strong>package</strong> <strong>require</strong></a>.
 | ||
| 	Последующие изменения в <strong>tcl_pkgPath</strong> не отражаются в
 | ||
| 	переменной <strong>auto_path</strong>. Поэтому дополнительные каталоги
 | ||
| 	для поиска пакетов необходимо указывать (если это нужно)
 | ||
| 	непосредственно в переменной <strong>auto_path</strong>.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_platform</strong></dt>
 | ||
| 
 | ||
|       <dd>Эта переменная является ассоциативным массивом, в элементах
 | ||
| 	которого содержится информация о платформе. Ниже содержится
 | ||
| 	список элементов массива (расширения и приложения могут
 | ||
| 	хранить информацию о себе в дополнительных элементах этого
 | ||
| 	массива).
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>byteOrder</strong></dt>
 | ||
| 
 | ||
|       <dd>Исходный порядок байтов в слове: <strong>littleEndian</strong> или
 | ||
| 	<strong>bigEndian</strong>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>machine</strong></dt>
 | ||
| 
 | ||
|       <dd>Набор команд, исполняемых на машине, например <strong>intel</strong>,
 | ||
| 	<strong>PPC</strong>, <strong>68k</strong> или <strong>sun4m</strong>. На Unix - платформах
 | ||
| 	совпадает с величиной, возвращаемой командой <strong>uname -m</strong>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>os</strong></dt>
 | ||
| 
 | ||
|       <dd>Имя операционной системы, например <strong>Win32s</strong>, <strong>Windows
 | ||
| 	NT</strong>, <strong>MacOS</strong> или <strong>SunOS</strong>.  На Unix - платформах
 | ||
| 	совпадает с величиной, возвращаемой командой <strong>uname -s</strong>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>osVersion</strong></dt>
 | ||
| 
 | ||
|       <dd>Версия операционной системы. На Unix - платформах совпадает
 | ||
| 	с величиной, возвращаемой командой <strong>uname -r</strong>.
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>platform</strong></dt>
 | ||
| 
 | ||
|       <dd>Может принимать одно из значений <strong>windows</strong>, <strong>macintosh</strong>
 | ||
| 	или <strong>unix</strong>.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_precision</strong></dt>
 | ||
| 
 | ||
|       <dd><p>Переменная управляет числом цифр при переводе десятичных
 | ||
| 	  чисел в строки. Значение по умолчанию 12. Максимальное
 | ||
| 	  значение 17 позволяет переводить числа из двоичного
 | ||
| 	  представления в строковое и обратно без потери точности.
 | ||
| 	  Однако при этом отключается округление. В результате команда
 | ||
| 	</p>
 | ||
| 	<pre>
 | ||
| 	  expr 1.4
 | ||
| 	</pre>
 | ||
| 	<p>вернет значение 1.3999999999999999, если tcl_precision
 | ||
| 	  равна 17, и значение. 1.4 если tcl_precision равна
 | ||
| 	  12.</p>
 | ||
| 
 | ||
| 	<p>Все интерпретаторы в процессе используют одно и тоже
 | ||
| 	  значение tcl_precision. Изменение точности представления
 | ||
| 	  чисел в одном из интерпретаторов ведет к его синхронному
 | ||
| 	  изменению во всех остальных. Однако, в надежных
 | ||
| 	  интерпретаторах изменять точность нельзя.</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_rcFileName</strong></dt>
 | ||
| 
 | ||
|       <dd>Эта переменная используется при инициализации для
 | ||
| 	определения имени пользовательского фала, исполняемого при
 | ||
| 	запуске. Для <a href="wish.html">wish</a> обычно ее значение
 | ||
| 	<strong>~/.wishrc</strong> для Unix платформ и <strong>~/wishrc.tcl</strong> для
 | ||
| 	Windows платформ. Если соответствующий файл найден, он
 | ||
| 	читается командой <a href="source.html"><strong>source</strong></a>.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_rcRsrcName</strong></dt>
 | ||
| 
 | ||
|       <dd>Используется только на Macintosh платформах для задания
 | ||
| 	<strong>TEXT</strong> ресурса.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_traceCompile</strong></dt>
 | ||
| 
 | ||
|       <dd>Эта переменная позволяет управлять объемом информации,
 | ||
| 	формирующейся при компиляции Tcl в байт-код. По умолчанию
 | ||
| 	значение переменной равно 0 и никакая информация не
 | ||
| 	выводится. Если присвоить <strong>tcl_traceCompile</strong> значение 1,
 | ||
| 	то при компиляции каждой процедуры или команды верхнего уровня
 | ||
| 	на стандартный выход посылается одна строка комментариев. Если
 | ||
| 	присвоить <strong>tcl_traceCompile</strong> значение 2, то при
 | ||
| 	компиляции в стандартный вывод выдается подробный листинг. Это
 | ||
| 	бывает полезно при проблемах, возникающих в процессе
 | ||
| 	компиляции, особенно, при переводе старых программ на Tcl8.0.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_traceExec</strong></dt>
 | ||
| 
 | ||
|       <dd>Эта переменная позволяет управлять объемом информации,
 | ||
| 	выводящейся при исполнении байт-кода. По умолчанию
 | ||
| 	<strong>tcl_traceExec</strong> равна 0 и никакая информация не
 | ||
| 	выводится. Если присвоить <strong>tcl_traceExec</strong> значение 1, то
 | ||
| 	при исполнении процедур в стандартный вывод выдается одна
 | ||
| 	строка текста. Если присвоить <strong>tcl_traceExec</strong> значение 1,
 | ||
| 	то строка текста выдается также при выполнении каждой команды,
 | ||
| 	а если присвоить <strong>tcl_traceExec</strong> значение 3, то выдается
 | ||
| 	информация о выполнении каждой инструкции байт-кода. Это
 | ||
| 	бывает полезно при проблемах, возникающих в процессе
 | ||
| 	компиляции и исполнения, особенно, при переводе старых
 | ||
| 	программ на Tcl8.0.
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt><strong>tcl_version</strong></dt> 
 | ||
| 
 | ||
|       <dd>Эта переменная содержит номер версии Tcl в форме x.y.
 | ||
| 	Обычно изменение x может означать потерю совместимости с
 | ||
| 	предыдущими версиями, тогда как изменение y означает небольшие
 | ||
| 	улучшения и исправление ошибок.  Значение переменной
 | ||
| 	возвращается командой <a href=
 | ||
| 	"info.html#tclversion"><strong>info</strong> <strong>tclversion</strong></a>.
 | ||
|       </dd>
 | ||
|     </dl>
 | ||
|   </body>
 | ||
| </html>
 | 
