Problemas com Linux e Eclipse (Android)

Eclipse fecha ao executar ou criar o projeto? Adicione esta linha no eclipse.ini:

-Dorg.eclipse.swt.browser.DefaultType=mozilla

Problemas com o R ou outras libs? Instale estes pacotes:

sudo apt-get install lib32stdc++6

sudo apt-get install lib32z1 lib32z1-dev

sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5

 

Ajustando as configurações e/ou sensibilidade do seu touchpad no Linux/Ubuntu

Recentemente troquei meu notebook e migrei do Windows para o Linux. Uma das coisas que não gostei foi a falta de suporte da Sony para os notebooks que utilizam alguma versão Linux. Por outro lado, adorei a liberdade que temos para configurar e personalizar este maravilhoso sistema operacional.

A utilização do touchpad não era das mais agradáveis no Linux. O touch ficou muito sensível e em alguns toques eu tinha que “tocar” com força. Procurando pelas configurações do touchpad consegui melhorar, e muito, seu uso.

Primeiro vamos listar os dispositivos para saber qual é o ID do touchpad:

xinput list

No meu caso obtive uma lista e descobri o ID que é 11:

? SynPS/2 Synaptics TouchPad              	id=11	[slave  pointer  (2)]

Agora liste (e grave em um arquivo .txt por exemplo) as configurações atuais do seu touchpad:

xinput --watch-props 11

Onde 11 é o ID do meu touchpad.

Agora é só brincar/alterar as configurações e valores de acordo com o seguinte comando:

xinput --set-prop ID "Nome da Propriedade" xx

Onde ID é seu número, Nome da Propriedade é o nome conforme a lista e XX os valores do jeito que estão (com ou sem vírgulas).

Por exemplo, diminuí a pressão do toque com dois dedos (como botão direito):

xinput --set-prop 11 "Synaptics Two-Finger Pressure" 182

Também reduzi um pouco a sensibilidade dos movimentos/toques com um dedo:

xinput --set-prop 11 "Synaptics Finger" 30 50 100

Este site possui uma documentação mais detalhada sobre cada uma das configurações: http://www.x.org/archive/X11R7.5/doc/man/man4/synaptics.4.html

Se você reiniciar seu computador, as configurações serão perdidas. Por isso, adicione os comandos no arquivo /etc/rc.local para que sejam executados ao iniciar o sistema. Abra ele com algum editor e cole os comandos lá. Por exemplo:

nano /etc/rc.local

Espero ter ajudado 🙂

[Resolvido] Teclas/comandos para controle de brilho no Linux (ubuntu, kubuntu, mint, outros)

Comprei um Ultrabook Sony Vaio e resolvi instalar o Linux (Ubunu 13.04) para usar no dia a dia. Quase tudo funcionou perfeitamente, não fosse novamente o problema com as teclas fn de brilho.

Este mesmo problema me fez perder algumas horas com o Windows e agora com o Linux.

Depois de muito procurar, consegui achar uma solução para este problema.

O arquivo que controla o brilho do Sony Vaio no Ubuntu 13.04 (no Slackware e provavelmente em outras versões também) é o:

/sys/class/backlight/intel_backlight/brightness

Bastou abrir como root, alterar o valor e salvar que o brilho da tela se ajustou na hora!

Resolvi então criar um script em Python e atribuir ele a alguma tecla de atalho (o padrão FN+F5/6 não funcionou). Para fazer isto, crie um arquivo chamado brightness_up.py (ou outro_nome.py) e adicione o seguinte código:

max = open("/sys/class/backlight/intel_backlight/max_brightness")
actual = open("/sys/class/backlight/intel_backlight/brightness","w+")

max = int(max.read())
bright = int(actual.read()) + 285

if (bright <= max):
        actual.write("%s" % (bright))
else:
        actual.write("%s" % (max))

Este script lê o arquivo que possui o valor máximo para o brilho e faz uma verificação para aumentar ou atribuir o valor máximo no arquivo que possui o controle do brilho atual.

Agora vamos criar o arquivo brightness_down.py que vai ter o script para diminuir o brilho:

actual = open("/sys/class/backlight/intel_backlight/brightness","w+")

min = 287
bright = int(actual.read()) - 285

if (bright >= min):
        actual.write("%s" % (bright))
else:
        actual.write("%s" % (min))

No meu caso, salvei os dois arquivos na pasta /home/rafael.

Bom, agora vamos criar o atalho no teclado. Vá em Configurações do Sitemas > Teclados

