Resolvendo problemas com Firefox e Banco do Brasil

Atualizado em 2/7/2008.

Encontrei este post do Gustavo Rebuzzi, referenciando este outro post do Daniel Docki, que resolvem o problema da recarga de tela na página de autenticação do site do Banco do Brasil. Basicamente você deve desinstalar os pacotes do OpenJDK e instalar um pacote adicional (que no meu caso já estava instalado). Ah, isso vale para o Ubuntu 8.04.

Conforme dica do Gustavo nos comentários, o problema parece ser o pacote IcedTea, que serve como plugin Java para os navegadores web. No Mandriva 2008 você talvez consiga fazer o site do BB voltar a funcionar da seguinte forma:

# urpme java-1.7.0-icedtea # para remover o pacote

Você será perguntado se também deseja remover o pacote java-1.7.0-icedtea-plugin. Indique que sim para completar a remoção. Depois você precisa executar o seguinte comando para instalar o pacote Java da Sun mais o plugin.

# urpmi java-1.6.0-sun java-1.6.0-sun-plugin

Esse comando simplesmente não funcionou na minha instalação pois aqui a arquitetura da máquina é 64 bits. O pacote java-1.6.0-sun que tenho instalado é 64 bits, mas não há uma versão 64 bits para o pacote java-1.6.0-sun-plugin, e então o instalador do Mandriva se recusa a instalar o plugin. Eu até poderia perder mais um tempo tentando fazer isso mas no momento não dá.

Da próxima vez consulto o Google antes de perder 40 minutos do meu dia em fila de banco…


Matando o Firefox

Ok, o título do post foi meio forçado. Quis dizer “matando o processo do Firefox”.

O Firefox é ótimo, todos gostamos dele etc. Mas ele trava, e ultimamente tem travado bastante, talvez 1 vez por dia no meu Ubuntu 7.10. Nessas horas você tem que abrir um console e matar o processo, é a única forma rápida e indolor de abrir novamente o navegador. E como se mata o processo?

Há o jeito difícil: você lista os processos da máquina, filtra apenas os do Firefox, identifica o número do processo firefox-bin e então o mata passando o número do processo como parâmetro. Exemplo:

caio@superjesus:~$ ps axu | grep firefox
caio      6630  1.2  1.0  35704  9308 pts/0    Sl+  00:29   0:01 vi matando.o.firefox.mkd
caio      6635  0.0  0.0   1752   524 ?        S    00:31   0:00 /bin/sh /usr/bin/firefox
caio      6647  0.0  0.0   1752   528 ?        S    00:31   0:00 /bin/sh /usr/lib/firefox/run-mozilla.sh /usr/lib/firefox/firefox-bin
caio      6651 15.3  4.7 164008 43276 ?        Sl   00:31   0:01 /usr/lib/firefox/firefox-bin
caio      6686  0.0  0.0   2976   768 pts/1    S+   00:31   0:00 grep firefox

caio@superjesus:~$ kill -9 6651

O processo está morto, podemos abrir o navegador de novo. Foram 2 passos, e você talvez tenha levado uns 10 segundos ou mais para fazer isso. Que tal levar só 5 segundos? Utilize killall:

killall firefox-bin

E boa matança de Firefox pra você!

Update 26/05/2008: Ubuntu 7.10, não 7.04.


Conversation Preview no Gmail: não utilizem

Não, não estou apresentando mais um script GreaseMonkey. Estou apenas dando um alerta: não utilize o script “Conversation Preview”, que você pode ativar dentro da aba “Messages” das configurações da Better Gmail.

Esse script acrescenta ao Gmail o atalho v, que pode ser utilizado quando uma mensagem em uma listagem está marcada. Pressionando essa tecla um efeito JavaScript tenta exibir o que deveria ser um preview do conteúdo da mensagem selecionada. Mas isso não é o que de fato ocorre. Na área central dessa janelinha que se abre você verá apenas a mensagem “Loading…” indefinidamente, pois você acaba de ser desconectado do Gmail!.

Por que esse script te desconecta? Não faço a menor idéia, por isso digo: não utilizem.

O teste foi realizado com a interface antiga do Gmail.


Better Gmail e Folders4Gmail

