O meu "regresso ao Ubuntu" teve como consequência, entre outras coisas o regresso ao Thunderbird e o abandono do Mail.app. Isto levou-me a pesquisar algumas extensões para tornar o uso do Thunderbird mais simples.
Para não variar, a minha pesquisa acabou por devolver um resultado no lifehacker com uma lista de plugins bastante interessante.
quinta-feira, 30 de agosto de 2007
quarta-feira, 29 de agosto de 2007
Emacs org-mode
Descobri hoje o org-mode para o Emacs e parece-me que finalmente tenho a solução que queria para as TODO list.
Segui este tutorial mas como o autor por vezes se esquece de dizer como se fazem certas coisas, convém ter o manual por perto para consultar a secção 2.2. Descobri também um tutorial para usar o org-mode com o GTD que ainda não tive oportunidade de ler.
Entretanto tive também oportunidade de experimentar o TaskFreak que me foi sugerido num comentário. O TaskFreak para mim tem dois problemas base. O facto de todas as tarefas terem que estar associadas a um projecto e assim obrigar à criação de projectos e também o facto de ser na prática uma lista "plain" de tarefas por projecto , com um certo feeling que cada tarefa é uma linha de texto mas que dá mais trabalho a criar. Parece-me o parente pobre do dotproject (não se deixem enganar pelo nome, é em PHP) que mesmo sendo mais completo não se encaixou no meu método de trabalho.
Segui este tutorial mas como o autor por vezes se esquece de dizer como se fazem certas coisas, convém ter o manual por perto para consultar a secção 2.2. Descobri também um tutorial para usar o org-mode com o GTD que ainda não tive oportunidade de ler.
Entretanto tive também oportunidade de experimentar o TaskFreak que me foi sugerido num comentário. O TaskFreak para mim tem dois problemas base. O facto de todas as tarefas terem que estar associadas a um projecto e assim obrigar à criação de projectos e também o facto de ser na prática uma lista "plain" de tarefas por projecto , com um certo feeling que cada tarefa é uma linha de texto mas que dá mais trabalho a criar. Parece-me o parente pobre do dotproject (não se deixem enganar pelo nome, é em PHP) que mesmo sendo mais completo não se encaixou no meu método de trabalho.
terça-feira, 28 de agosto de 2007
Script para um pipe menu no openbox
Fiz um script para colocar qualquer output de um comando de shell num pipe menu do Openbox
O próximo passo será colocar opções para definir um script que faz o handling do click sobre cada item do menu e opção para não cortar as linhas em branco ou só com espaços. Falta também substituir as concatenações por %s e um bug que faz com que não apareça nada nos menus quando o output do comando de shell contém um caractér & porque o XML fica inválido, penso eu.
Tal como está escrito nos comentários, há problemas com a formatação dos outputs porque a fonte que uso nos menus não é monospaced nem tenho intenção que seja, o que faz com que as linhas do output fiquem desalinhadas.
#!/usr/bin/python
import os
import sys
# Example
#
# /generic.py "df -h -x tmpfs -x usbfs"
# /generic.py "ps ax"
# /generic.py cal
#
# "cal" output shows up unformated due to non monospaced fonts
# Set the default command
cmd = "ls ~/ -1"
if len(sys.argv) > 1:
# Replace the default command with the one given on the command line
cmd = sys.argv[1]
# Execute the command
sf = os.popen(cmd)
# Get the command stdout output
cal = sf.read()
# Generate the menu item
menu = "\n".join(['<item label="' + ln + '"></item>' for ln in cal.split("\n") if ln and not ln.isspace()])
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
print "<openbox_pipe_menu>"
print menu
print "</openbox_pipe_menu>"
O próximo passo será colocar opções para definir um script que faz o handling do click sobre cada item do menu e opção para não cortar as linhas em branco ou só com espaços. Falta também substituir as concatenações por %s e um bug que faz com que não apareça nada nos menus quando o output do comando de shell contém um caractér & porque o XML fica inválido, penso eu.
Tal como está escrito nos comentários, há problemas com a formatação dos outputs porque a fonte que uso nos menus não é monospaced nem tenho intenção que seja, o que faz com que as linhas do output fiquem desalinhadas.
domingo, 26 de agosto de 2007
obpager 1.8 no ubuntu feisty
Andei a experimentar o obpager, basicamente a única coisa que eu queria era algo que me dissesse em que desktop estou. Como o link para o .deb que está na página do projecto não funciona tive que o compilar. Apesar de ter instaladas as poucas dependências e respectivos headers a compilação falhava.
Primeiro não encontrava o header da xlib Xlib.h, porque o local onde este ficheiro se encontra não estava definido na Makefile. A solução foi editar o ficheiro Makefile e alterar a linha 18 de
para
Isto fez com que passasse a ter outro erro, o shape.h também não era encontrado, mais uma vez pelo mesmo problema. De novo a solução foi colocar a path no Makefile na mesma linha.
Agora tinha um novo problema, ao compilar falhava com o seguinte erro:
Um erro anterior sugeria qual o problema:
Uma pesquisa no google dizia que o problema se deve à versão do gcc. A solução seria então acrescentar ao ficheiro src/main.cc o seguinte:
Aqui está a thread que me levou à solução, o comentário que tem o diff, o 3º é o que resolve o problema apesar de o meu gcc ser o 4.1.2 e não o 3.4.
Após tudo isto o obpager ficou a funcionar.
Primeiro não encontrava o header da xlib Xlib.h, porque o local onde este ficheiro se encontra não estava definido na Makefile. A solução foi editar o ficheiro Makefile e alterar a linha 18 de
INCLUDES = -I/usr/X11R6/include/X11 -I/usr/X11R6/include/X11/extensions -I./src
para
INCLUDES = -I/usr/X11R6/include/X11 -I/usr/X11R6/include/X11/extensions -I./src -I/usr/include/X11
Isto fez com que passasse a ter outro erro, o shape.h também não era encontrado, mais uma vez pelo mesmo problema. De novo a solução foi colocar a path no Makefile na mesma linha.
INCLUDES = -I/usr/X11R6/include/X11 -I/usr/X11R6/include/X11/extensions -I./src -I/usr/include/X11 -I/usr/include/X11/extensions/
Agora tinha um novo problema, ao compilar falhava com o seguinte erro:
g++: ./objs/src/main.o: No such file or directory
Um erro anterior sugeria qual o problema:
src/main.cc:161: error: `errno' undeclared (first use this function)
Uma pesquisa no google dizia que o problema se deve à versão do gcc. A solução seria então acrescentar ao ficheiro src/main.cc o seguinte:
#include <sys/errno.h>
Aqui está a thread que me levou à solução, o comentário que tem o diff, o 3º é o que resolve o problema apesar de o meu gcc ser o 4.1.2 e não o 3.4.
Após tudo isto o obpager ficou a funcionar.
sexta-feira, 24 de agosto de 2007
Thunderbird 2
O Ubuntu Feisty vem com o Thunderbird 1.5 nos repositórios, ontem andava a tentar instalar o dicionário PT_pt e aquilo dizia-me que só dava no 2.0.
Encontrei aqui a solução para quem quiser ter o 2.x em vez do 1.5, entretanto instalei-lhe também um biff
Encontrei aqui a solução para quem quiser ter o 2.x em vez do 1.5, entretanto instalei-lhe também um biff
quinta-feira, 23 de agosto de 2007
Mais um passo nas to-do lists
Há que tempos que eu ando a tentar arranjar uma TO-DO list mais eficaz do que fazer tudo de memória. Desde o GTD até a anotações num papelinho, nada tem resultado. Por esse motivo, vale sempre a pena dar mais uma olhadela a qualquer coisa que apareça. Manter a TO-DO list pequena, gosto da ideia de ter várias listas separadas, uma pequena para acções imediatas, outra para acções a fazer um dia e a lista de pequenas tarefas não prioritárias a despachar num intervalo da principal ou quando esta estiver concluída.
Só falta um software que implemente isto.
Só falta um software que implemente isto.
terça-feira, 21 de agosto de 2007
Gnome e OpenBox
Eu utilizo o OpenBox no meu ubuntu tanto em casa como no trabalho. Em ambos algumas features como o Ctrl-Alt-L fazer lock ao ecrã ou a roda do teclado controlar o som, como referi no post anterior, são-me fornecidas por qualquer coisa do gnome que me anda a correr nas máquinas e que eu não sei bem o que é.
Um "ps ax" sugere que seja o gnome-settings-daemon o causador destas coisas, a verdade é que não sei porquê que isto está a correr já que um colega que usa o mesmo setup ubuntu->gdm->openbox não tem estas features activadas.
Por mim fico contente que isto aconteça mas já agora gostaria de perceber porquê!
Um "ps ax" sugere que seja o gnome-settings-daemon o causador destas coisas, a verdade é que não sei porquê que isto está a correr já que um colega que usa o mesmo setup ubuntu->gdm->openbox não tem estas features activadas.
Por mim fico contente que isto aconteça mas já agora gostaria de perceber porquê!
segunda-feira, 20 de agosto de 2007
Mixer no gnome com SB Live
O meu PC já tem uns aninhos, a placa de som talvez ainda mais. É uma SB Live 5.1. Isto raramente é um problema para mim já que utilizo o OpenBox ou o Windowmaker mesmo em computadores mais recentes.
Hoje um bocado por acidente descobri que a "rodinha" para controlar o volume que está no meu teclado funciona sem que eu me tenha dado ao trabalho de a configurar. Infelizmente esta feature é grandemente prejudicada pelo facto de nem a mixer do gnome nem o volume.app controlarem o volume de som da minha placa.
Pus-me a investigar e finalmente encontrei a solução, que afinal é simples mas pode custar a descobrir.
Um bocado a provar que a linha de comandos é mais fácil do que qualquer ambiente gráfico, a solução que apareceu primeiro foi a do volume.app em forma de uma opção que é passada no arranque desta aplicação. Primeiro corri o alsamixer e alterei os settings todos até descobrir que o volume nesta placa (e com este driver) não é alterado pelo "master" mas sim pelo "wave". Daqui a descobrir o que fazer no volume.app foi um passo. Um simples:
Revelou que a source que eu necessitava alterar era a Nº10, daí foi só arrancar a aplicação com o seguinte parâmetro:
Agora restava descobrir como fazer o mesmo com a mixer do gnome já que concerteza era o gnome-session que estava a fazer com que a "rodinha" do teclado funcionasse. Primeiro arranquei com o controlador de som do gnome. Como não estava a usar o gnome e sim o OpenBox fi-lo da seguinte forma:
Aqui foi onde perdi mais tempo pois não estava a perceber como funcionava o interface. Até que num momento de inspiração percebi que na lista que se encontra em baixo bastava selecionar a source que seria controlada pela mixer e o problema ficou resolvido. A opção que tive que selecionar foi "Wave" como se pode ver no screenshot.
Hoje um bocado por acidente descobri que a "rodinha" para controlar o volume que está no meu teclado funciona sem que eu me tenha dado ao trabalho de a configurar. Infelizmente esta feature é grandemente prejudicada pelo facto de nem a mixer do gnome nem o volume.app controlarem o volume de som da minha placa.
Pus-me a investigar e finalmente encontrei a solução, que afinal é simples mas pode custar a descobrir.
Um bocado a provar que a linha de comandos é mais fácil do que qualquer ambiente gráfico, a solução que apareceu primeiro foi a do volume.app em forma de uma opção que é passada no arranque desta aplicação. Primeiro corri o alsamixer e alterei os settings todos até descobrir que o volume nesta placa (e com este driver) não é alterado pelo "master" mas sim pelo "wave". Daqui a descobrir o que fazer no volume.app foi um passo. Um simples:
$ volume.app -l
Mixer device: TriTech id 3 (EMU10K1)
Available sources:
1. Master volume (100%)
2. Bass (50%)
3. Treble (50%)
4. FM Synth volume (100%)
5. PCM Wave volume (100%)
6. PC Speaker (0%)
7. Line In level (0%)
8. Microphone level (0%)
9. CD volume (81%)
10. PCM Wave 2 volume (64%)
11. Input gain (0%)
12. Line In 1 (0%)
13. Digital In 1 (0%)
14. Phone input (0%)
15. Phone output (100%)
16. Video volume (0%)
Revelou que a source que eu necessitava alterar era a Nº10, daí foi só arrancar a aplicação com o seguinte parâmetro:
volume.app -c 10
Agora restava descobrir como fazer o mesmo com a mixer do gnome já que concerteza era o gnome-session que estava a fazer com que a "rodinha" do teclado funcionasse. Primeiro arranquei com o controlador de som do gnome. Como não estava a usar o gnome e sim o OpenBox fi-lo da seguinte forma:
$ gnome-sound-properties
Aqui foi onde perdi mais tempo pois não estava a perceber como funcionava o interface. Até que num momento de inspiração percebi que na lista que se encontra em baixo bastava selecionar a source que seria controlada pela mixer e o problema ficou resolvido. A opção que tive que selecionar foi "Wave" como se pode ver no screenshot.

sexta-feira, 17 de agosto de 2007
A saga continua...
A minha saga no uso do emacs continua. Agora consegui descobrir como instalar um emacs mas em bonito.
quarta-feira, 15 de agosto de 2007
segunda-feira, 13 de agosto de 2007
Essenciais de um windowmanager
Ainda em relação aos windowmanagers que utilizo deixo aqui a lista de features que assim de repente me ocorrem como indispensáveis:
E pronto, penso que são só estas as carecterísticas que considero fundamentais num windowmanager, se me lembrar de mais alguma eu aviso.
- Ser leve
- Permitir configurar as teclas de atalho directo para os desktops (consegui reduzir para 6 e uso normalmente Alt-Fn para lhes aceder)
- Permitir mudar de desktop com a roda do rato, rodar para cima "next desktop" e para baixo "previous desktop", no OpenBox isto é configurável e por omissão vem ao contrário
- Suportar dockapps
- Permitir definir que aplicações abrem em que desktops e não as abrir noutro que não o definido
- Ter uma maneira rápida de lançar as aplicações mais usadas. No Windowmaker arrasto o icon dessas aplicações para junto do clip no desktop correspondente. Como existem coisa tipo iDesk, praticamente qualquer wm tem uma solução fácil para isto. Entretanto defini o Alt-r como shortcut para correr o gmrun o que é ainda melhor do que ter icons para lançar as aplicações.
E pronto, penso que são só estas as carecterísticas que considero fundamentais num windowmanager, se me lembrar de mais alguma eu aviso.
Openbox
O meu regresso ao Ubuntu no computador do trabalho tem tido as suas consequências. Ao regressar ao Linux começo a utilizar o Windowmaker, isto causa logo algum entusiamo a um colega que larga o Beryl e muda também para o Windomaker. Não que ele desconhecesse o Windowmaker mas porque ele acha que o Windowmaker é muito poderoso e eu ter-lhe relembrado disso foi o que faltava para o regresso.
Mas a coisa não se fica por aqui, ele começa a experimentar windomanagers e chega ao OpenBox, e ao mostrar-me o OpenBox eu decidi dar uma hipótese ao dito windowmanager.
Como eu raramente faço reboots ou logoff, ainda só entrei duas vezes no OpenBox. Uma quando o acabei de instalar e outra quando lhe coloquei no script de arranque a lista de software que quero correr juntamente com o OpenBox. De ambas as vezes o OpenBox arrancou imediatamente, de tal modo que eu fiquei à espera convencido que ainda faltava alguma coisa... mas não, de facto ele já tinha terminado de arrancar. Para ajudar à festa os menus são extensíveis em python.
Estou a utilizá-lo neste momento e já o tenho a fazer praticamente tudo o que tinha no Windowmaker. Pelo menos nos próximos tempos, se tudo correr bem, vou estar a bombar no OpenBox.
Mas a coisa não se fica por aqui, ele começa a experimentar windomanagers e chega ao OpenBox, e ao mostrar-me o OpenBox eu decidi dar uma hipótese ao dito windowmanager.
Como eu raramente faço reboots ou logoff, ainda só entrei duas vezes no OpenBox. Uma quando o acabei de instalar e outra quando lhe coloquei no script de arranque a lista de software que quero correr juntamente com o OpenBox. De ambas as vezes o OpenBox arrancou imediatamente, de tal modo que eu fiquei à espera convencido que ainda faltava alguma coisa... mas não, de facto ele já tinha terminado de arrancar. Para ajudar à festa os menus são extensíveis em python.
Estou a utilizá-lo neste momento e já o tenho a fazer praticamente tudo o que tinha no Windowmaker. Pelo menos nos próximos tempos, se tudo correr bem, vou estar a bombar no OpenBox.
quinta-feira, 9 de agosto de 2007
terça-feira, 7 de agosto de 2007
O que me tem mantido ocupado
O meu recente regresso ao Ubuntu teve as suas consequências. Eu apesar de ser utilizador do Ubuntu não uso o Gnome, prefiro o Windowmaker.
Quanto aos editores, costumava utilizar o vim, gvim e nedit. Fui verificar e descobri que o Nedit está parado desde 2004 e que ficou para trás, não tem auto-complete entre muitas outras features a que me habituei no Textmate e os 3 anos parados sugerem que nunca as terá. A verdade é que o Textmate elevou a fasquia de qualidade que um editor precisa ter para me convencer e, como eu não me consigo habituar ao emacs, o vi continua a ser a única solução.Esta conclusão não chegou sem que antes experimentasse o gedit, que parece estar no bom caminho mas... ainda tem muitos problemas. Problemas suficientes para que o descartasse numa tarde.
Tendo em conta que eu trabalho muito em servidores remotos, andar a copiar ficheiros por FTP para os editar localmente e depois voltar a colocar no servidor, etc..., não é uma solução viável.
Desde logo surgiu uma solução que não sendo péssima também não me agradava. Como eu me decidi pelo vi ou dependendo do contexo o gvim, descobri que este pode editar directamente ficheiros remotos utilizando a seguinte sintaxe:
Não é uma má solução mas sem autocomplete não era opção.
Seguiu-se uma segunda solução, durante os meus testes com o gedit utilizei o nautilus para navegar no filesystem remoto por ssh, assim bastava fazer duplo clique sobre o ficheiro e editar, mas... o gvim não suporta vfs logo isto não funciona. Mas encontrei uma versão alternativa só que não consegui descobrir como atribuir um shortcut para isto, logo tinha que selecionar o ficheiro, clicar com o botão direito selecionar a opção "scripts" e depois "Open With Gvim". Não, isto também não é uma opção válida, não há produtividade que aguente este tipo de coisa, isto assim mais parecia o Windows.
A terceira foi de vez, a solução que encontrei foi montar a ligação ssh como se fosse uma drive. Daqui para a frente passei a poder abrir os ficheiros com o gvim, ou outro editor à escolha, usar o autocomplete do terminal ou se perder totalmente a cabeça até usar o nautilus.
Quanto aos editores, costumava utilizar o vim, gvim e nedit. Fui verificar e descobri que o Nedit está parado desde 2004 e que ficou para trás, não tem auto-complete entre muitas outras features a que me habituei no Textmate e os 3 anos parados sugerem que nunca as terá. A verdade é que o Textmate elevou a fasquia de qualidade que um editor precisa ter para me convencer e, como eu não me consigo habituar ao emacs, o vi continua a ser a única solução.Esta conclusão não chegou sem que antes experimentasse o gedit, que parece estar no bom caminho mas... ainda tem muitos problemas. Problemas suficientes para que o descartasse numa tarde.
Tendo em conta que eu trabalho muito em servidores remotos, andar a copiar ficheiros por FTP para os editar localmente e depois voltar a colocar no servidor, etc..., não é uma solução viável.
Desde logo surgiu uma solução que não sendo péssima também não me agradava. Como eu me decidi pelo vi ou dependendo do contexo o gvim, descobri que este pode editar directamente ficheiros remotos utilizando a seguinte sintaxe:
gvim scp://server_address//server_path/filename
Não é uma má solução mas sem autocomplete não era opção.
Seguiu-se uma segunda solução, durante os meus testes com o gedit utilizei o nautilus para navegar no filesystem remoto por ssh, assim bastava fazer duplo clique sobre o ficheiro e editar, mas... o gvim não suporta vfs logo isto não funciona. Mas encontrei uma versão alternativa só que não consegui descobrir como atribuir um shortcut para isto, logo tinha que selecionar o ficheiro, clicar com o botão direito selecionar a opção "scripts" e depois "Open With Gvim". Não, isto também não é uma opção válida, não há produtividade que aguente este tipo de coisa, isto assim mais parecia o Windows.
A terceira foi de vez, a solução que encontrei foi montar a ligação ssh como se fosse uma drive. Daqui para a frente passei a poder abrir os ficheiros com o gvim, ou outro editor à escolha, usar o autocomplete do terminal ou se perder totalmente a cabeça até usar o nautilus.
quinta-feira, 2 de agosto de 2007
De volta ao ubuntu
Devido ao cabo do meu carregador ter derretido e ao carregador para o Powerbook G4 custar €130, se bem que consigo uns manhosos por menos de €50. o que continua a ser caro, vou estar uns dias sem o portátil, o que me leva a voltar a usar o Ubuntu no trabalho.
Este post já está a ser escrito a partir do CD de instalação do Ubuntu ;)
Este post já está a ser escrito a partir do CD de instalação do Ubuntu ;)
Subscrever:
Mensagens (Atom)