# O Manual do &ksirc;

## Introdução

O &ksirc; é o cliente de &irc; por omissão para o &kde;. Ele suporta a programação recorrendo a Perl e tem um conjunto de compatibilidades com o &mirc; para um uso geral.

## Utilizar o &ksirc;

### Se você nunca usou o &irc; antes...

De forma simples, o &irc; é um protocolo de conversação, definido por normas oficiais da Internet e que é capaz de roubar muitas horas da sua vida. Para usar o &irc;, você precisa de se ligar a um servidor e de se juntar a um canal (equivalente a uma sala de conversação).

Para se ligar a um servidor, abra o &ksirc; e seleccione Ligações Novo Servidor... ou carregue em F2. Na janela que aparece, seleccione um grupo na lista mais à esquerda e o servidor na lista do meio. O porto, mostrado à direita, será sempre o 6667. Será mostrada uma nova janela com as mensagens enviadas pelo servidor para o cliente. Quando estas mensagens acabarem de passar, você poderá seleccionar o seu canal. Para mostrar uma lista dos canais disponíveis, escreva ``/list``. Para se ligar a um canal escreva: ``/join` `#nome_canal``. Para sair de um canal, basta escrever ``/part``.

Isto é o básico; para saber alguma informação mais detalhada, continue a ler...

### Bases do &ksirc;

#### Servidores

O &ksirc; permite-lhe ligar-se a um conjunto arbitrário de servidores. Para se ligar a um servidor, seleccione a opção Ligações Novo Servidor ou carregue em F2.A janela Ligar ao Servidor aparecerá, onde você poderá seleccionar um Grupo, depois um Servidor e também um Porto onde se ligar.

Basta depois carregar em Ligar quando terminar, para que apareça uma nova janela correspondente ao servidor. Você poderá manter o registo dos servidores a que se encontra ligado na janela do &ksirc; Controlo do Servidor.

Você poderá obter uma ajuda para a maioria dos comandos de &irc; se escrever `/help `nome_comando``. Se escrever somente `/help` irá dar uma lista dos comandos disponíveis.

#### Canais

Você poder-se-á ligar aos canais com o comando normal do &irc; ``/join` `#nome_canal`` , se seleccionar a opção Ligações Entrar no Canal... ou se carregar em F3.

Os canais a que se encontra ligado são mostrados na janela Controlo do Servidor por baixo do servidor a que pertencem. Para abandonar um canal, você poderá invocar o comando `/part`, seleccionar a opção Canal Fechar ou carregar em &Ctrl;W.

#### Opções por Canal

O menu Canal, disponível em qualquer janela de canais, contém algumas opções úteis:

&Ctrl;S Gravar num Registo...

- Grava o conteúdo de um canal num ficheiro.

Hora

- Se estiver seleccionado, antecede tudo o que foi dito no canal com a data em que foi dito, no formato [HH:MM:SS]

&Alt;C T Tabela ASCII

- Mostra uma tabela com os caracteres ASCII, a partir da qual poderá escolher os caracteres que desejar.

&Alt;C P Apitar ao Mudar

- Se for seleccionada a opção, o &ksirc; emite um toque de cada vez que algo é dito num canal.

#### Opções do Utilizador

Num canal, a lista de utilizadores é mostrada ao longo do lado direito. Se carregar com o botão direito no nome de um utilizador dessa lista, aparecer-lhe-á um menu de contexto com opções relativamente intuitivas. Estas acções poderão ser configuradas (alterar a ordem, adicionar ou remover outras) na janela 'Configurar o KSirc....' da página do Menu do Utilizador. As acções por omissão são as seguintes:

Actualizar as Alcunhas

- Envia uma mensagem para o servidor para pedir de novo a lista dos utilizadores no canal. Isto garante que a lista dos utilizadores está actualizada.

Seguir

- Realça o nome do utilizador em todas as mensagens que eles enviam para o canal. Deste modo, você poderá seguir o tópico de conversação de uma dada pessoa num canal ocupado. A cor do nome do utilizador é escolhida aleatoriamente.

Não Seguir

