diff options
Diffstat (limited to 'tde-i18n-pt_BR/docs/tdebase/khelpcenter/userguide/under-the-hood.docbook')
-rw-r--r-- | tde-i18n-pt_BR/docs/tdebase/khelpcenter/userguide/under-the-hood.docbook | 300 |
1 files changed, 300 insertions, 0 deletions
diff --git a/tde-i18n-pt_BR/docs/tdebase/khelpcenter/userguide/under-the-hood.docbook b/tde-i18n-pt_BR/docs/tdebase/khelpcenter/userguide/under-the-hood.docbook new file mode 100644 index 00000000000..086e51ea496 --- /dev/null +++ b/tde-i18n-pt_BR/docs/tdebase/khelpcenter/userguide/under-the-hood.docbook @@ -0,0 +1,300 @@ +<chapter id="tinkering-under-the-hood"> +<!-- Uncomment the <*info> below and add your name to be --> +<!-- credited for writing this section. --> + +<!-- +<chapterinfo> +<authorgroup> +<author> +<firstname>Your First Name here</firstname> +<surname>Your Surname here </surname> +</author> +</authorgroup> +</chapterinfo> +--> + +<title>Trabalhando nos Bastidores do &kde;</title> + +<sect1 id="hand-editing-config-files"> + +<sect1info> +<author><personname> <firstname>Nicolas</firstname> <surname>Goutte</surname> </personname> <email>goutte@kde.org</email> </author> +</sect1info> + +<title>Editando Manualmente os Arquivos de Configuração</title> + +<sect2 id="hand-editing-intro"> +<title>Introdução</title> +<para>No &kde;, os arquivos de configuração são fáceis de alterar com um editor de texto simples como o &kate;, uma vez que que os arquivos de configuração são arquivos de texto.</para> + +<para>Um exemplo de um arquivo de texto:</para> + +<programlisting>[Geral] +AutoSalvar=1 +UltimoArquivo=/var/tmp/teste.txt</programlisting> + +<para>Os arquivos de configuração de um usuário estão em <filename class="directory">.kde/share/config</filename> (substitua o <filename>.kde</filename> pela sua variável de ambiente $<envar>TDEHOME</envar>) e os globais estão na sub-pasta <filename class="directory">share/config</filename> do local onde o KDE foi instalado. (Você poderá encontrar esta localização executando o comando <command>tde-config --prefix</command>.) Os seus nomes terminam normalmente em 'rc' (sem um ponto inicial), como por exemplo <filename>kopeterc</filename>.</para> + +<warning><para>Contudo, os arquivos de configuração editados manualmente, podem comprometer a estabilidade do seu &kde;. A maioria dos aplicativos não verificam o que lêem dos seus arquivos de configuração e poderão ser prejudicados pelo que obtêm da sua configuração, fazendo com que o aplicativo inclusive estoure.</para></warning> + +</sect2> + +<sect2 id="hand-editing-backups"> +<title>Cópias de Segurança</title> + +<para>Por isso, a primeira regra é fazer uma cópia de segurança do seu arquivo antes de modificá-los. A cópia de segurança deverá ser guardada fora de qualquer sub-pasta da <filename class="directory">.kde</filename> (ou da pasta correspondente a $<envar>TDEHOME</envar>). As cópias de segurança são sempre uma boa idéia no caso de uma falha geral do &kde; que destrua os arquivos de configuração importantes (como por exemplo as suas opções do &kmail;, que se encontram no arquivo <filename>kmailrc</filename>). (Uma falha grande dessas não deveria acontecer, mas ainda assim pode ocorrer.)</para> +</sect2> + +<sect2 id="hand-editing"> +<title>Editando</title> + +<para>Assim, por que você mexeria nos arquivos de configuração? Bem, primeiro, é necessário se quiser obrigar o uso do modo KIOSK. Talvez um programador tenha lhe pedido para adicionar um item que o ajude a depurar um erro. Talvez queira recuperar de um problema sem ter que remover toda a pasta <filename class="directory">.kde</filename>. Talvez queira aprender mais sobre os detalhes do &kde;.</para> + +<para>De qualquer forma, seja qual for a razão, você poderá desejar modificar manualmente um arquivo de configuração.</para> + +<para>Ao planejar editar um arquivo desses, certifique-se que o aplicativo que o usa não está rodando. Se for um dos arquivos de configuração básica, considere editar o arquivo enquanto o todo o &kde; não está rodando.</para> + +<para>Está pronto? Faça então uma cópia de segurança (já foi dito alguma vez?), inicie o seu editor favorito (assumiremos que neste caso é o &kate;), abra o arquivo (tenha o cuidado de carregá-lo como UTF-8, uma vez que que o &kate; exibe-o como <quote>utf8</quote>).</para> + +<para>Agora você terá um arquivo do tipo:</para> + +<programlisting>[Grupo] +Chave1=Valor1 +Chave2=Valor2 +Chave3=Valor3</programlisting> + +<para>Você poderá agora modificá-lo (com cuidado!) e depois salvá-lo (certificando-se novamente que é <acronym>UTF-8</acronym>).</para> + +<para>Agora, você poderá testar o aplicativo e, se ele não se executar mais corretamente, feche-o e restaure a cópia de segurança.</para> + +<itemizedlist> +<title>Informações Relacionadas</title> + + +<listitem><para><xref linkend="kde-for-administrators"/> existem mais informações sobre a estrutura de pastas do &kde;, de modo a ajudá-lo a encontrar o arquivo que precisa de editar.</para> +</listitem> + +</itemizedlist> + +</sect2> + +</sect1> + +<sect1 id="scripting-the-desktop"> +<title>Programando o Ambiente de Trabalho</title> + +<para>O &kde; oferece um sistema de comunicação entre processos poderoso chamado &DCOP;, o Desktop COmmunication Protocol. Usando o &DCOP;, você pode controlar uma grande quantidade de funções do &kde; a partir da linha de comando ou a partir de um programa feito na sua linguagem de programação favorita. Você poderá também obter informações a partir das aplicações do &kde;: por exemplo, vários leitores multimídia do &kde; oferecem métodos para pesquisar por determinada informação no leitor sobre a faixa que está sendo tocada no momento.</para> + +<para>Falando de um modo abrangente, cada aplicação do &kde; oferece uma ou mais <firstterm>interfaces</firstterm> de &DCOP; que, por sua vez, oferecem métodos (ou, se preferir, funções) que outra aplicação poderá então invocar. Assim, o primeiro passo ao usar o &DCOP; é descobrir o método apropriado para a tarefa. A forma mais simples de fazer isto é com a interface <application>kdcop</application> para os métodos de &DCOP; disponíveis.</para> + +<para>Execute o <application>kdcop</application> a partir de um &konsole; ou da mini-linha de comando (a janela que aparece com o <keycombo action="simul">&Alt;<keycap>F2</keycap> </keycombo>). A janela do <application>kdcop</application> mostra as aplicações que estão rodando no momento e que oferecem interfaces de &DCOP;, usando uma árvore para isso. De um modo geral, a escolha do método correto obriga a alguma pesquisa pela árvore, mas uma sugestão útil é que a interface marcada como <quote>(padrão)</quote>, contém normalmente as funções usadas com mais frequência.</para> + + + +<para>Para testar se a função faz o que desejamos, faça um duplo-clique por exemplo no ítem <guilabel>setColor</guilabel>. Para escolher a cor <varname>c</varname>, clique no botão de seleção de cores e escolha uma. Indique se a cor deverá ser a cor A com a opção para assinalar. Clique <guilabel>OK</guilabel> para ver a cor de fundo modificada.</para> + +<para>Para acessar ao método de &DCOP; a partir da sua linguagem de programação favorita, você poderá tanto usar as interfaces de &DCOP; existentes, se estiverem disponíveis no módulo 'tdebindings', ou então invocar a aplicação da linha de comando <command>dcop</command>. Para uma utilização simples, a invocação da aplicação da linha de comando <command>dcop</command> é suficiente. Para invocar um método de &DCOP; desta forma, é necessário indicar a aplicação e a interface que possui o método, o método em si e os argumentos, num formato adequado para a linha de comando.</para> + +<para>Nós especificamos a aplicação, a interface e o método exatamente nessa ordem, seguido dos argumentos pela mesma ordem que são apresentados no <application>kdcop</application>. O <command>dcop</command> possui muitas outras opções: dê uma olhada no resultado do <userinput><command>dcop</command> <option>--help</option></userinput>.</para> + +<para>Já chega de teoria: está na hora de um exemplo:</para> + +<example> +<title>Um Programa de Mudança da Cor de Fundo com o &DCOP;</title> + +<para>Com a aplicação da linha de comando <command>dcop</command> e um pouco de Perl, vamos fazer então um pequeno programa que mude lentamente o fundo da tela, percorrendo o espectro de cores.</para> + +<para>Em primeiro lugar, nós procuraremos pelo método apropriado com o <application>kdcop</application>. Para este exemplo, encurtaremos a busca e iremos ao método diretamente: o método que desejamos é o <menuchoice><guimenu>kdesktop</guimenu><guisubmenu>KBackgroundIface</guisubmenu><guimenuitem>setColor</guimenuitem> </menuchoice>. Os argumentos e o tipo do valor devolvido da função são mostrados com o estilo da linguagem C++. Para o caso do <methodname>setColor</methodname>, os argumentos são uma cor <varname>c</varname> que define a nova cor de fundo e um valor booleano ('true' ou 'false'), <varname>isColorA</varname>, que define se a cor é a primeira ou a segunda (isto é útil para definir gradientes, por exemplo).</para> + +<para>Para usar o método <methodname>setColor</methodname> na linha de comando, usaremos o seguinte: <screen><prompt>%</prompt> <userinput><command>dcop</command> kdesktop KBackgroundIface setColor '#ffffff' false</userinput> +</screen> +</para> + +<para>Para indicar a cor, é usado o valor RGB em hexadecimal, como é usado no &HTML;. Repare que ele está delimitado por aspas simples, para proteger o <token>#</token> da linha de comando.</para> + +<para>Para descobrir o valor RGB em hexadecimal de uma cor, abra qualquer janela de seleção de cores numa aplicação do &kde; (como, por exemplo, o &kcontrolcenter;, em <menuchoice><guimenu>Aparência & Temas</guimenu><guimenuitem>Cores</guimenuitem> </menuchoice>), selecione a cor que deseja e use o valor indicado no campo de texto <guilabel>HTML</guilabel>.</para> + + +<para>Assim, isto é tudo que precisamos do &DCOP;; agora, é apenas necessário criar um programa em torno dele. Aqui está uma implementação (muito!) rudimentar: <programlisting><![CDATA[ +$min=49; # Valor mínimo da cor R, G ou B +$max=174; # Valor máximo da cor R, G ou B +$passo=5; # Quantidade a incrementar em cada passo e cor +$espera=15; # Intervalo em segundos entre cada iteração + +@inicio = ($max, $min, $min); +@cor = @inicio; + +while (1) { + foreach (0..5) { + my $qual = $_ % 3; # Qual a cor (R, G ou B) a alterar + my $cima_baixo = $_ % 2; # Se deseja aumentar ou diminuir o valor + do { + if ($cima_baixo == 0) { $cor[$qual]+=$passo; } + if ($cima_baixo == 1) { $cor[$qual]-=$passo; } + my $chamada=sprintf "dcop kdesktop KBackgroundIface setColor '#%x%x%x' true\n", @cor; + system($chamada); + sleep $espera; + } while (($cor[$qual] >= $min) and ($cor[$qual] <= $max)); + } +} +]]> +</programlisting> +</para> + +<para>Basta executar o programa sem argumentos, para que ele alterne a cor de fundo em um espectro bem definido, até que seja morto. <foreignphrase>Voilà</foreignphrase>!</para> + +</example> + +<para>Claro que o Perl não é a única linguagem que você poderá usar para fazer programas com o &DCOP;—se preferir o 'shell scripting', ele também está disponível:</para> + +<example> +<title>Aplicando um fundo da Internet</title> + +<para>O seguinte programa obtém a imagem principal da tira de quadrinhos <quote>User Friendly</quote> e coloca-a como papel de parede da área de trabalho, usando as ferramentas normais disponíveis e um pouco de &DCOP;:</para> + +<programlisting><![CDATA[ +#!/bin/sh +COMICURL=`wget -qO - http://www.userfriendly.org/static/index.html | \ + grep Latest | sed -e "s,.*SRC=\",," -e "s,\">.*,,"` +TMPFILE=`mktemp /tmp/$0.XXXXXX` || exit 1 +wget -q -O $TMPFILE $COMICURL +dcop kdesktop KBackgroundIface setWallpaper $TMPFILE 1 +]]> +</programlisting> + +<para>A primeira linha após o '#!/bin/sh' usa o <command>wget</command> e uma mágica das expressões regulares para extrair a localização da imagem do código em &HTML; da página principal. A segunda e terceira linhas irão obter a imagem e, finalmente, o <command>dcop</command> aplica a imagem transferida como papel de parede.</para> + +</example> + + +<!-- <itemizedlist> +<title>Related Information</title> +<listitem><para>to be written</para> +</listitem> +</itemizedlist> --> + + +</sect1> + + +<sect1 id="adding-extra-keys"> +<title>Adicionando Atalhos de Teclado Extra para o &kde;</title> + +<para>Muitos teclados modernos contém teclas adicionais que não estão atribuídas por padrão a nenhuma ação.</para> + +<para>As teclas <quote>Multimídia</quote> geram normalmente um sinal e podem simplesmente ser escolhidas como uma combinação de teclas dentro de um aplicativo, como quem escolhe uma tecla qualquer. Algumas das teclas, todavia, não são detectadas e, pressionando-as no <guilabel>Configurar Atalhos</guilabel>, não acontecerá nada.</para> + +<para>Alguns portáteis da IBM, por exemplo, possuem teclas adicionais em torno dos cursores esquerdo e direito, e que parecem um <guiicon>Page Left</guiicon> e um <guiicon>Page Right</guiicon>.</para> + +<procedure> +<step><para>Use o <command>xev</command> para descobrir o código das teclas. Neste caso, são o 233 e o 234, respectivamente </para></step> +<step><para>Escolha os símbolos das teclas. Existe alguns intervalos que não são usados por padrão, por isso muitos estão livres. Você poderá encontrar a lista em <filename>/usr/X11R6/include/X11/keysymdef.h</filename> (ou o equivalente no seu sistema).</para></step> +<step><para>Crie um arquivo na sua pasta pessoal chamado <filename>.Xmodmap</filename> e adicione o seguinte a ele:</para> +<screen>keycode 233 = Next_Virtual_Screen +keycode 234 = Prev_Virtual_Screen</screen> +</step> +<step><para>Execute o comando <userinput><command>xmodmap</command> <filename>~/.Xmodmap</filename></userinput></para></step> +</procedure> + +<para>Neste momento, você deverá ser capaz de executar o <command>xev</command> novamente e ver que as teclas geram agora o símbolo da tecla que atribuiu. Você poderá agora atribuir esses símbolos a qualquer ação, como de costume.</para> + +<itemizedlist> +<title>Informações Relacionadas</title> +<listitem><para>A página de manual do <command>xev</command>. Você poderá vê-la digitando <userinput>man:/xev</userinput> numa janela do &konqueror; ou digitando <userinput><command>man</command> xev</userinput> num terminal.</para></listitem> +</itemizedlist> + +</sect1> + +<sect1 id="keys-for-scripts"> +<title>Adicionando Combinações de Teclas às Ações Novas</title> + +<para>A maioria das ações do ambiente de trabalho ou dos aplicativos estão imediatamente disponíveis para poder associar-se uma combinação de teclas. Se a ação a que deseja atribuir um atalho foi criada por você ou ainda não esteja disponível, você poderá ainda assim atribuir um atalho.</para> + +<para>Para reunir as duas seções anteriores, talvez você queira atribuir uma tecla não usada do seu teclado a um programa ou comando de DCOP. O exemplo aqui será então atribuir as duas teclas que foram adicionadas em <xref linkend="adding-extra-keys"/> para ir para a área de trabalho virtual anterior ou a seguinte, ou seja, duas funções para as quais irá precisar do DCOP (tal como foi descrito em <xref linkend="scripting-the-desktop"/>.</para> + +<para>Isto pode ser conseguido facilmente com o seguinte método:</para> + +<procedure> +<step> +<para>Abra o &kcontrol; na seção <guilabel>Regional & Acessibilidade</guilabel>, e selecione <guilabel>Ações de Entrada</guilabel></para> +</step> +<step> +<para>Escolha <guibutton>Nova Ação</guibutton></para> +</step> +<step> +<para>Dê um nome à ação nova, ⪚ <userinput>Próxima Área de Trabalho Virtual</userinput></para> +</step> +<step> +<para>Selecione o <guilabel>Atalho de teclado -> Comando/URL(simples)</guilabel> para o <guilabel>Tipo de ação:</guilabel></para> +</step> +<step> +<para>Na página do <guilabel>Atalho do Teclado</guilabel>, clique no botão que deseja usar para disparar o comando. Para este exemplo, você iria pressionar a tecla com a imagem do <guiicon>Próxima Página</guiicon> nele. O <keysym>Next_Virtual_Screen</keysym> aparecerá na imagem da tecla.</para> +</step> +<step> +<para>Na página do <guilabel>Configuração do Comando/URL</guilabel>, insira o comando a executar no campo: <userinput><command>dcop twin default nextDesktop</command></userinput></para> +</step> +</procedure> + +<para>Repita os passos anteriores com a tecla <keysym>Prev_Virtual_Screen</keysym> key e a ação <userinput><command>dcop twin default previousDesktop</command></userinput>.</para> + +<para>Agora, pressionando as teclas <keysym>Prev_Virtual_Screen</keysym> ou <keysym>Next_Virtual_Screen</keysym>, mudará para a área de trabalho virtual anterior ou a próxima, respectivamente.</para> + +<para>Obviamente, você poderá atribuir qualquer tecla livre a qualquer ação.</para> + +<itemizedlist> +<title>Informações Relacionadas</title> +<listitem><para>Veja a documentação do <application>KHotKeys</application> no &khelpcenter;, ou digitando <userinput>help:/khotkeys</userinput> numa janela do &konqueror;.</para></listitem> +<listitem><para><xref linkend="adding-extra-keys"/></para></listitem> +<listitem><para><xref linkend="scripting-the-desktop"/></para></listitem> +</itemizedlist> + +</sect1> + +<sect1 id="tdedebugdialog"> +<sect1info> +<authorgroup> +<author><personname> <firstname>Adriaan</firstname> <surname>de Groot</surname> </personname> <email>groot@kde.org</email> </author> +</authorgroup> +</sect1info> + +<title>&tdedebugdialog; - Controlando o Resultado da Depuração do &kde;</title> + +<sect2 id="tdedebugdialog-basic-usage"> +<title>Utilização Básica</title> + +<para>O &tdedebugdialog; não está no &kmenu; por padrão. Você terá que executá-lo na linha de comando ou na mini-janela de execução de comandos com <userinput><command>tdedebugdialog</command></userinput>. O &tdedebugdialog; mostra uma janela com uma lista grande de áreas de depuração. Cada área tem uma opção que você poderá ligar ou desligar para ativar ou desativar o resultado de depuração dessa parte do &kde;.</para> + +<para>A lista de áreas de depuração vem ordenada numericamente, não alfabeticamente, assim o tdeio (127) vem antes do artskde (400). Os números vão até perto de 200 000, mas normalmente só existem 400 áreas. Você não terá que percorrer a lista completa para encontrar a área que precisa. Existe um campo de texto no topo da janela, onde poderá inserir uma parte do nome da área que deseja. A lista de itens que é apresentada é filtrada de modo a incluir apenas as áreas de depuração que contém o texto que introduziu, ⪚ se inserir <userinput>k</userinput> não irá filtrar muito mas, se indicar <userinput>kont</userinput>, deverá aparecer apenas as áreas de depuração do &kontact;. Como uma forma mais rápida de ativar ou desativar o resultado de depuração, existe também os botões para <guibutton>selecionar tudo</guibutton> e <guibutton>deselecionar tudo</guibutton>, que fará com que o &kde; produza muitos dados de depuração, ou quase nenhum.</para> +</sect2> + +<sect2 id="tdedebugdialog-fullmode"> +<title>O TDEDebugDialog no modo completo</title> + +<!-- this text partly taken from the tdedebugdialog handbook --> + +<para>No modo completo, que é o que irá obter ao executar o TDEDebugDialog como <userinput><command>tdedebugdialog</command> <option>--fullmode</option></userinput>, fica disponível a mesma lista de áreas de depuração, podendo selecionar apenas uma de cada vez numa lista. Você poderá então definir o resultado para os vários tipos de mensagens: Informação, Aviso, Erro e Erro Fatal. Para cada um destes tipos, você poderá escolher para onde são enviadas as mensagens. As opções são:</para> + +<para>Arquivo, onde terá que inserir o nome de um arquivo. Ele será escrito na sua pasta $<envar>HOME</envar>.</para> + +<para>Caixa de Mensagem. Cada mensagem de depuração é mostrada num diálogo de informação, que você terá que pressionar <guibutton>OK</guibutton> para continuar com o aplicativo.</para> + +<para>Linha de Comando, a entrada padrão. As mensagens são impressas no 'stderr' e irão aparecer tanto na janela da linha de comado em que a aplicativo foi iniciado, como no <filename>.xsession-errors</filename>.</para> + +<para>Syslog. Isto envia cada mensagem de depuração para a funcionalidade de registro do systema ('syslog'), que poderá efetuar um processamento prévio da mensagem.</para> + +<para>Nenhum. Isto elimina o resultado deste tipo de mensagem.</para> + +<para>Para as mensagens geradas pelos erros fatais, é normalmente uma má idéia escolher o Nenhum ou o Syslog, uma vez que em ambos os casos poderá não ver a mensagem e o aplicativo que obtenha o erro fatal irá desaparecer sem deixar uma razão do seu desaparecimento. Se o aplicativo desaparecerá ou não no caso de um erro fatal, poderá ser definido na opção <guilabel>Abortar nos erros fatais</guilabel>, que está assinalada por padrão — mas você poderá esperar ainda que um aplicativo estoure (de forma confusa) se for encontrado ainda um erro.</para> + +<!-- Add links to "further reading" here --> +<!-- <itemizedlist> +<title>Related Information</title> +<listitem><para>to be written</para> +</listitem> +</itemizedlist>--> + + + +</sect2> +</sect1> +</chapter> |