Month: October 2008

Mais um viral… agora com o RMS

Posted by – 30/10/2008

Os virais estão se multiplicando na web. O mais novo traz a foto do RMS, dizendo que “logo algo o surpreenderá” e a frase oculta “Yvan Eht Nioj” (Junte-se à marinha escrito em inglês e ao contrário)…

O pior é eu ajudar a propagar esse viral… 😉

Subvertendo a ordem: instalando Flash sem autorização

Posted by – 23/10/2008

Por agora todos já devem saber que na estação de trabalho do hospital só disponho de (argh!) Windows XP. Sim… eu sei… é uma m###a. Mas fazer o quê? Lá eu sou médico, lembram? É verdade que tudo de importante que eu faço de lá, faço remotamente, com meu velho e bom servidor Debian. (Tudo de importante que não diga respeito ao hospital, claro…).

Tudo começou quando resolveram (as forças ocultas, sabe?) substituir nossas estações por novas. A justificativa: atualização. Certamente não de software (continua o (argh!) Windows XP), mas aparentemente o hardware andava muito lento (hua! hua! hua! hua! hua!), aí resolveram trocar as máquinas. As novas estações vieram com tudo bloqueado… tivemos que chamar a Engenharia Clínica (nome chique para “Suporte de Informática”) para instalar o Firefox, já que um dos programas que utilizamos necessita dele. Lamentável…

O problema: não consigo mais ver as tirinhas do Garfield – uma atividade diária indispensável para a manutenção do bom humor – já que não foi instalado o plugin Flash. E agora? Chamar a Engenharia Clínica de novo? E justificar com o que? Sei lá, mas “manutenção do bom humor” não me pareceu uma boa justificativa para constar em um documento interno…

(Antes que você pergunte: sim, tentei instalar pelos meios “normais”; o erro foi – como esperado – que não possuía “privilégios administrativos suficientes”. Bah…)

Foi aí que eu resolvi racionalizar: Ora! O Firefox consegue gravar meus bookmarks (AKA Favoritos); se seguir a mesma lógica do Firefox no GNU/Linux, deve ter um diretório (AKA pasta no (argh!) Windows XP) onde eu posso colocar os meus plugins pessoais. A partir daí foi fácil… Eis a receita de bolo:

  1. Faça o download da versão .XPI do plugin Flash Player, que pode ser encontrado aqui. Um arquivo .XPI nada mais é do que um arquivo .ZIP (Dica: renomeie o arquivo para que o WinZIP – ou similar – o reconheça).
  2. Exploda o .ZIP em algum lugar… Estamos interessados nos arquivos NPSWF32.dll e flashplayer.xpt.
  3. Vá para a pasta %APPDATA%\Mozilla\. O %APPDATA% é uma variável que aponta para uma pasta onde são gravados os dados de aplicações (como os bookmarks).
  4. Se não existir (provavelmente não exista), crie uma nova pasta chamada “Plugins” (sem as aspas).
  5. Copie os arquivos NPSWF32.dll e flashplayer.xpt para lá.
  6. Reinicie o Firefox e voilà.

Veja bem… isso funcionou para mim. Mais provavelmente por que o (argh!) Windows XP é o inferno administrativo que é do que por alguma outra razão… Me imagino no lugar da Engenharia Clínica para administrar essa mixórdia…

Pelo menos agora posso ler as tirinhas do Garfield como de costume 😉

The Inheritance Cycle third book: Brisingr

Posted by – 21/10/2008

WARNING: small spoiler ahead

As a Tolkien old-time fan, and Fantasy genre lover, I could not leave unnoticed Paolini’s Inheritance Cycle (formerly Inheritance Trilogy). I read books 1 and 2 (Eragon and Eldest, respectively) and I think both were very good readings (of course, not by far as good as The Professor, but yet…), and I was rather curious about the third book. Once it was out, I ran to the bookshop to get me one… it took me less than a week to read it all.

As Paolini himself said, the story grew since he first envisioned it (thus the need for a fourth book), but I haven’t liked this last one as I have the first two, and I think that may be because of the growth. Is it just me or Brisingr seems, at times, too expensive in words?

One of the main reasons I like Lord of the Rings is that Tolkien was careful enough not to let it become a definition book. By that I mean that the whole legendarium Tolkien depicted is just the canvas over which the story is taking place. The cats of Queen Berúthiel is an example of this: Tolkien never explained it in Lord of the Rings (IIRC not even in the appendices!)… it was left as an expression in common-use by Middle-earth inhabitants, similar to “Prophet’s Beard” to us.