- Deixa de seguir o utilizador para os canais onde ele vai.

Quem é

- Envia uma pesquisa de &CTCP; para saber quem é o utilizador, obtendo algumas informações sobre ele, como o nome da sua máquina e o servidor a que se encontra ligado.

Ping

- Envia um pedido de 'ping' do &CTCP; para o utilizador, de modo a saber o seu tempo de eco.

Versão

- Envia um pedido de versão por &CTCP; para o utilizador, de modo a saber que programa ele está a usar.

Abusar

- Abusa do utilizador de uma de várias formas engraçadas.

Os comandos que se seguem só estão disponíveis se você for um operador do canal:

Expulsar

- Retira o utilizador do canal.

Banir

- Impede o utilizador de se ligar ao canal.

Acolher

- Retira a ordem de proibição do utilizador se poder ligar ao canal.

Op

- Dá ao utilizador privilégios de operador.

Deop

- Retira os privilégios de operador do utilizador.

### Ligação Automática

Se você tiver um conjunto de servidores e/ou canais aos quais se liga sempre que usa o &ksirc;, então você poderá configurar o &ksirc; para se ligar automaticamente a eles: na janela de Controlo do Servidor, seleccione Configuração Configurar o KSirc... e, na janela que aparece, seleccione a página de Ligação Automática. Para adicionar um canal a um servidor novo, preencha os campos Servidor e Canal, carregando depois no botão Adicionar. Para adicionar outro canal neste servidor, seleccione o nome do servidor na árvore, indique o nome do canal no campo Canal e carregue em Actualizar/Adicionar. Você poderá repetir este processo tantas vezes quantas desejar para adicionar vários servidores e canais para o &ksirc; se ligar a eles.

## Configuração do &ksirc;

### Introdução à Configuração

A janela de configuração do &ksirc; está disponível através da opção Opções Preferências... na janela Controlo do Servidor do &ksirc;.

### A Página Aparência e Comportamento

#### Modo de Janelas

Modo SDI (antigo)

- Faz com que o &ksirc; use o modo de interface de documentos únicos, no qual cada novo canal ou janela de `/query` terá a sua própria janela em separado.

Modo MDI paginado (XChat)

- Faz com que o &ksirc; use o modo de interface para vários documentos, com o estilo do XChat, no qual cada novo canal ou janela de `/query` terá uma página respectiva na janela principal do &ksirc;. Cada página poderá ser puxada para a frente se carregar no seu separador respectivo, e você poderá mudar de página para página com o &Alt;Esquerda e &Alt;Direita.

#### Papel de Parede

Na secção do Papel de Parede, você poderá alterar a imagem que é colocada no fundo das suas janelas do &ksirc;. Você poderá indicar o nome do ficheiro a usar no campo de texto, ou escolher o ficheiro usando o botão à direita do mesmo campo de texto. Os ficheiros de imagens terão de estar no formato &GIF;, JPEG ou PNG. É mostrada uma antevisão da imagem à direita da janela.

Se não quiser um papel de parede, basta carregar com o botão direito no campo da localização e escolher Limpar no menu de contexto; em alternativa, remova a localização do papel de parede e carregue em Aplicar. Não será usado mais nenhum papel de parede.

### A Página Geral

#### Opções Globais

Acoplar na bandeja do sistema

- Isto permite ao KSirc ser acoplado na bandeja do sistema. Por omissão, esta opção não fica activa. Quando o KSirc ficar acoplado na bandeja do sistema, poderá aceder às várias opções se carregar no ícone do KSirc. Quando fechar a janela do KSirc, o ícone irá permanecer na bandeja do sistema até que você saia do KSirc.

Janela de extracção de cores

- Se estiver seleccionada a opção, é apresentada uma janela onde você poderá seleccionar a cor com que o seu texto é apresentado quando carregar em &Ctrl;K. Caso contrário, você terá de escrever os códigos de cores manualmente. Veja também sectcolors. Esta opção está seleccionada por omissão.

Auto-criar a janela