Better Gmail é uma extensão para o Firefox que facilita a ativação de diversos scripts GreaseMonkey dentro da interface do Gmail. Com a nova interface do leitor de emails muitos desses scripts deixaram de funcionar, por isso recomendo a instalação da versão antiga da extensão. Instale o Better Gmail 2 se você deseja utilizar a versão compatível com a nova interface, e a Better Gmail 1.1 se você deseja continuar com a antiga. Eu recomendo, no momento, a Better Gmail 1.1.

Após a instalação o menu “Tools” ganha um novo item, “Better Gmail”. Acesse essa opção para ativar as novas funcionalidades.

Além da integração com Google Reader e Calendar, um dos scripts que ativei dentro da Better Gmail 1.1 foi o Folders4Gmail. Com ele você pode organizar seus labels em uma árvore de labels e sub-labels. Por exemplo, se você possui labels como “Lista Ruby-BR”, “Lista RSpec” e “Lista Ruby”, você pode organizá-los, visualmente, sob um único label ao criar um label adicional “Lista” e renomear os labels originais para “Lista\Ruby-BR”, “Lista\RSpec” e “Lista\Ruby”, respectivamente. A contra-barra é o caracter mágico dessa extensão. Esta imagem deixa mais claro esse conceito.


Integrando Google Calendar e Gmail

Manter meus compromissos em dia não é algo que eu faça muito bem. Já tentei usar agenda convencional, drafts do Gmail (!) e o Google Calendar, mas até agora nada funcionou. Como já consegui integrar o Google Reader à interface do Gmail (veja este artigo se você não sabe como), me perguntei se não seria possível integrar também o Google Calendar a essa interface. Aliás, resolvi perguntar ao próprio Google

Entre alguns scripts do GreaseMonkey, encontrei o que me interessava: adicionar o link “Calendar” no menu lateral da interface do Gmail. O site oficial do script é este, e para instalar você pode clicar diretamente aqui (você precisa ter a extensão GreaseMonkey já instalada no seu Firefox).

Uma vez instalado o script, recarregue (Ctrl + R) a janela/aba do Firefox onde sua conta do Gmail está aberta. Se agora apareceu o link “Calendar” logo abaixo do link “Inbox”, no menu esquerdo, então a instalação funcionou. Ao clicar nesse link a interface do Google Calendar se abrirá na área principal, onde aparece sua caixa de entrada.

Agora o menu do Gmail aparece assim (no meu Firefox, claro):

  • Inbox
  • Calendar
  • Feeds
  • Trash

Quem sabe agora eu consigo manter em dia meus compromissos…


Gmail Greasemonkey

Procurando por formas de customizar o Gmail através de JavaScript descobri um projeto do próprio Google com o mesmo intuito, o Gmail Greasemonkey. Testei dois scripts dos seis disponíveis no site, e os resultados foram os seguintes:

  • Macros: disponibiliza novos atalhos de teclado para o Gmail. Desisti dela quando vi que o atalho “g”, que já utilizo, passa a significar “aplicar novo label às mensagens selecionadas”. Mas para quem tem paciência, é possível editar esses atalhos diretamente no script.
  • Google Reader Integration: gera um novo link dentro do Gmail, permitindo que tenhamos acesso aos nossos feeds com a mesma interface do Google Reader, mas embutida na área principal da interface do Gmail. A imagem que a documentação mostra após a instalação, no entanto, não foi a mesma que vi quando instalei o script no meu navegador. A listagem de feeds ficou “flutuando” na direita, e a barra de busca de feeds ficou tomando um grande espaço da tela, deixando uma área branca por baixo. Ainda assim prefiro ter um Google Reader feioso dentro do meu Gmail do que ter que mantê-lo em outro aba.

Para instalar esses scripts você precisa ter no seu Firefox a extensão Greasemonkey. Uma vez instalada, basta ir ao site do projeto Gmail Greasemonkey, clicar nos links que aparecem na página inicial referentes ao scripts e os instalar (uma janela do Greasemonkey se abre perguntando se você deseja instalar o script). As funcionalidades ficam disponíveis imediatamente, sem necessidade de reiniciar o navegador.