Clique na aba Atalhos de teclado e depois no botão + no final da janela. Você vai criar dois atalhos com as configurações:

Nome: Aumentar Brilho
Comando: python /home/rafael/brightness_up.py (ou local que você salvou)

Nome: Diminuir Brilho
Comando: python /home/rafael/brightness_down.py (ou local que você salvou)

Agora clique no final da linha destes registros (em cima de Desabilitado) e aperte as teclas que deseja. No meu caso eu coloquei Shift + F6 para aumentar e Shift + F5 para diminuir.

Agora vamos adicionar um script (dica do Prof. Luiz Arthur) para alterar o dono do arquivo toda vez que o computador é ligado. Para isso, adicione as seguintes linhas no arquivo /etc/rc.local (vi /etc/rc.local ou nano /etc/rc.local):

# Altera o dono do arquivo para o usuário rafael
/bin/chown rafael /sys/class/backlight/intel_backlight/brightness
# Altera o valor do arquivo para 1000 (diminui o brilho máximo antes de iniciar)
echo 1000 > /sys/class/backlight/intel_backlight/brightness

Script Bom, é isto aí galera. Espero ter ajudado.

Evento jQuery ao abrir o modal (light box) do Twitter Bootstrap

Se você quer chamar um evento ao abrir o modal (light box) do Twitter Bootstrap, utilize o seguinte código:

$("#id_da_div").on('shown', function() {
        alert('Abriu a light box');
        // funções que deseja
    });