- Se estiver seleccionada, o &ksirc; irá criar automaticamente uma nova janela para os utilizadores que enviarem um comando `/msg` para si. Se não estiver, todo o texto que for enviado para si com o `/msg` é mostrado na janela actual e você poderá usar o `/query `utilizador`` para criar uma janela onde poderá conversar com esse utilizador. Esta opção está seleccionada por omissão.

Auto-juntar de novo

- Volta a ligar-se aos canais automaticamente se se estiver desligado.

Auto-criar em caso de aviso

- Se alguém lhe enviar um /notice, então se esta opção estiver assinalada, irá aparecer uma janela nova.

Anunciar as mensagens de ausência

- Se esta opção estiver assinalada, irá ver as mensagens quando um utilizador seleccionar a opção de ausência. Por omissão, esta opção não estará assinalada. Por omissão, está.

Completação de alcunhas

- Se estiver seleccionada a opção, activa a completação dos nomes dos utilizadores. A completação funciona da seguinte maneira:

  1. Escreva as primeiras letras do nome do utilizador.

  2. Carregue em TAB. O texto que você escreveu será completado para corresponder ao nome do utilizador, mesmo que inclua mudanças de capitalização. Por exemplo, `jo<TAB>` fica igual a `Jose` se existir um utilizador chamado Jose no canal.

  3. Se mais do que um utilizador do canal corresponder ao texto que escreveu, será escolhido o primeiro nome da lista. Se carregar em TAB várias vezes, mostra o próximo utilizador da lista. Por exemplo, se existirem os utilizadores ZeNuno e ZePires num canal, e você escrever `Ze<TAB>`, o texto será completado primeiro com `ZeNuno` e se carregar de novo em TAB, irá mudar para `ZePires`.

Usar a lista de alcunhas colorida

- Se estiver seleccionado, irá usar as cores definidas na página Cores da janela Configurar o KSirc para colorir as alcunhas.

Mostrar o tópico no título

- Mostra o tópico do canal actual no título da janela. Se não estiver seleccionada a opção, o tópico só é mostrado dentro da janela.

Mensagens passivas da bandeja

- Esta opção só estará activa se a opção 'Acoplar na bandeja do sistema' estiver assinalada. Se estiver, as janelas passivas irão aparecer acopladas à bandeja do sistema.

Campo de texto de uma linha

- Se esta opção não estiver seleccionada, o campo de texto onde você escreve a sua mensagem em cada canal expandir-se-á para várias linhas, dependendo do tamanho do texto. Se esta opção estiver seleccionada, só será usada uma linha e isto irá significar que não verá o início do texto que está a escrever se for maior que uma linha.

Comprimento do Histórico

- Guarda este número de linhas de conversação para cada janela, o que lhe permite subir na janela e ver o que já foi dito.

Gravar o histórico automaticamente

- Se esta opção estiver seleccionada, é gravado o histórico de mensagens privadas. Quando abrir uma janela privada pela segunda vez com o mesmo utilizador, irá ver um registo (o histórico) da sua conversa anterior com ele.

#### Opções por Canal

Sobrepõe-se às opções do canal existentes

- Se esta opção estiver seleccionada, a configuração nesta página sobrepor-se-ão às opções de cada canal, de modo que esta configuração será aplicada em cada canal, independentemente da sua configuração do canal no menu Canal. Esta configuração só irá funcionar até à próxima vez que abrir a janela de configuração e será desactivada depois. Isto acontece porque, provavelmente, não irá querer sobrepor-se às opções existentes do canal para sempre.

Hora

- Antecipa tudo o que for dito no canal com a hora em que foi dito, no formato [HH:MM:SS].

Mostrar o tópico

- Mostra o tópico do canal no topo de cada janela do canal.

Apitar ao mudar

- Se estiver seleccionada a opção, é tocada a campainha do sistema sempre que um utilizador na sua lista de `/notify` se ligar ao servidor de &irc; onde você se encontra.

Activar o registo

- Cria ficheiros de registo para cada canal e dia. Estes ficheiros de registo são gravados em $KDEHOME/share/apps/ksirc/logs/ e os ficheiros serão semelhantes ao seguinte: $KDEHOME/share/apps/ksirc/logs/#nome-canal_ano_mes_dia_servidor.log

Esconder as mensagens de saída/ligação

- Não mostrar as mensagens de ligação/saída. Isto é útil num canal com muitas pessoas.

Codificação por omissão

- Corrige a codificação por omissão para todos os canais. Escolha a codificação na lista.

### A Página Arranque

Aqui você poderá configurar as opções de arranque do &ksirc;.

#### Servidor

#### Configuração do Nome

Alcunha

- Indica o nome do seu utilizador de &irc;.

Alcunha Alternativa

- Indica o nome a usar se a sua escolha já estiver a ser usada por outro utilizador.

Nome Verdadeiro

- O seu nome verdadeiro, tal como é devolvido por uma pesquisa `/whois` sobre o seu utilizador.

ID do Utilizador

- O seu nome verdadeiro, tal como é devolvido por uma pesquisa `/whois` sobre o seu utilizador.

#### Lista de Notificações

Aqui você poderá indicar uma lista de utilizadores que você irá querer adicionar à sua lista `/notify` no arranque. Você será avisado quando algum destes utilizadores se ligar.

### A Página Cores

Aqui você poderá configurar a utilização das cores por parte do &ksirc;.

#### Configuração das Cores de Conversação

Aqui você poderá definir as cores para cada um dos tipos de texto. Se carregar no botão colorido à direita da legenda de cada tipo de texto, irá aparecer uma janela de selecção de cores na qual poderá escolher a cor com que quer apresentar este tipo de texto.

#### Cores das Alcunhas

As opções Texto: e Fundo: definem as cores para o texto e o fundo dos nomes dos utilizadores nas janelas de conversação. A opção Cor das mensagens que contêm a sua alcunha: define a cor das mensagens que aparecem num canal que contenha o seu nome do utilizador.

#### Códigos de cores

Aqui você poderá definir se o &ksirc; irá permitir os códigos de cores nativos (ver em sectcolors) e também se são permitidos os códigos de cores do &mirc;.

### A Página Menu do Utilizador

Esta página permite a configuração do menu do RMB (Botão Direito do Rato) para a lista de alcunhas que se encontra à direita de cada canal. Quando carregar com o botão direito numa alcunha, ficam definidas algumas acções por omissão. São as acções apresentadas à esquerda. Poderá alterar a ordem destas acções, remover algumas e adicionar outras.

### A Página Servidor/Canal

Aqui estão listados os servidores e canais a que se pode juntar com a opção novo Servidor (F2) e Novo Canal (&Ctrl;N) com o menu Canal.

#### Servidor

Poderá adicionar aqui os servidores que deseja usar. Escreva o nome do servidor no campo e carregue no botão para Adicionar o Servidor à Lista. Se quiser remover um servidor da lista, carregue no nome do servidor e depois no botão Remover o Servidor da Lista.

#### Canais

Poderá adicionar aí os canais a que se deseja ligar. Escreva o nome do canal no campo e carregue no botão Adicionar o Canal à Lista. Se quiser remover um canal da lista, seleccione o nome do mesmo e depois carregue no botão Remover o Canal da Lista.

### A Página Ligar Automaticamente

#### Configuração da Ligação Automática

Poderá indicar aqui o servidor e os nomes dos canais aos quais se deseja ligar directamente quando o KSirc arranca.

Precisa de usar primeiro a janela de Configuração da Ligação Automática para adicionar canais novos. Indica aqui o nome do servidor. O porto do servidor está definido por omissão para a maioria dos servidores. Se não tiver a certeza, deixe estar a opção como está. Normalmente os servidores não pedem senhas, por isso, se não tiver uma senha, deixe o campo de Senha em branco. Depois adicione um nome de canal e carregue no botão Adicionar. O canal irá aparecer na Lista de Ligações Automáticas.

Se quiser adicionar mais canais para o mesmo servidor, carregue no servidor, na lista de Ligações Automáticas, para que o nome do servidor apareça na janela de Configuração da Ligação Automática. Escreva o nome do canal no campo Canal e carregue em Actualizar/Adicionar.

Para remover um canal da lista de Ligações Automáticas, carregue no nome do canal na lista e depois no botão Remover.

### A Página Tipos de Letra

Poderá alterar aqui o tipo de letra da janela principal. Seleccione o tipo de letra que deseja e carregue então no botão Aplicar para antever a alteração. O Ok aplica as alterações e sai da janela.

## Cores do &ksirc;

O &ksirc; segue o esquema de cores usado pelo &mirc;, bem como uma modificação para as pessoas mais aptas no uso doméstico.

    <fg> == texto
    <bg> == fundo
    [] == opcional

### Compatibilidade com o &mirc;

Formato:

- O `0x03<fg>[,<bg>]` define a cor do texto e do fundo

- O `0x03` repõe nos valores predefinidos para essa linha

### Nativo do &ksirc;

Formato:

- O `˜<fg>[,<bg>]` define a cor do texto e de fundo

- O `˜c` repõe nos valores predefinidos

- O `˜b` põe o texto em negrito

- O `˜u` põe o texto a sublinhado

- O `˜i` põe o texto em itálico

- O `˜r` põe o texto em modo invertido de cores

Porque é que se mudou o &ksirc; para usar o ˜ em vez do 0x03 (&Ctrl;C)? Bem, é mais difícil de usar o 0x03 nos programas e nem todas as funções do C parecem gostar dele. O `˜`letra`` também permite mais comandos sem interferir nas alterações futuras do &mirc;.

### Número das Cores

1. branco

2. preto

3. azul

4. verde

5. vermelho

6. castanho

7. roxo

8. laranja

9. amarelo

10. verde claro

11. azul-cião

12. azul-cião claro

13. azul claro

14. cor de rosa

15. cinzento

16. cinzento claro

### Enviar Negrito, Sublinhado, Invertido e Cores

Você poderá usar as seguintes combinações de teclas para inserir os códigos de controlo no texto:

- &Ctrl;B para o texto em negrito

- &Ctrl;U para o texto sublinhado

- &Ctrl;R para o texto invertido

- &Ctrl;K para o texto colorido

- &Ctrl;O para o texto normal

### Exemplos

Para sublinhar uma única palavra numa frase:

1. Carregue em &Ctrl;U

2. Escreva a palavra

3. Carregue em &Ctrl;U de novo

Só o texto rodeado pelos códigos de início e de fim é que será afectado. Você poderá usar este método com todos os outros códigos de controlo.

O código de controlo &Ctrl;K é ligeiramente diferente porque lhe permite indicar um número de cor. Para colorir uma única palavra numa frase:

1. Carregue em &Ctrl;K

2. Escreva um número entre 0 e 15

3. Escreva a palavra

4. Carregue em &Ctrl;K de novo

Se você quiser também alterar a cor de fundo de uma palavra, você teria de indicar dois números separados por uma vírgula em vez de apenas um número. O primeiro número é a cor do texto, enquanto o segundo é a cor de fundo. As cores vão de 0 a 15, e o índice encontra-se na secção anterior.

Você poderá rodear o texto com vários códigos de controlo, por isso poderá ter por exemplo uma palavra a negrito, sublinhada e colorida.

## Filtros

### Regras de Filtragem e Como Criá-las

Se você não conseguir perceber de todo, espere. O objectivo futuro será criar um bom construtor de filtros onde você poderá apenas carregar em botões para o conseguir. Até lá, ainda levará algum tempo.

O filtro tenta encontrar o texto de correspondência e depois usar o De e o Para como uma substituição. A correspondência e as substituições são todas expressões regulares do Perl. As regras são avaliadas por ordem descendente. A regra de topo é avaliada primeiro, passando à segunda a contar de cima, &etc;. Todos os textos são avaliados como:

O `$`nome`` é expandido para a variável de ambiente ``nome``. Isto é feito imediatamente quando você introduz a regra e não se irá alterar a partir daí. Por isso, a sua utilidade será limitada.

O `$$`nome`` é substituído pela variável de Perl `$`nome`` durante a correspondência. Esta poderá ser composta por sub-sequências de texto como o `$1` ou `$2` na substituição, ou por variáveis normais disponíveis no ksirc (como a `$nick`, `$channel`, &etc;).

