January
23

Beleza! Vamos continuar falando do nosso querido e amado editor: vim.

Quando o assunto é flexibilidade de janelas, abas, o vim oferece mais um recurso interessante: o split. Ele permite a divisão do mesmo arquivo na mesma janela. Assim você pode editar várias partes do mesmo arquivo em pontos diferentes. O comando é :split.

É possível usar a visualização vertical aqui também com o comando :vsplit.

Para alternar de uma janela para outra use o comando Ctrl+ww

Outra dica valiosíssima que vai deixar muito desenvolvedor de queixo caído é a tecla de atalho Ctrl+Shift+p que permite autocompletar código.

O truque dessa tecla de atalho está na hora que você importa as bibliotecas. Além das propriedades e métodos, ele também completa nome de variáveis e nome de funções. Eu testei esses recursos com as linguagens PHP, Python e C.

Interação com terminal

Quem está programando, precisa testar a aplicação. E não é nada legal ficar fechando o vim para usar o gcc ou o interpretador do python no terminal, não é? Com o comando :shell você abre um terminal dentro do vim. Assim você pode testar o que precisar e para sair é só fechar com o comando exit.

Quando o assunto é interação com o shell ainda dá para jogar a saída de um comando do terminal dentro do vim com o comando :r! <comando> . Exemplo: :r! cat /etc/passwd . Vai aparecer algo assim:

Nossa última tabelinha:

Comando: Descrição:
:split Divide o mesmo arquivo na mesma janela (exibição horizontal)
:vsplit Divide o mesmo arquivo na mesma janela (exibição vertical)
Ctrl+ww Alterna entre as janelas
Ctrl+Shift+p Auto-completar o código
:shell Exibe um terminal dentro do VIM;
:r! <comando> Executa um comando e joga a saida dele dentro do editor

Concluindo

O vim é foda um editor de texto muito poderoso. Se você aprender a usá-lo com certeza ele vai deixar muitos editores modo gráfico para trás. Existe a documentação interna do próprio vim, que tem tudo que você precisa saber sobre ele, para acessá-la digite o comando :help.

Foquei esse artigo em recursos que podem ajudar o desenvolvedor. Se vocês conhecem outras funcionalidades ou comandos interessantes, deixem aqui no comentário desse post.

Até a próxima ;-)

4
January
22

Hoje vamos brincar com janelinhas e abas.

Imagine a seguinte situação: você tem um arquivo CSS e um arquivo (X)HTML. Você está montando aquele layout em CSS e precisa ficar mexendo com os dois arquivos ao mesmo tempo. O Vim deixa você trabalhar com mais de um arquivo na mesma tela com o comando :new. Veja como fica:

Para alternar as janelas use o comando Ctrl+WW. Para abrir um arquivo na nova janela, use o comando :open.

Você pode não gostar da visualização horizontal das janelas. É possível abrir um novo arquivo numa coluna vertical com o comando :vnew . Para alternar e abrir arquivos, a regra é a mesma:

Dá para trabalhar com várias “novas janelas” mas quanto mais janela, pior fica a visualização delas. Para resolver esse problema, é possível trabalhar com abas. Não, não estamos falando do firefox :P Dá para trabalhar com abas no vim também com o comando :tabnew. Isso mata o problema da visualização. Para navegar entre as abas use o comando :tabnext ou Ctrl+(PageUp | PageDown). Olhe como fica:

Voltando as tabelinhas, abaixo segue uma com os comandos feitos nesse post, com alguns comandos que não citei acima:

Comando: Descrição:
:new Abre outro documento na mesma tela, (exibição horizontal).
:vnew Abre outro documento na mesma tela, (exibição vertical).
:open Abre um documento na (janela | aba) corrente.
:close Fecha um documento na (janela | aba) corrente.
:tabnew Abre uma nova aba
:tabnext ou Ctrl + (PgUp | pgDown) Exibe a próxima aba
:tabclose Fecha a aba corrente
:tabfirst Exibe a primeira aba
:tablast Exibe a ultima aba

