VI ou VIM: Mostrando o número de linhas

Publicado por Gabriel Duarte Guimarães Costa em 06/10/2008

[ Hits: 87.544 ]

Blog: http://kinuxlinux.org/gabriel_duarte

 


VI ou VIM: Mostrando o número de linhas



Estava querendo que o VI/VIM mostrasse o número de linhas do documento, como acontece em algumas IDEs, pois isso é muito útil para programar! Depois de uma pequena pesquisa, descobri que após abrir o arquivo você pode digitar em modo de comando:

:set number

e as linhas aparecerão na lateral esquerda, indicando o número de cada linha. Caso queira voltar ao modo normal (sem as linhas), digite:

:set nonumber

Outra opção é colocar os comandos dentro do arquivo de configuração. No meu caso o VIM usava o padrão, que fica localizado em /etc/vimrc, mas como não tinha permissão para modificá-lo, copiei o arquivo de configuração em meu home, renomeei-o como .vimrc e modifiquei-o:

cp /etc/vimrc .vimrc
$ vi .vimrc


Adicione a linha "set number" e pronto!

Entre no VI/VIM e verá que os números das linhas entram automaticamente.

Meu .vimrc:

if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
   set fileencodings=utf-8,latin1
endif

set nocompatible        " Use Vim defaults (much better!)
set bs=indent,eol,start         " allow backspacing over everything in insert mode
"set ai                 " always set autoindenting on
"set backup             " keep a backup file
set viminfo='20,\"50    " read/write a .viminfo file, don't store more
                        " than 50 lines of registers
set history=50          " keep 50 lines of command line history
set ruler               " show the cursor position all the time
set number # Linha que adicionei
" Only do this part when compiled with support for autocommands
if has("autocmd")
  " In text files, always limit the width of text to 78 characters
  autocmd BufRead *.txt set tw=78
  " When editing a file, always jump to the last cursor position
  autocmd BufReadPost *
  \ if line("'\"") > 0 && line ("'\"") <= line("$") |
  \   exe "normal! g'\"" |
  \ endif
endif

if has("cscope") && filereadable("/usr/bin/cscope")
   set csprg=/usr/bin/cscope
   set csto=0
   set cst
   set nocsverb
   " add any database in current directory
   if filereadable("cscope.out")
      cs add cscope.out
   " else add database pointed to by environment
   elseif $CSCOPE_DB != ""
      cs add $CSCOPE_DB
   endif
   set csverb
endif

" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")
  syntax on
  set hlsearch
endif

if &term=="xterm"
     set t_Co=8
     set t_Sb=^[[4%dm
     set t_Sf=^[[3%dm
endif

Outras dicas deste autor

Lançado o FltkEmu

Nova distribuição: Terabeauts

Leitura recomendada

Livros gratuitos sobre Linux

Material DeveloperWorks da IBM (LPI 101-102,LPI 201-202 e LPI 303) - em inglês

Pacote com 88 cursores para KDE

TOIlet - Incrementos divertidos para o Shell

Gerenciamento de processos no GNU/Linux

  

Comentários
[1] Comentário enviado por PotHix em 07/10/2008 - 09:53h

Apenas um:
set nu

Já resolve por aqui! =)

Há braços

[2] Comentário enviado por slacker.d em 20/03/2013 - 16:15h

Boa dica...
set nu e set nonu, aqui já funfa tambem, valeu pelo post, e valeu PotHix...

[3] Comentário enviado por keryton em 29/01/2014 - 12:11h

Excelente dica. Consegui enumerar e de quebra colorir com o comando "syntax

[4] Comentário enviado por removido em 11/06/2016 - 20:28h

(set number # Linha que adicionei)
Apenas modifique o # por " pra não mostrar um erro no vim toda vez que você roda ele.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts