quarta-feira, 14 de janeiro de 2009

why?

Nós vamos morrer, e isso nos torna afortunados. A maioria das pessoas nunca vai morrer, porque nunca vai nascer. As pessoas potenciais que poderiam estar no meu lugar, mas que jamais verão a luz do dia, são mais numerosas que os grãos de areia da Arábia. Certamente esses fantasmas não nascidos incluem poetas maiores que Keats, cientistas maiores que Newton. Sabemos disso porque o conjunto das pessoas possíveis permitidas pelo nosso DNA excede em muito o conjunto de pessoas reais.
Apesar dessas probabilidades assombrosas, somos eu e você, com toda a nossa banalidade, que aqui estamos...

quarta-feira, 17 de dezembro de 2008

Vim Reference




Editor VIM

Editor VI - Guia de Referência

Aurélio Marinho Jargas (http://aurelio.net)

Entrar e Sair

  • vi arquivo.txt
  • :q

Entrar, Inserir Texto, Salvar e Sair

  • vi arquivo.txt
  • i
  • Minha primeira frase no VI.
  • :wq

Entrar, Alterar Texto e Sair sem Salvar

  • vi arquivo.txt
  • dd
  • :q!

Entrar, Alterar Texto, Salvar em Outro Arquivo e Sair

  • vi arquivo.txt
  • yy
  • p
  • :w arquivo-novo.txt
  • :q

Configurar o VI

  • vi ~/.vimrc
  • i
  • set vb ru nu
  • set ic is hls scs
  • :wq

Repetir a Primeira Linha 2 Vezes e Apagar a Última

  • vi arquivo.txt
  • gg
  • yy
  • p
  • p
  • G
  • dd

Repetir Comandos

  • vi arquivo.txt
  • A
  • FIM
  • j
  • .
  • j
  • .

Abrir Dois Arquivos Simultaneamente

  • vi arquivo.txt
  • :split ~/.vimrc
  • Ctrl+W
  • Ctrl+W
  • :q
  • :q

Obter Ajuda

  • vi arquivo.txt
  • :help


Comandos de Arquivo
:q Sai do VI
:w Salva alteraçoes feitas
:wq Salva aterações e sai do VI
:q! Sai sem salvar
:w abc Grava arquivo com o nome 'abc'
:r abc Insere o conteúdo do arquivo 'abc'
:e abc Edita o arquivo 'abc'

Modo de Inserção
i Entra no modo de Inserção
a Entra no modo de Inserção, após o cursor
o Entra no modo de Inserção, em uma nova linha
Sai do modo de Inserção

Copiar, Cortar e Colar
yy Copia a linha inteira
5yy Copia as 5 próximas linhas
dd Apaga a linha
5dd Apaga 5 linhas
x Apaga uma letra
5x Apaga 5 letras
p Cola o trecho copiado ou apagado
V Seleção visual de linhas

Pulos
gg Pula para a primeira linha
G Pula para a última linha
44G Pula para a linha número 44
w Pula para a próxima palavra
b Pula para a palavra anterior
{ Pula para o parágrafo anterior
} Pula para o próximo parágrafo
( Pula para a frase anterior
) Pula para a próxima frase
f. Pula até o próximo ponto (.), na mesma linha
`` Desfaz o pulo, volta

Apagando com esperteza
dgg Apaga até o início do arquivo
d0 Apaga até o início da linha atual
dw Apaga a palavra
d4b Apaga as quatro palavras anteriores
df. Apaga até o próximo ponto
d) Apaga até o fim da frase

Outros
J Junta a próxima linha com a atual
u Desfaz o último comando
Ctrl+R Refaz o último comando desfeito
. Repete o comando anterior
hjkl Movimenta o cursor
/ Pesquisa um texto
n Vai para o próximo resultado da pesquisa
:%s/a/b/g Troca 'a' por 'b' em todo o texto
:!cmd Executa o comando externo 'cmd'
:r!cmd Insere o resultado do comando externo 'cmd'

Amarok Mysql

#!/bin/bash

#Migração banco de dados sqlite Amarok para mysql.

sudo aptitude install mysql-server-5.0 mysql-client-5.0 mysql-admin-common php5 mysql-navigator mysql-query-browser libmysqlclient12-dev mysql-admin sqlite3 phpmyadmin
echo "É necessário criar um banco amarok com todos os privilégios no banco para o usuário"
sleep 2
cd .kde/share/apps/amarok
sqlite3 collection.db .dump > amarok.sql
cat amarok.sql | grep -v "INSERT INTO admin" | \perl -pe 's/INSERT INTO \"(.*)\" VALUES/INSERT INTO \1 VALUES/' > amarok2.sql
cat amarok2.sql | \grep -v "BEGIN TRANSACTION;" | \grep -v "COMMIT;" | \grep -v "CREATE TABLE" | \grep -v "INSERT INTO directories VALUES" | \grep -v "CREATE INDEX" | \grep -v "CREATE UNIQUE INDEX" > amarok_dados.sql
cat amarok.sql | \grep -v "BEGIN TRANSACTION;" | \grep -v "COMMIT;" | \grep -v "INSERT INTO" > amarok_estrutura.sql
replace "VARCHAR(1024)" "VARCHAR(996)" -- amarok_estrutura.sql
replace "VARCHAR(256)" "VARCHAR(255)" -- amarok_estrutura.sql
echo "Apague todas as linhas que não começam com CREATE"
sleep 3
vim amarok_estrutura.sql
echo "Fazendo dump no banco de dados"
echo "Dump Estrutura do banco"
cat amarok_estrutura.sql | mysql -u root -p amarok
echo "Dump Dados do banco"
cat amarok_dados.sql | mysql -u root -p amarok
echo "Dump executado com sucesso!"
cd

Basic smb.conf

[global]
workgroup = GROUPNAME
server string = COMPUTERNAME
; netbios name = MYSERVER
; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; hosts allow = 127. 192.168.12. 192.168.13.
log file = /var/log/samba/log.%m
max log size = 100
security = user
passdb backend = tdbsam
; realm = MY_REALM
; password server =
; domain master = yes
; domain logons = yes
; logon script = %m.bat
; logon script = %u.bat
; logon path = \\%L\Profiles\%u
; logon path =
; add user script = /usr/sbin/useradd "%u" -n -g users
; add group script = /usr/sbin/groupadd "%g"
; add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u"
; delete user script = /usr/sbin/userdel "%u"
; delete user from group script = /usr/sbin/userdel "%u" "%g"
; delete group script = /usr/sbin/groupdel "%g"
; local master = no
; os level = 33
; preferred master = yes
; wins support = yes
; wins server = w.x.y.z
; wins proxy = yes
; dns proxy = yes
; load printers = yes
; cups options = raw
; printcap name = /etc/printcap
; printcap name = lpstat
; printing = cups
; map archive = no
; map hidden = no
; map read only = no
; map system = no
; encrypt passwords = yes
; guest ok = no
; guest account = nobody
username map = /etc/samba/smbusers
; store dos attributes = yes
#============================ Share Definitions ==============================

;[homes]
; comment = Home Directories
; browseable = no
; writable = yes
; valid users = @ggpli

;[printers]
; comment = All Printers
; path = /var/spool/samba
; browseable = no
; guest ok = no
; writable = No
; printable = yes

;[netlogon]
; comment = Network Logon Service
; path = /var/lib/samba/netlogon
; guest ok = yes
; writable = no
; share modes = no

;[Profiles]
; path = /var/lib/samba/profiles
; browseable = no
; guest ok = yes

;[public]
; comment = Public Stuff
; path = /home/samba
; public = yes
; writable = yes
; printable = no
; write list = +staff

[public]
path = /home/PASTA
writeable = yes
; browseable = yes
valid users = USUARIO, USUARIO

segunda-feira, 24 de dezembro de 2007

Add-ons Firefox

FormFox
Mostra detalhes para onde os dados criptografados estão sendo enviados

Megaupload SX
Libera Slots para o site.

User Agent Switcher
Adiciona um menu e uma tecla toolbar para mascararo agente do usuário do browser.

AdBlock Plus

Bloqueio de Anúncios.

FormFox
Mostra para onde será enviada determinada informação que você fornece ao clicar nos famosos botões "enviar", "OK", etc...

Idnd
Permite verificar a codificação dos caracteres em que o site foi composto. A excessão do IE, os modernos navegadores suportam a inclusão de caracteres distintos do inglês nos nomes do domínio, auxiliando às culturas que usam essa simbologia e que por isso não restringem-se apenas aos caracteres ASCII/Inglês.
Essa extensão permite descobrir, por exemplo, um site que mascare um endereço diferente daquele que você digitou na barra de endereços.

ShowIp
Mostra o IP address da página atual na barra de status. Entre outras funções.


AutoComplete Manager
Lembra os nomes das páginas num histórico aperfeiçoado.

Fission
Essa extensão serve pra quem gosta de personalizar o Firefox.
Ela adiciona uma barra de progresso ao campo de endereço, assim como no Safari.O legal é que você pode escolher uma cor ou simplesmente uma imagem como barra de progresso.

Better Gmail
Personalização e integração do gmail com outros serviços.

Gbutts
Atalhos de botões para serviços google.

Foxmarks
Sincronização dos favoritos

ErrorZilla Mod
Quando uma página estiver inacessível, esta extensão exibirá uma tela alternativa de erro, com opções para consultar esta página no Google Cache, tentar ping e trace, entre outras opções.

PDF Download
Converte páginas Web para PDF, além de permitir selecionar a ação desejada ao clicar em um arquivo PDF (download, abrir com o programa padrão, abrir no browser).

terça-feira, 18 de dezembro de 2007

Add-on Adblock Plus Firefox

O Adblock Plus permite criar endereços genéricos para bloquear elementos normalmente usados para propagandas (imagens, plugins e iframes).

Após instalar o Adblock, visite as páginas que costuma navegar. Então clique com o botão direito em uma propaganda. Selecione Adblock Iframe (se houver) ou Adblock Image.

Uma janela abrirá pedindo o endereço a bloquear. O poder do Adblock é que ele permite criar um bloqueio genérico, usando um pedaço do endereço. Se o endereço for algo como:

http://ad.siteonline.com.br/path/images/script.js

Então modifique o endereço para:

http://ad.

e clique em OK. Não só este site estará bloqueado mas todos os sites que seguirem este esquema. O Adblock Plus bloqueará mais propagandas se você conseguir descobrir o padrão utilizado pelas suas páginas preferidas.

Para ver todos os endereços bloqueados abra de janela de preferências do Adblock em Ferramentas > Adblock Plus. Insira os filtros abaixo para verificar a eficácia do Adblock. Apenas com esses filtros você terá um bloqueio razoável de propagandas sem comprometer conteúdo útil.

http://ad.
http://ads.
http://*/RealMedia/ads/
http://*.adserver.com
http://*.doubleclick.net/
http://*.googlesyndication.com/pagead/

Nota: não é possível clicar com o botão direito em propagandas feitas com plugins (como Flash). Nesses casos o Adblock Plus cria uma “aba” acima ou abaixo do espaço ocupado pelo plugin. Clique nela para ter acesso a janela de bloqueio de endereço.

Bloquear imagens

Menu para bloquear imagens

Este é um método simples de bloquear imagens e já vem embutido no Firefox. Clique com o botão direito na imagem da propaganda e selecione Bloquear imagens de. Propagandas feitas com plugins (Flash) não são afetadas por este método.

Observe que este bloqueio só é útil se a imagem for proveniente de um endereço utilizado exclusivamente para propaganda. Caso contrário imagens que fazem parte do conteúdo também serão bloqueadas.

Se o endereço exibido pelo Bloquear imagens de começar com ad., ads., adserver. ou doubleclick então é grande a chance de que este endereço seja para usado apenas para propagandas (ad é propaganda em inglês).

Para ver os endereços bloqueados (ou se quiser desbloquear tudo) abra a janela de opções (no Windows em Ferramentas > Opções) e selecione o painel Conteúdo. Clique no botão Permissões da linha Carregar imagens.