Atualização 1 (12/10/2007): para que o script Google Reader Integration funcione de acordo com a imagem disponível no site do projeto, é preciso seguir a seguinte receita de bolo (descobri essa dica nos comentários dos usuários, parece que é um bug gerado recentemente por alguma atualização por parte do Gmail ou do próprio Reader):

  • Instale a extensão CustomizeGoogle e reinicie o Firefox
  • Dentro do Firefox, vá ao menu Tools >> CustomizeGoogle Options
  • Na guia Gmail marque a opção “Secure (switch to https)”
  • Na guia Reader marque também a opção “Secure (switch to https)”

Agora o seu link “Feeds” dentro do Gmail deve exibir o Google Reader perfeitamente.


Estilizando o seu Gmail com Stylish

Nota (08/11/2007): Após a modificação da interface do Gmail o código CSS apresentado neste post deixou de funcionar.

Há alguns meses, procurando entender para que serviam as tais “user stylesheets”, me deparei com a extensão Stylish, para o Firefox. Não vou entrar em detalhes sobre todo o potencial dela, mas basta saber que com ela é possível definir suas folhas de estilo para todos os sites que você visualiza. Essas folhas passam a ser carregadas automaticamente, e você pode desabilitá-las facilmente. Sim, isso é muito bonito… mas tem algum uso prático?

Instalação e utilização

Após instalar a extensão reinicie seu Firefox. Note que, agora, aparece um novo ícone no canto inferior direito da janela. Clicando sobre esse ícone, e em seguida passando o mouse sobre a opção “Write style…”, podemos escrever estilos para a URL sendo visualizada (1ª opção) e para o domínio sendo visualizdo (2ª opção). Deixo para você a missão de descobrir as demais possibilidades. Para este tutorial você precisa lembrar apenas da 2ª opção.

Gmail

Eu utilizo o Gmail já há alguns anos, e embora goste bastante de sua usabilidade, considero sua interface muito poluída para alguém que utiliza sua interface por várias horas ao dia. Como não sou o desenvolvedor do Gmail, você pode pensar que eu terei de conviver com a minha infelicidade pelo resto da vida, certo? Mas com a Stylish é possível modificar (quase) por inteiro a interface de um site e, portanto, do Gmail.

Minhas mudanças foram simples: eliminei alguns links do menu esquerdo, eliminei algumas bordas, consegui remover duplicações da interface… Basicamente utilizei CSS para esconder elementos. Se você quiser ver o Gmail da mesma forma que eu vejo, siga a receita de bolo a seguir. Note, no entanto, que você precisa conhecer os principais atalhos de teclado do Gmail para não prejudicar sua usabilidade após importar estes estilos. Fique atento para os comentários que deixei no código CSS para saber qual declaração deve ser omitida para reativar algum link que você não consiga viver sem.

  • Clique no ícone da Stylish, no canto inferior direito da sua tela do Firefox
  • Vá para a opção “Write style…”, e em seguida em “For mail.google.com…”
  • Substitua toda a declaração que aparece na área central da nova janela pela listagem de código CSS abaixo
  • Defina uma descrição para essa folha de estilos
  • Salve a configuração

Meu CSS para o Gmail:

@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document domain("mail.google.com") {

body .lk { /* Tries to remove the underline from all the links - but fails */
    text-decoration: none !important;
}

body div#gbar { /* The Google Services links on the top left */
    display: none !important;
}

body div#guser.mlo { /* The "username@gmail.com | ... | Sign out" links */
    float: left !important;
    padding-left: 1em !important;
}

body #guser #prf_g.setl,
body #guser a { /* The "Settings | Help | Signout" links */
    text-decoration: none !important;
}

/* The search-related elements */
body table tr td div#mt1.s table tr td span#mt_cf1.lk { /* The "Create a filter" link */
    display: none !important;
}

body div#nav div#nb_1 { /* "Invite a friend" box */
    display: none !important;
}

body div#nav div#nb_2 { /* "Messaging" box */
    display: none !important;
}

body div#nav div#nb_0 div#nvl table tr td b.rnd { /* Green lines that stand above and below the "Label" box */
    display: none !important; 
}

body div#nav div#nb_0 div#nvl div.nb { /* "Label" box outter */
    background: none !important;
}

body div#nav div#nb_0 div#nvl div.nb div#nt_0.s td.s { /* "Label" box header */
    display: none !important;
}