O `˜`nome`˜` prefixado uma e só uma vez à linha irá enviar a linha de texto para a janela chamada `nome`. Se a janela não existir irá para a última janela que estava em primeiro plano. Existem várias janelas especiais, todas elas antecedidas de um único `!`:

`!default`

- A janela seleccionada no momento. Garante-se que existe.

`!all`

- Envia para todas as janelas. Isto poderá não aparecer em todas as janelas, dependendo da forma como o texto é processado. Por exemplo, as janelas dos canais não irão mostrar um `/part` ou um `/quit` a menos que o utilizador esteja no canal.

`!discard`

- ignora o texto.

O resto da expressão é tratado como uma expressão regular normal de Perl. Uma boa compreensão da página de manual do `perlre` irá de certeza ajudar, mas é também necessário um conhecimento básico de expressões regulares.

### Exemplos:

1. Querer converter todos os 'jose' de 'jose' para 'José'

       Correspondência: .*
       De: jose
       Para: José

   Bastante simples, faz uma correspondência com todo o texto, e substitui o 'jose' por 'José'.

2. Você quer corresponder tudo o que contém 'jose' e enviar para a janela chamada jose

       Correspondência: jose
       De: ˆ
       Para: ˜jose˜

   Procura por jose e, se for encontrado, substitui o início do texto (ˆ) por ˜jose˜.

3. Ainda que o exemplo anterior funcione, se o texto já contiver `˜uma_janela˜` nele, você irá ter agora duas `˜jose˜˜uma_janela˜...` Por isso, você poderá fazer isto em alternativa.

       Correspondência: jose
       De: ^(?:˜\S+˜)
       Para: ˜jose˜

   Ok, a linha 'De' está um pouco mais complicada. Significa, fazer a correspondência de 0 ou 1 cópias de `˜\S+˜`, que é um 1 til, um ou mais caracteres que não espaços em branco, e depois outro til. Os mais paranóicos poderão fazer `(*:˜\S+˜)`, que significa: fazer a correspondência de 0 ou mais directivas de canais no caso de as regras anteriores falharem.

4. As mensagens de morte do servidor tendem a ser longas, feias, aborrecidas, &etc;. Uma mensagem básica no 'dalnet' parece-se com o seguinte:

       *** Aviso -- Recebida mensagem KILL para
       BOBO!ANDY@line82-basel.datacomm.ch de NickServ
       Localização: empire.ny.us.dal.net[209.51.168.14]!trapdoor.ca.us.dal.net
       [206.86.127.252]!caris.ca.us.dal.net[208.1.222.221]
       !services.dal.net[2008.1.222.222]!services.dal.net
       (NickServ Enforcement)

   Quando você estiver `+s` irá obter montes delas; você não quer que todas elas passem pelo seu ecrã. Vão ser criadas 3 regras para lidar com elas um pouco de cada vez. Você poderá fazê-lo com menos regras, mas vai-se mostrar a estrutura básica da regra, em passos simples, e como se pode usar várias regras para processar uma mensagem. O primeiro passo é remover a parte de Localização: da mensagem:

       Correspondência: ^\*\*\*.* mensagem KILL para.*
       De:  Localização: \S+
       Para: .

   A correspondência procura pela mensagem que começa por `***`; os `*`'s têm de ser comentados com `\` dado que por si sós funcionam como 0 ou mais repetições do carácter anterior. O `.*` significa: corresponder a tudo até encontrar `mensagem KILL para`. Isto permite evitar ter de escrever a parte `-- Recebida...` &etc; O `.*` final significa: corresponder a tudo até ao fim da linha. (não é necessário, segundo pensa o autor)

   A linha De significa: substituir " Localização: " e quaisquer outros caracteres que não espaços em branco pelo Para. O Para é um `"."` como tal toda a localização é substituída por um único ponto.

   A mensagem fica agora do tipo:

       *** Aviso -- Recebida mensagem KILL para BOBO!ANDY@line82-basel.datacomm.ch de NickServ. (NickServ Enforcement)

   Repare no novo `"."` a seguir a `NickServ`?