Legal né? Ainda tem mais coisa que vou colocar no terceiro (e talvez último) post dessa série.

2
January
22

Você está procurando um ambiente de desenvolvimento completo, sem frescura, use o VIM! É sério… O VIM é um editor muito poderoso!

Vou dar algumas dicas aqui que me ajudam bastante no meu dia-a-dia:

Inicialmente vou colocar uma tabelinha dos comandos mais comuns que provavelmente qualquer usuário vai usar:

Comando Descrição
<ESC> Modo de Comando
<i> ou <a> Modo de Edição
:w Salvar
:q Sair
:wq ou : x Sair e Salvar
:q! Sair sem salvar
:w! Salvar, substituindo se já existir!
v Modo Visual, permite selecionar o texto da onde o cursor parou.
y Copiar texto
p Colar texto
c Recortar texto
d Excluir texto

Certo, já sabemos copiar, colar, recortar… (no final desse post quero ver todo falando <ESC> + y, <ESC>+p em vez de ctrl+c e ctrl+v :P)

Agora, mais uma tabelinha que pode facilitar a vida de vocês:

Comando Descrição
dd Apaga a linha onde o cursor está localizado.
dNd Apaga N linhas apartir do cursos, onde N é o número de linhas.

A mesma sintaxe funciona para recortar e copiar, vou colocar as tabelinhas só para constar:

Comando Descrição
yy Copia a linha onde o cursor está localizado.
yNy copia N linhas a partir do cursos, onde N é o número de linhas.
cc Recorta a linha onde o cursor está localizado.
cNc Recorta N linhas a partir do cursos, onde N é o número de linhas.

O vim deixa colorida das palavras reservadas das linguagens de programação. Ele associa a extensão do arquivo para começar a marcação. Caso não apareça a cor use o comando:

Comando Descrição
:syntax (on | off) Deixa as palavras reservadas coloridas para melhor identificação do código.

Mais uma tabelinha recheada de comandos:

Comando Descrição
%s/Ubuntu/Mandriva Substitui no texto todas as ocorrencias da string “Ubuntu” por “Mandriva”
/string perdida Localiza no texto strings, precionando a letra n você achará novas ocorrencias da string.
:set number Coloca o número de linhas do texto.

Essa função de localizar strings é muito útil para localizar funções numa biblioteca. ;-)

Vou separar em dois ou três posts tudo que eu quero escrever sobre o Vim. ;-) Por hoje é só. Qualquer dúvida, poste nos comentários…

5
January
18

Dica: urpmq

Posted In: Mandriva by Edgar Gabaldi

A duplinha urpmq + grep pode ser uma mão na roda quando você não sabe o nome de um pacote. As vezes a saida do comando urpmq é muito extensa e não é legal ficar procurando o pacote que você deseja.

Exemplo: Você quer saber o nome do pacote que contem o módulo que permite que o apache converce o PHP?

$ urpmq -y apache | grep php

A saida desse comando vai ser algo assim:

[edgar@localhost ~]$ urpmq -y apache | grep php
apache-mod_php
apache-mod_suphp
apache-mod_suphp4
apache-ssl-mod_php

Olhá lá nosso pacote :-)

0
January
17

Programando em Python…

Posted In: Linux, Mandriva, Python by Edgar Gabaldi

Como prometi nesse post, uma das metas desse ano é aprender Python.

Quem já acompanha esse blog a algum tempo sabe que eu já estudei um pouco sobre a linguagem.

Voltei aos estudos agora no começo desse ano, e voltei com força total… ainda mais agora que tem um projeto onde a linguagem vai ser muito bem vinda :-)

Bom, para quem não sabe programar e quer começar com python eu NÃO RECOMENDO o Livro Mergulhando no Python.

capa livro mergulhando no python

Porque? Esse livro é muito bom, mas para quem já sabe programar em outra linguagem e quer conhecer o Python. Se você não tem nenhuma idéia do que é programar, tente aprender lógica de programação primeiro. Recomendo também estudar Orientação a Objeto, são pre requisitos para estudar essa linguagem.