body div#nav div#nb_0 div#nvl div.nb div#prf_l.lk { /* The "Edit labels" element */
    display: none !important;
}

body div#nav div.nl span#comp.lk, /* The "Compose Mail" element */
body div#nav div.nl span#ds_all.lk, /* The "All Mail" element */
body div#nav div.nl span#ds_drafts.lk, /* The "Drafts" element */
body div#nav div.nl span#ds_starred.lk, /* The "Starred" (and star image) elements */
body div#nav div.nl span#ds_sent.lk, /* The "Sent Mail" element */
body div#nav div.nl span#ds_chats.lk, /* The "Chats" (and ballon image) elements */
body div#nav div.nl span#ds_spam.lk, /* The "Spam" element */
body div#nav div.nl span#cont.lk { /* The "Contacts" element */
    display: none !important;
}

body div div#co div#tct.thc div.tbc div.tbcr { /* "Refresh" */
    display: none !important;
}

body div#co div#tct.thc div.tbc div.tbcb button { /* The "Archive", "Report Spam" and "Delete" buttons */
display: none !important;
}

body div#co div#tct.thc div.tbc div.tbcs span#sl_r.l, /* Select: Read */
body div#co div#tct.thc div.tbc div.tbcs span#sl_u.l, /* Select: Unread */
body div#co div#tct.thc div.tbc div.tbcs span#sl_s.l, /* Select: Starred */
body div#co div#tct.thc div.tbc div.tbcs span#sl_t.l { /* Select: Unstarred */
    display: none !important;
}

body div div#co div#tcb.thc div.tbc { /* The message toolbar of the bottom (Select: All, None, ..., Unstarred) */
    display: none !important;
}

body div div#co div.fs table tr td#fi div#rhc div.rh div#ra { /* The big AdSense box */
    display: none !important;
}

body div div#co div.fs table tr td#fi div#rhc div.rh div#rb div.rhh { /* The "About these links" container */
    display: none !important;
}

body div#ft div.ft {
    display: none !important; /* The first line: random help messages */
}

body div#ft div.fv {
    display: none !important; /* Last but one (Gmail view: standard with...) */
}

body div#ft div.fcs {
display: none !important; /* The last line (Termos of User, Privacy Policy etc.) */
}

}

Se tudo deu certo as mudanças se aplicarão ao Gmail imediatamente. Para desabilitar o estilo é só clicar no ícone da Stylish, e em seguida clicar sobre a primeira opção que aparece, de baixo para cima, que será a descrição que você deu ao estilo.

Para editar esse código uma vez que ele foi aplicado a um site, clique no ícone da Stylish e vá em “Manage Styles…”. Em seguida escolha a folha de estilos desejada.

Conclusões

O grau de utilidade da Stylish para determinado site é diretamente proporcional ao grau de preocupação dos criadores desse site com a separação entre estrutura (HTML) e apresentação (CSS). Os desenvolvedores do Gmail, por exemplo, possuem diversas propriedades ligadas à apresentação expressas inline em seu código HTML (como a largura do logo do Gmail). Neste caso em especial é impossível para mim sobrescrever a largura desse logo pelo CSS, pois a prioridade dos estilos inline é sempre superior a daqueles declaradas em um arquivo CSS externo.

Portanto, saiba desde já que você não poderá fazer tudo que pensar com todos os sites que você mais gosta, mas provavelmente poderá se divertir bastante tentando.

Atualização 1 (15/10/2007):

  • Link “Sent Mail” foi retirado
  • Link “Drafts” foi retirado
  • Link “All Mail” foi retirado
  • Botão “Archive” foi retirado
  • Botão “Report Spam” foi retirado
  • Botão “Delete” foi retirado
  • Os links do topo esquerdo foram removidos
  • Os links do topo direito foram arrastados para o extremo esquerdo
  • Muitos links perderam o sublinhado

Atualização 2 (17/10/2007):

  • Links “Settings | Help | Logout” não são mais sublinhados

Atualização 3 (30/10/2007):

  • Link “Spam” foi retirado: os spams são removidos pelo Gmail em 30 dias, então melhor não vê-los, certo?

Atualização 4 (08/11/2007):