5. Ok, a mensagem está um bocado mais limpa, mas os KILLs do nickserv não são assim tão importantes, como tal serão encaminhados para a janela `!discard`.

       Correspondência: ^\*\*\*.*mensagem KILL .*\(NickServ Enforcement\)
       De: ^(?:˜\S+˜)
       Para:  ˜!discard˜

   A regras de correspondência procura pela mensagem KILL e certifica-se que é do NickServ. Repare no `\(` e no `\)` que são ambos utilizados na expressão regular, como tal terão de ser 'escapados'. Isto é muito semelhante ao que foi dito dois exemplos antes.

6. Já foram filtradas as mortes do NickServ, mas a mensagem ainda é difícil de ler ao olhar para ela. Por isso, vai ser reordenada para algo do género:

       *** [KILL] MATADOR; matou MATOU; (RAZÃO)

       Correspondência: \*\*\*.*mensagem KILL
       De: \*\*\*.*para (.*?) de (.*?)\. \((.*?)\).*
       Para: *** [KILL] $$2 matou $$1 ($$3)

   Ok, a correspondência procura por `***`qualquer_coisa` mensagem KILL`. Não é possível usar o `ˆ` porque já poderá ter sido adicionada uma `˜<janela>˜`.

   A linha 'De' vai ficando um pouco mais interessante. O `"para (.*?) "` procura pela palavra "para" seguida de algum texto. O `.*?` significa: corresponder a zero ou mais ocorrências de qualquer coisa excepto a mudança de linha, sem ser ambicioso. A regra é parar quando a primeira condição de fim for obtida, não na última. Por outras palavras, isto corresponde a qualquer coisa até encontrar um espaço. O `()` envolvente significa: guardar o conteúdo. Cada "()" guarda os dados correspondentes num `$#` em que o `#` começa em 1 para a primeira sequência de texto, &etc; Neste caso, o `$1` obtém a informação do utilizador que foi 'morto'. O `$2` é então preenchido pelo 'assassino'. Entre o `()` tem a razão da morte. Aqui o `(` e o `\(` ficam um pouco mais confusos. Lembre-se que o `\(` corresponde ao carácter `'('` propriamente dito.

7. Como colorir a sua vida.

   Ok, você quer adicionar alguma cor ao &ksirc;. Veja a secção de Cores para saber informações sobre cores, mas existe uma regra de filtragem para realçar o nome do utilizador entre `<ALCUNHA>` em cada linha:

       Correspondência: ^(?:˜\S+˜)<\S+>
       De: <(\S+)>
       To: <˜4$$1˜c>

   Extrai o nome do utilizador e adiciona a cor #4 entre os dois `<>`. O `˜c` limpa a cor.

## Teclas

Esta é uma listagem das teclas de atalhos e de comandos disponíveis no &ksirc;.

## Combinações de Teclas

Atalho de teclado | Acção
&Ctrl;N | Abre uma nova Janela de Canal/Pesquisa.
&Ctrl;Q | Sair
&Ctrl;Enter | Inicia uma mensagem para a pessoa que enviou mais recentemente uma mensagem para si.
&Ctrl;&Shift;Enter | Inicia uma mensagem para a segunda pessoa que enviou mais recentemente uma mensagem para si.
&Ctrl;K | Inicia o código de uma cor com um número. O texto que escrever a seguir a isto ficará colorido.
&Ctrl;U | Inicia ou termina o texto sublinhado. O texto que se segue à primeira ocorrência deste comando ficará sublinhado até que volte a escrever o atalho de novo.
&Ctrl;I | Inicia ou termina o texto em itálico. O texto que se segue à primeira ocorrência deste comando ficará em itálico até que volte a escrever o atalho de novo.
&Ctrl;B | Inicia ou termina o texto em negrito. O texto que se segue à primeira ocorrência deste comando ficará a negrito até que volte a escrever o atalho de novo.
&Ctrl;R | Inicia ou termina o texto em cores invertidas. O texto que se segue à primeira ocorrência deste comando ficará com cores invertidas até que volte a escrever o atalho de novo.
TAB | Tenta completar o nome de um dos utilizadores no canal, com base no texto que já introduziu. Você poderá estar habituado a isto na sua linha de comandos, ainda que não funcione necessariamente da mesma fora. Veja a nick-completion.