Instead, Paolini seems to be too concerned to explain everything in this third book. He spends too much words on details, leaving little room to reader’s imagination… And that’s the whole point of Fantasy books, isn’t it? The most proeminent of the examples of such being Roran and Katrina’s marriage: he spent half a dozen pages on it, describing the whole ceremony. In Tolkien style, that would become an appendix… maybe not even that!

Please, don’t get me wrong. Brisingr is a great book and I am surely longing for the final (yet not named) book, and surely this is not intended to compare Tolkien and Paolini, but maybe the original project of a Trilogy made more sense. If I understood it correctly, Brisingr was not planned… so maybe in the next book Paolini gets back to the original path.

Either way, I will just have to wait another year…

(BTW, The Birthday Toast is near. I joined the toast in 2003 and 2008)

Referência Rápida de Interface: Biblioteca readline

Posted by – 19/10/2008

Pouca gente sabe, mas um boa parte dos programas de linha de commando no GNU/Linux são compilados com uma biblioteca unificada, que serve tanto para a edição de linhas de entrada, quanto para simplificar a API para os programadores. Essa biblioteca chama-se NCurses readline.

“OK, mas por que isso é importante?” deve ser a pergunta que está na cabeça do leitor nesse momento. Isso é importante porque a NCurses readline tem uma interface com o usuário bem simples, e muito prática. Quantas vezes você está na linha de comando e descobre que errou algo no meio do caminho e decide apagar a linha? O que você faz? Pressiona Backspace e fica segurando até a linha desaparecer? Ora, muito mais prático teclar Control-U. Esse atalho apaga a linha inteira muito mais rapidamente.

Bem, talvez apagar uma linha no prompt do shell não seja um exemplo de poder, mas o mesmo acontece com senhas… Você está digitando uma senha quando percebe que no meio do caminho errou algo… como o programa não mostra a senha sendo digitada, como você apaga ela e digita de novo aproveitando o mesmo prompt? Isso mesmo: Control-U!

Há uma série de outros atalhos poderosos relacionados a biblioteca NCurses readline, e, uma vez que você tenha decorado uns poucos, a agilidade na linha de comando e em programas relacionados acaba multiplicada. Esses atalhos são padronizados há tanto tempo que mesmo programas não compilados com a NCurses readline acabam implementando os mesmos!!! Pensando nisso, aqui vai uma referência rápida dos que mais utilizo:

  • Control-U: Apaga os caracteres do ponto onde está o cursor até o início da linha.
  • Control-K: Apaga os caracteres do ponto onde está o cursor até o fim da linha.
  • Control-A: Move o cursor para o início da linha.
  • Control-E: Move o cursor para o fim da linha.
  • Control-B: Move o cursor um caractere para trás. Extremamente útil quando está nesses terminais que não têm setinhas ou que não as implementam com os códigos corretos.
  • Control-F: Move o cursor um caractere para frente.
  • Control-D: Deleta o caractere sob o cursor (igual a teclar Del em um sistema DOS).
  • Control-H: Deleta o caractere anterior ao cursor (igual a teclar Backspace em um sistema DOS). Esse tenho usado muito ultimamente: minha tecla Backspace está com problemas…
  • Control-J: Termina a janela (ou, no caso de uma linha, termina a linha). No caso de um terminal, é como dar um ENTER.
  • Control-O: Insere uma nova linha na posição do cursor. Também, no caso de um terminal, é como dar um ENTER.
  • Control-L: Faz um refresh na tela. Muito útil quando você está um Terminal gráfico e a saída do programa anterior te deixa com um prompt no meio de um monte de caracteres.
  • Control-N: Move o cursor uma linha abaixo.
  • Control-P: Move o cursor uma linha acima.

Existem outros atalhos, mas esses são de longe os mais úteis. Eu gosto muito da linha de comando, e costumo dizer que uso o X apenas como um multiplexador de terminais (na realidade, algumas vezes evito o X completamente e uso o GNU Screen – mas isso é outra história). Se você também gosta da linha de comando mas ainda não conhecia os atalhos, espero ter contribuido…

Para os novatos ou os que não apreciam a interface em linha de comando, deixo um link de um artigo interessante: The Command Line: The Best Newbie Interface?.

Uma última dica: Como eu disse antes, vários programas implementam esses atalhos. Para o problema da digitação da senha que referi acima, se você estiver no GDM, o Control-U vai funcionar igualzinho a linha de comando! 😉

Update 2008-10-21 10:20:00: Como apontado pelo comentário do bart9h, é a biblioteca readline e não a NCurses que faz isso. Obrigado, bart9h.