Esta função será executada quando a div identificada acima (#id_da_div) for aberta.

Redirecionamento de diretórios (pastas) com .htaccess

Se você quer redirecionar os acessos de um certo link, por exemplo:
http://www.meusite.com.br/pasta/antiga/imagens/foto.jpg

Para um endereço novo:
http://www.meusite.com.br/novo/fotos/foto.jpg

É possível fazer de forma simples com o arquivo .htaccess.

Se você não tem, crie um arquivo novo e salve como .htacess. Se você já tem, adicione este conteúdo:

RewriteEngine on
RewriteBase /
RewriteRule ^pasta/antiga/imagens/(.*)$ http://www.meusite.com.br/novo/fotos/$1 [R=301,L]

Envie o arquivo para o diretório base de sua hospedagem (www ou public_html).

Assim, todos os acessos a pastas e arquivos dentro da pasta antiga serão enviados para a pasta nova, independente se há outras pastas dentro.

Restaurar imagem de fábrica da Dell sem o Dell Backup Recovery Manager

Esta semana meu computador deu problema e o programa Dell Backup e Recovery Manager (DBRM) não habilitava a opção para fazer a restauração.

Meus arquivos da partição Recovery estão em um HD externo. O HD do notebook é um de 120gb SSD que comprei e decidi não particionar ele.

Meu arquivo de imagem é o:  factory.wim

Encontrei um jeito de fazer a restauração sem usar o programa da Dell, mas ele apenas copia os arquivos para a partição informada. Este procedimento não apaga seus dados (no prompt de comando você pode formatar antes de copiar):

  • Dê o boot pelo CD do Windows e vá na opção para Reparar seu computador;
  • Deixe a primeira opção marcada, não selecione o Windows (caso tenha encontrado a instalação) e avance;
  • Abra o Prompt de Comando;
  • Navegue até a partição onde seu windows está instalado:
C: (se c: for sua partição)
dir
  •  Você deverá ver a pasta do Windows e os arquivos deste disco;
  • É bom formatar a unidade: format c:
  • Navegue até a partição onde a imagem está (vá tentando as outras letras e usando o comando dir até encontrar a partição da DELL:
F:
cd tools
imagex /apply f:/dell/image/factory.wim 1 c:

Supondo que:

  • C: é seu disco local e F: sua partição Recovery;
  • f:/sell/image/factory.wim é o local onde a imagem está;

Aguarde a conclusão e digite “exit” para sair. Saia do modo de recuperação e reinicie o computador.

Se você não tem a pasta Tools no Recovery, faça o download aqui: http://www.randem.com/discus/messages/9402/PC_Recovery_Tools-10473.zip

Fonte: http://www.randem.com/discus/messages/9402/10284.html
Eu apenas traduzi os passos deste tutorial.

 

Contador de tempo regressivo (cronômetro) em Javascript/JQuery

Procurei pela internet um contador regressivo (estilo cronômetro) para mostrar o tempo em uma sessão de login. Achei alguns modelos, mas muito extensos. Até que encontrei um parecido com o que eu queria e resolvi adaptá-lo.

O contador mostra a contagem regressiva em uma tag html (span, div, etc).

Não se esqueça de incluir o JQuery

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

O código está todo comentado!

<script type="text/javascript">

var tempo = new Number();
// Tempo em segundos
tempo = 300;

function startCountdown(){

	// Se o tempo não for zerado
	if((tempo - 1) >= 0){

		// Pega a parte inteira dos minutos
		var min = parseInt(tempo/60);
		// Calcula os segundos restantes
		var seg = tempo%60;

		// Formata o número menor que dez, ex: 08, 07, ...
		if(min < 10){
			min = "0"+min;
			min = min.substr(0, 2);
		}
		if(seg <=9){
			seg = "0"+seg;
		}

		// Cria a variável para formatar no estilo hora/cronômetro
		horaImprimivel = '00:' + min + ':' + seg;
		//JQuery pra setar o valor
		$("#sessao").html(horaImprimivel);

		// Define que a função será executada novamente em 1000ms = 1 segundo
		setTimeout('startCountdown()',1000);

		// diminui o tempo
		tempo--;

	// Quando o contador chegar a zero faz esta ação
	} else {
		window.open('../controllers/logout.php', '_self');
	}

}

// Chama a função ao carregar a tela
startCountdown();

</script>

 

 

Desabilitar mensagem de macro no Microsoft Office Word 2010

Mensagem Macro Office Word 2010

Esta mensagem pode ser de macro ou suplementos instalados no Word. No meu caso era um suplemento chamado “Send to Bluetooth”. Para acabar com a mensagem foi preciso abrir o Word como Administrador e Remover este suplemento. Siga os passos abaixo:

  1. Clique com o botão direito no atalho do Word 2010 e vá em Propriedades > Compatibilidade > [x] Executar este programa como administrador (marque esta opção);
  2. Abra o Word 2010 e vá em Arquivo > Ajuda > Opções;
  3. Clique em Suplementos, e vá na opção Gerenciar (no final), selecione Suplementos de COM e clique em Ir…
  4. Agora marque a opção e nos botões do lado direito clique em Remover, e depois em OK;

Feito isso pode fechar as opções (se fechar sozinho) e reiniciar o Word.

Agora pode voltar somente no passo 1 e desmarcar a opção de Executar este programa como administrador (opcional).

Bom, resolveu meu problema aqui e espero que ajude outras pessoas também.

Imprimir sem janela de confirmação no Mozilla Firefox

Hoje eu estava com dificuldade em resolver este problema. O cliente queria que, ao inserir uma venda, imprimisse um comprovante sem ter que clicar em algum botão e, muito menos, confirmar a impressão naquela janela onde selecionamos a impressora.

  1. abra uma aba no firefox e digite: about:config
  2. clique com o botão direito e vá em Nova preferência > Boolean
  3. cole este código: print.always_print_silent
  4. na tela seguinte selecione True

Feito estes passos, toda vez que você receber uma impressão ela será enviada diretamente para a impressora. Aí surge outro problema: o Mozilla Firefox mantém como padrão a última impressora que você utilizou nele. Para resetar esta opção, ainda na aba about:config:

  1. procure a opção: print.print_printer
  2. clique com o botão direito e vá em Restaurar o padrão

Ainda não acabou! Na próxima impressão o Mozilla vai armazenar novamente a impressora utilizada. Para que ele sempre utilize a impressora que é padrão do seu computador:

  1. procure a opção: print.save_print_settings
  2. dê dois cliques com o botão esquerto do mouse para que altere seu valor para False
  3. a linha selecionada ficará em negrito

Bom, agora você não vai mais ver a janela de confirmação de impressão e o Mozilla Firefox sempre irá utilizar a impressora que está definida como padrão no seu computador. Se você alterar a impressora padrão não será necessário reiniciar o navegador para utiliza-lá.

Acessar um elemento da página principal estando dentro do iframe

Você possui a página principal (principal.html) e dentro possui um iframe (iframe.html).

Para pegar um elemento da página principal de dentro do iframe (iframe.html) usamos o seguinte código em javascript:

// Para pegar o valor de um elemento, ex: div, p, h1, entre outros
parent.document.getElementById('elemento').innerHTML;
// Para definir
parent.document.getElementById('elemento').innerHTML = 'Texto aqui =)';
// Para utilizar em formulário (input) troque o 'innerHTML' por 'value'