Представление взаимодействия с компьютером
Для представления взаимодействия человека с компьютером на текстовой или другой основе могут использоваться следующие подходы:
- компьютерный вывод (подсказки, обычный вывод или сообщения об ошибках) в пределах SAMP элементов
- общие термины, описывающие ввод пользователя - внутри VAR элементов
- действительный пользовательский ввод в пределах KBD элементов
- цитируемый компьютерный программный код (источник), реализуемый в пределах CODE элементов.
Во всех подходах должны приниматься во внимание принципы деления в пределах строки и использования пробелов и символов табуляции, что может требовать вставки BR элементов или использования PRE элементов. Заметим, что логическая разметка разрешена в PRE элементах (хотя это, возможно, не самое лучшее ее использование).
Следующий пример иллюстрирует подход в контексте введения в язык программирования Perl.
Пример interact.html: <P>The following Perl script prints out its input so that each line begins with a running line number:</P> <PRE> <CODE> #!/usr/bin/perl $line = 1; while (&lt;&gt;) { print $line++, " ", $_; } </CODE> </PRE> <P>The scalar variable <CODE>$line</CODE> is of course the line counter.<P> <P>The loop construct is of the form<BR> <CODE>while (&lt;&gt;) {</CODE><BR> <VAR>process one line of input</VAR> <CODE>}</CODE><BR> </P> <P>Assuming that you have written this script (the simpler version of it) into a file named <KBD>lines</KBD>, you could test it using a command of the form<BR> <KBD>./lines</KBD> <VAR>datafile</VAR><BR> In particular, using the script as input to itself, you would do as follows (the details of system output vary from one system to another): </P> <PRE> <SAMP>lk-hp-23 perl 251 % </SAMP><KBD>./lines lines</KBD> <SAMP>1 #!/usr/bin/perl 2 $line = 1; 3 while (<>) { 4 print $line++, " ", $_; } lk-hp-23 perl 252 % </SAMP> </PRE>
Замечания к примеру:
- здесь не использовалась вложенность текстовых разметок.
- программный код мог бы быть представлен только в пределах PRE элемента без дополнительного использования внутри еще и CODE элемента, однако то, что код вложен в CODE элемент, который в свою очередь вложен внутрь PRE элемента, не нанесет вреда и может быть даже полезно в броузерах, которые для различных целей используют моноширинные шрифты.
- аналогично, использование SAMP и KBD в приведенном примере может означать, что ввод пользователя представляется отлично от компьютерного вывода. Используя таблицу стилей, Вы могли бы даже специфицировать шрифт, цвет, фон и другие свойства для этих логически различных элементов.