Um ótimo material para você começar a estudar a linguagem é o Python na prática, feito pela galera da Async.

Se você já estudou o suficiente as estruturas básicas da linguagem (nessa altura do campeonato você já estará apaixonado, hehe) e quer fazer algumas telas gráficas… Você pode estudar um pouco sobre PyGTK. Experimente o Glade, é fantástico como ele trabalha :-)

Dois textos que eu recomendo são: Mantendo a sanidade com o Glade e tem também o artigo sobre libglade do Wilson Freitas, bem completo.

Dúvidas? Vocês podem tirar com a galera do #python-br (rede Freenode). Tem também o site da comunidade que está recheado de documentação

Espero que esses links ajude alguem…

(Quem sabe eu não continuo com a série “Torturando Python”?)

1
January
7

Você é usuário do Mandriva e usa o Gnome como ambiente gráfico? Está cansado de toda vez que clica numa pasta abrir uma janela diferente? Seus problemas acabaram.

Para resolver esse problema, clique em Sistema > Preferenciais > Gerenciamento de Arquivo > Aba “Comportamento” > Marque a opção “Sempre abrir em janela de navegador”. Pronto!

Gnome, simples assim.

;-)

3
January
2

Ufa, 2008!

Posted In: Cotidiano by Edgar Gabaldi

O ano de 2007 foi muito bom. Fiz um balanço dos erros cometidos em 2007 e a palavra chave do ano de 2008 vai ser: Produtividade. As primeiras medidas já foram tomadas: exclui meu Orkut. :-P

Espero chegar no final de 2008 com essas metas concluidas:

  • Aprender python: Comecei a estudar ano passado. Mas parei!
  • Tirar uma Certificação da Mandriva: Quero me certificar como instrutor dos treinamentos da Mandriva :-)
  • Montar meu negócio: Todo profissional pensa nisso um dia.

Quero ser mais produtivo e menos nerd e para isso pretendo:

  • Ler mais…: Continuo pecando nesse aspécto! Preciso ler sobre outros assuntos que não seja informática :P
  • Praticar algum esporte: É dificil, quem trabalha e faz faculdade sabe o que estou falando. Mas será que isso não é desculpa? :P Se eu quisesse realmente praticar algum esporte eu arrumaria um tempo. Afinal, não faço nada das 00:00 às 06:00. ;-)
  • Cuidar mais da minha saúde: É, estou bastante acima do peso. Não adianta perder peso, tudo que é perdido, existe a possibilidade de ser achado. Preciso eliminar (Hehe!). Quem sabe não começo uma reeducação alimentar depois do dia 5? Porque depois do dia 5? Vocês não fazem idéia quanta coisa gostosa sobrou do ano novo! Haha.

Para meia dúzia de leitores que acompanham esse humilde blog, desejo que todas suas metas sejam alcançadas em 2008.

Muito sucesso a todos!

8
December
27

A adobe espiona você!

Posted In: Cotidiano by Edgar Gabaldi

Saiu na uneasysilence e o Janio do Meiobit comentou. Se você é um usuário do Photoshop, Dreamweaver, InDesign, etc… você pode estar sendo espionado pela Adobe.

E o pior é que essas pessoas não podem fazer nada em relação a isso. (Nem se quer reclamar, porque provavelmente sua cópia é pirata). Mas existe uma solução: O Gimp. :P

Windows users, não se preocupem, tem versão para Windows também.

Experimentem ;-)

1
December
20

Boas Festas!!!

Posted In: Linux by Edgar Gabaldi

#include “stdio.h”
#include “lib_chuck.h

int main(void){
     bool felicidade, paz;
     int ano = 2007;
     while(ano >=2008){
          felicidade = true;
          paz = true;
          ano+=1;
     }
     return 0;
}

8
December
19

Pode ser útil para alguem.

Tem sysadmin que gosta de tirar os comentários dos arquivos de configuração dos mais variados serviços e deixar apenas seus próprios comentários:

Vejam como é fácil fazer:

$ cat /etc/samba/smb.conf | grep -v ^# | uniq | tee smb.sem.comentario

;-)

1