http://www.michaelv.org.nyud.net/
Bem legal.
Tenho uma máquina com o Ubuntu instalado e o vmware player rodando o Windows. Depois que fiz algumas atualizações no sistema algumas teclas (/, ?, Insert, Delete, Home, End …) simplesmente pararam de funcionar quando executava a máquina virtual. Pelo que descobri, o problema é que o VMware não encontra o mapeamento de teclado em uso. Para resolver, edite o arquivo ~/.vmware/preferences e adicione as seguintes linhas ao final do aquivo
xkeymap.usekeycodeMapIfXFree86 = true xkeymap.keysym.slash = 0x073 xkeymap.keycode.108 = 0x138 # Alt_R xkeymap.keycode.106 = 0x135 # KP_Divide xkeymap.keycode.104 = 0x11c # KP_Enter xkeymap.keycode.111 = 0x148 # Up xkeymap.keycode.116 = 0x150 # Down xkeymap.keycode.113 = 0x14b # Left xkeymap.keycode.114 = 0x14d # Right xkeymap.keycode.105 = 0x11d # Control_R xkeymap.keycode.118 = 0x152 # Insert xkeymap.keycode.119 = 0x153 # Delete xkeymap.keycode.110 = 0x147 # Home xkeymap.keycode.115 = 0x14f # End xkeymap.keycode.112 = 0x149 # Prior xkeymap.keycode.117 = 0x151 # Next xkeymap.keycode.78 = 0x46 # Scroll_Lock xkeymap.keycode.127 = 0x100 # Pause xkeymap.keycode.133 = 0x15b # Meta_L xkeymap.keycode.134 = 0x15c # Meta_R xkeymap.keycode.135 = 0x15d # Menu
Inicie novamente o vmware player e veja se funcionou. Obs.: Essas configurações são para teclados ABNT2
// Place text over center of icon; they both occupy the same space button.setVerticalTextPosition(SwingConstants.CENTER); button.setHorizontalTextPosition(SwingConstants.CENTER); // Place text above icon button.setVerticalTextPosition(SwingConstants.TOP); button.setHorizontalTextPosition(SwingConstants.CENTER); // Place text below icon button.setVerticalTextPosition(SwingConstants.BOTTOM); button.setHorizontalTextPosition(SwingConstants.CENTER); // Place text to the left of icon, vertically centered button.setVerticalTextPosition(SwingConstants.CENTER); button.setHorizontalTextPosition(SwingConstants.LEFT); // Place text to the left of icon and align their tops button.setVerticalTextPosition(SwingConstants.TOP); button.setHorizontalTextPosition(SwingConstants.LEFT); // Place text to the left of icon and align their bottoms button.setVerticalTextPosition(SwingConstants.BOTTOM); button.setHorizontalTextPosition(SwingConstants.LEFT); // Place text to the right of icon, vertically centered button.setVerticalTextPosition(SwingConstants.CENTER); button.setHorizontalTextPosition(SwingConstants.RIGHT); // Place text to the right of icon and align their tops button.setVerticalTextPosition(SwingConstants.TOP); button.setHorizontalTextPosition(SwingConstants.RIGHT); // Place text to the right of icon and align their bottoms button.setVerticalTextPosition(SwingConstants.BOTTOM); button.setHorizontalTextPosition(SwingConstants.RIGHT);
Hoje eu instalei o KDevelop no meu Ubunto 7.3, criei um projeto simples em c++ (um Hello World) compilei mas quando fui executar deu o seguinte erro:
/bin/sh/:konsole :not found
***Exited with status 127
A solução para este erro é bastante simples:
sudo apt-get install konsole
Muitas vezes precisamos executar programas via linha de comando e estes programas não estão disponíveis diretamente, ou seja, é preciso entrar com todo o diretório onde se encontra o programa para executa-lo. Por exemplo: para executar o compilador csharp csc, é preciso entrar dentro do diretório C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 caso contrário o prompt do DOS não encontrará o programa.
Para configurar o path clique com o botão direito no ícone de “Meu Computador” e entre na opção “Propriedades”. Abra a guia “Avançado”. Clique no botão “Variáveis de Ambiente”. Na lista que aparecerá abaixo (Variáveis do Sistema), procure pela variável de “Path”, selecione-a e clique em editar. Adicione agora o caminho completo de onde se encontra o programa que você quer adicionar ao path. Obs.: Não apague os outros caminhos que já estão lá, apenas adicione os novos separando-os por ponto e vírgula.
Para conferir se está tudo certo, abra o pronto de comando e digite o nome do programa que você quer executar. Você também poderá digitar path para ver todos os caminhos já adicionados na variável do sistema.
Resolvi aprender outra linguagem de programação pra variar um pouco. ![]()
Vira e mexe escuto alguém falando de Python, Ruby entre outras linguagens interpretadas e eu nem faço idéia de como se programa ou executa programas feitos nessas linguagens. Bom, não sabia. Andei lendo um pouco e vi que é a coisa é bem simples. Resolvi começar pelo Python. Para aqueles que estão começando do zero como eu, recomendo a leitura do artigo Aprenda a Programar. É uma pena o artigo não ter uma continuidade mas já dá uma boa idéia de com funciona tudo. Explica, por exemplo, como executar o Python no ambiente WEB. Minha surpresa foi que ele roda com o Apache através de um programa em cgi. Seguindo este artigo eu criei o meu primeiro programa em cgi, que a gente tanto houve falar quando se trata de programação web. Bom, fiquei bem animado com a idéia, e daqui pra frente devo publicar alguns posts relacionados ao Python. Aguardem e confiram.
Para obter informações de um arquivo tais como data e hora de criação, modificação, acesso entre outros, utilizamos a classe FileInfo. Esta classe, presente no namespace System.IO possui as propriedades CreationTime, LastWriteTime e LastAccessTime que retorna a informação de data e hora que o arquivo foi criado, modificado e aberto. Veja um exemplo de como utilizar a classe
FileInfo file_info = new FileInfo("C:\meu_arquivo.txt");
string Criado = file_info.CreationTime.ToString("dd/MM/yyyy HH:mm:ss");
string Modificado = file_info.LastWriteTime.ToString("dd/MM/yyyy HH:mm:ss");
string Acessado = file_info.LastAccessTime.ToString("dd/MM/yyyy HH:mm:ss");
Se preferir pode fazer o download do projeto abaixo com um exemplo que mostra estas e outras propriedades da classe FileInfo.
Exemplo de uso da classe FileInfo (136)
Avatares são pequenas imagens que identificam uma pessoa em um blog ou forum de discussão. Quem atualizou o WordPress para a versão 2.5 deve ter reparado nas opções de configuração de avatares no menu “Configurações – Discussão“. Lá existe a opção de “Mostrar avatares“, no entanto é preciso também adicionar uma linha no arquivo de seu template para poder exibi-los.
Para mostrar por exemplo os avatares das pessoas que comentam no se blog, abra o arquivo comments.php e adicione a linha
echo get_avatar( get_comment_author_email(), $size = '36' );
Obs.: Este código deve estar dentro do bloco de código:
foreach ($comments as $comment)
Os avatares serão exibidos baseado no e-mail da pessoa que comentou (get_comment_author_email()). Se ela possuir um registro no site do Gravatar será exibido o seu avatar, caso contrário será exibido a imagem padrão que pode ser uma imagem aleatória, basta configurar no menu do wordpress.
Veja mais sobre avatar no WordPress em http://weblogtoolscollection.com/archives/2008/03/03/gravatars-and-wordpress-25/ ou
http://codex.wordpress.org/Using_Gravatars
Já mostrei aqui como obter o dia da semana por extenso no charp. Para poder escrever a data completa no formato “[dia da semana], [dia] de [mês] de [ano]” basta obter separadamente cada uma das partes como no exemplo a seguir.
CultureInfo culture = new CultureInfo("pt-BR");
DateTimeFormatInfo dtfi = culture.DateTimeFormat;
int dia = DateTime.Now.Day;
int ano = DateTime.Now.Year;
string mes = culture.TextInfo.ToTitleCase(dtfi.GetMonthName(DateTime.Now.Month));
string diasemana = culture.TextInfo.ToTitleCase(dtfi.GetDayName(DateTime.Now.DayOfWeek));
string data = diasemana + ", " + dia + " de " + mes + " de " + ano;
Response.Write(data);
O método ToTitleCase da classe TextInfo serve para converter a primeira letra da palavra para maiúsculo e os métodos GetMonthName e GetDayName da classe DateTimeFormatInfo servem para pegar o nome do mês e do dia da semana respectivamente.
No final a variável data conterá o dia por extenso. Por exemplo:
Domingo, 19 de Outubro de 2008
Para os dias menores que 10, se você preferir escreve-los com o zero antes basta aplicar o método ToString a variável dia.
string data = diasemana + ", " + dia.ToString("00") + " de " + mes + " de " + ano;