## Dicas

### Ligar-se a canais do &kde;

Os canais de &irc; do &kde; estão alojados na rede do Freenode. Use a página Servidor/Canal ou a página Ligar Automaticamente em Configurar o KSirc para adicionar esses canais. A rede deverá ser igual a ``irc.freenode.org`` no porto `6667`. Em baixo encontram-se os canais do &kde; mais importantes, bem como os seus objectivos. Escolha os canais em que está interessado.

Poderá encontrar algumas sugestões sobre dúvidas nos canais do &kde; no 'wiki' da comunidade do &kde;.

### Canais de IRC do KDE

Canal | Alvo
#kde | Ajuda para o utilizador
#kde-devel | Desenvolvimento no &kde;
#kdevelop | Dúvidas do KDevelop
#kontact | Dúvidas relacionadas com o Kontact (&kmail;, &korganizer;, &knotes;, ...)
#amarok | Um canal da comunidade sobre o amaroK: dúvidas do utilizador, programação
#debian-kde | Dúvidas relacionadas com o KDE no Debian
#kde-freebsd | Dúvidas relacionadas com o KDE no FreeBSD

### Identificação Automática

Se pretender usar o &irc; regularmente, provavelmente irá querer registar o seu utilizador. Isto protege a sua conta, de modo a que só você a possa usar. Na DALnet, depois de você se ligar, irá registar a sua conta com o comando ``/msg` nickserv register `SENHA``, onde a `SENHA` é a sua senha, de facto. Irá obter uma confirmação do registo da sua conta.

Ai, de cada vez que se ligar à DALnet, irá obter uma mensagem que lhe pedirá para se identificar. Terá então de escrever ``/msg nickserv identify `SENHA```.

O &ksirc; podê-lo-á identificar automaticamente, quando você se ligar a qualquer canal. Só terá de adicionar o seguinte programa em Perl à sua área pessoal:

O seguinte programa irá funcionar no Freenode. Este programa deverá ser gravado como `.sircrc.pl` na sua pasta pessoal. Quando executar o &ksirc;, este programa irá identificá-lo automaticamente.

    sub hook_nick_notice {
    my $n = shift;
    my $m = shift;

    if($who =~ /NickServ/){
    if($m =~ /If this is your nickname/){
    $silent = 1;
    &msg("nickserv", "identify XXXXXX");
    $silent = 0;
    }
    }
    }
    &addhook("notice", "nick_notice");   # juntar ao número "fim da MOTD"

Substitua o `XXXXXX` pela sua senha.

O programa acima irá funcionar nas outras redes que não o Freenode, onde o 'nickserv' lhe envia o pedido "identify", embora em algumas redes, como a Undernet, tenha de usar o seguinte programa:

    sub hook_connected {
    if($server =~ /undernet.org$/){
            &msg("X\@channels.undernet.org", "login O_SEU_UTILIZADOR XXXX");
                    &docommand("umode +x");
    }
    }
    &addhook("255", "connected");   # juntar-se no "fim da MOTD"

Substitua o `O_SEU_UTILIZADOR` com o seu nome de utilizador e o `XXXXXX` pela sua senha.

Poderá descobrir mais sobre a programação no SIRC nesta página: http://www.iagora.com/~espel/sirc/PROGRAMMING

## Créditos e Licenças

&ksirc; copyright 1997-2002, os programadores do &ksirc;.

Partes da documentação copyright 1997, &Andrew.Stanley-Jones;

Documentação actualizada para o &kde; 3.0 por &Philip.Rodrigues; &Philip.Rodrigues.mail;.

tips foi escrito por &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;.

Tradução de José Nuno Pires jncp@netcabo.pt

&underFDL; &underGPL;

## Instalação

### Onde obter o &ksirc;

&install.intro.documentation;

### Compilação e Instalação

&install.compile.documentation;
&documentation.index;