Version 0 of As onze regras
Updated 2010-05-05 22:23:07 by nscerqueira
"nome" é o nome de uma variável escalar. Ele pode conter qualquer caractere menos a chave que fecha. O número de substituições de variável que podem ocorrer em cada palavra é ilimitado. A substituição de variável não se aplica a palavras expressas entre chaves. 8 Substituição de seqüências com barra invertida A substituição de seqüências com barra invertida ocorre quando uma barra invertida ("\") aparece dentro de uma palavra. Em todos os casos exceto aqueles descritos abaixo, a barra invertida é removida, e o caractere seguinte é tratado como um caractere comum que integra a palavra. Isso permite que caracteres como aspas duplas, o colchete que fecha e o cifrão sejam incluídos nas palavras sem a aplicação de seus significados especiais. A seguinte tabela relaciona as seqüências com barra invertida que são interpretadas de forma especial e o valor que substitui cada seqüência. \a Alerta sonoro (campainha - BEL) (0x07). \b Retrocesso (backspace - BS) (0x08). \f Avanço de formulário (pula página -- FF) (0x0c). \n Quebra de linha (Line Feed - LF) (0x0a). \r Retorno de carro (Carriage Return - CR) (0x0d). \t Tabulação (TAB) (0x09). \v Tabulação vertical (VT) (0x0b). \<quebra de linha><espaço em branco> - Um único espaço substitui a barra invertida, quebra de linha e todas as tabulações após a quebra de linha. A seqüência de caracteres com barra invertida tem uma particularidade: ela é substituída em uma etapa à parte que ocorre antes da etapa de leitura e execução do comando. Isso significa que ela é substituída mesmo quando aparece entre chaves, e o espaço resultante é tratado como um separador de palavra a menos que ele esteja entre chaves ou aspas. \\ - Barra invertida ("\"). \ooo - Os caracteres (01234567) ooo (um, dois ou três deles) indicam o valor octal de oito bits do caractere Unicode que vai ser inserido. Os bits mais altos do caractere Unicode são 0. \xhh - Os caracteres (0123456789abcdefABCDEF) hh em hexadecimal indicam o valor hexadecimal de oito bits do caractere Unicode que vai ser inserido. O número de dígitos hexadecimais que podem ocorrer é infinito, mas todos eles são ignorados menos os dois últimos (o resultado é sempre um valor de um byte). O bit mais alto do caractere Unicode é 0. \uhhhh - Os caracteres hexadecimais hhhh (um, dois, três ou quatro deles) indicam o valor hexadecimal de dezesseis bits do caractere Unicode que vai ser inserido. A substituição de seqüências com barra invertida não ocorre em palavras expressas entre chaves a não ser a barra invertida seguida de quebra de linha, já explicada acima. 9 Comentários Se o primeiro caractere da primeira palavra de um comando for um "sustenido" (#), este sustenido e todos os caracteres seguintes até a próxima quebra de linha são considerados um comentário, logo são ignorados. O caractere de comentário só tem significado especial se estiver no início de um comando. 10 Ordem das substituições Cada caractere é processado exatamente uma vez pelo interpretador Tcl no processo de criação das palavras de um comando. Por exemplo, se houver substituição de variáveis, nenhuma outra substituição é feita no valor da variável após a substituição. Esse valor é inserido na palavra sem nenhuma outra modificação. Se houver alguma substituição de comando, os comandos dentro do comando são processados pela leitura em "efeito cascata" do interpretador Tcl. Nenhuma substituição é feita antes desse efeito cascata, e nenhuma outra substituição é feita no resultado do desdobramento do script. As substituições são feitas da esquerda para a direita, e nenhuma substituição é feita enquanto a substituição anterior não estiver terminada. Portanto, uma seqüência como...
... sempre fará com que a variável "y" tenha o valor "012". 11 Limites das substituições e das palavras As substituições não alteram os limites de cada palavra de um comando. Por exemplo: quando uma variável é substituída, todo o valor correspondente à variável pertence a uma única palavra mesmo que esse valor contenha espaços.