Jump to content
pmg

Configurar o tamanho dos tabs no Vim

Recommended Posts

pmg

O topico iniciou-se no quadro de C, onde é off-topic. Copiei as partes relevantes das mensagens do topico inicial para este topico (deixando-as la ficar) :-)

Como altero o tamanho das tabulações no vim???
Experimenta

:help tabstop

essas definições são para colocar no .vimrc ou para exercutar em modo normal dentro do vim?
Mete no .vimrc
O nowrap, o expandtab e o shiftwith fazem o quêm em concreto???

O nowrap faz com que as linhas mais compridas do que o ecra continuem para fora do ecra em vez de "virarem para baixo" e continuarem na linha seguinte

O expandtab converte os tabs do teclado em espacos. Tambem insere (ou remove) espacos quando se usa > (ou >) para indentar linhas

o shiftwidth é usado com o autoindent: é o numero de espacos que o autoindent usa para indentacao automatica (por exemplo com 'gg=G')


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
PsySc0rpi0n

Não percebi a parte sublinhada em Tambem insere (ou remove) espacos quando se usa > (ou >) para indentar linhas.

Já li essa parte dos gg e G no vimtutor mas li assim na diagonal... Não estou a par do significado disso...

O comando set autoident não é reconhecido.

Qual é a vantagem de converter tabs em espaços?

Edited by PsySc0rpi0n

Kurt Cobain - Grunge misses you

Nissan GT-R - beast killer

Share this post


Link to post
Share on other sites
pmg

Não percebi a parte sublinhada em Tambem insere (ou remove) espacos quando se usa > (ou >) para indentar linhas.

Eu queria dizer ".. quando de usa >> (ou <<) ..." para indentar linhas

O comando set autoident não é reconhecido.

Oops, my bad. Eu ja devia saber que escrever codigo directamente no editor do P@P origina problemas -- faltou-me um n. O setting que eu uso é "set autoindent".

Qual é a vantagem de converter tabs em espaços?

É uma questao de gostos. Eu configurei o meu vim para evitar tabs a todo o custo porque nao gosto deles; se gostas de tabs nao configures o teu vim da mesma forma que o meu!!!!


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
PsySc0rpi0n

Eu queria dizer ".. quando de usa >> (ou <<) ..." para indentar linhas

Oops, my bad. Eu ja devia saber que escrever codigo directamente no editor do P@P origina problemas -- faltou-me um n. O setting que eu uso é "set autoindent".

É uma questao de gostos. Eu configurei o meu vim para evitar tabs a todo o custo porque nao gosto deles; se gostas de tabs nao configures o teu vim da mesma forma que o meu!!!!

É costume usarem os símbolos « e » para identar code como? Não entendi...


Kurt Cobain - Grunge misses you

Nissan GT-R - beast killer

Share this post


Link to post
Share on other sites
pmg

Quando, em modo normal, carregas em '>>' (duas vezes o >) a linha em que esta o cursor indenta uma vez (com '<<' desindenta).

Tambem podes dar o comando a um conjunto de linhas e assim so precisas de um sinal para (des)indentar

// indenta duas vezes as 17 linhas da 12 a 28
:12,28>>

Se seleccionares o texto a (des)indentar com 'v' tambem podes (des)indentar so com um sinal

  • Vote 1

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
falco

No vim, há diversos comandos com o vim relacionados com a tabulação. Eis a explicação de alguns.

softtabstop o que ele faz é utilizar tabs e espaços até atingir o valor definido para o softtabstop. Ou seja, o espaço que o '\t' ocupa até pode ser inferior ao definido par ao softtabstop, mas quando introduzimos uma tabulação, o vim vai preencher o resto do espaço com uma quantidade de caracteres de tabulação e espaços necessários para ocupar o espaço definido no softtabstop.

tabstop define o número de espaços que um '\t' significa.

shiftwidth é o número de espaços que será utilizado para indentação de código.

expandtab vai provocar a utilização de espaços em vez de tabs.

retab provoca a actualização do ficheiro com novas configurações.

Share this post


Link to post
Share on other sites
PsySc0rpi0n

Outra coisa...

Por exemplo, eu tenho um file chamado default.c que tem os headers e a função main e mais umas merditas escritas que uso em todos os programas que é para evitar estar a escrever os includes, a função main, etc etc...

Quando abro este file com o vim, depois faço :w nome_do_novo_file.c mas tenho que sair do file em que estou (default.c) pra depois abrir o file que acabei de criar, senão, quando gravar as alterações que fiz, ele grava no file default.c e não no nome_do_novo_file.c que gravei...

Dá para contornar isto?


Kurt Cobain - Grunge misses you

Nissan GT-R - beast killer

Share this post


Link to post
Share on other sites
Rui Carlos

Outra coisa...

Por exemplo, eu tenho um file chamado default.c que tem os headers e a função main e mais umas merditas escritas que uso em todos os programas que é para evitar estar a escrever os includes, a função main, etc etc...

Quando abro este file com o vim, depois faço :w nome_do_novo_file.c mas tenho que sair do file em que estou (default.c) pra depois abrir o file que acabei de criar, senão, quando gravar as alterações que fiz, ele grava no file default.c e não no nome_do_novo_file.c que gravei...

Dá para contornar isto?

:seveas

Share this post


Link to post
Share on other sites
PsySc0rpi0n

Não percebi bem se se usa

:sav filename

Ou se se usa

:saveas filename

E o

!

é smepre necessário entre o comando e o nome do file?


Kurt Cobain - Grunge misses you

Nissan GT-R - beast killer

Share this post


Link to post
Share on other sites
Rui Carlos

Não percebi bem se se usa

:sav filename

Ou se se usa

:saveas filename

:sav é a parte obrigatória. Os restantes caracteres são opcionais.

E o

!

é smepre necessário entre o comando e o nome do file?

Só quando o ficheiro onde queres gravar já existia.

Share this post


Link to post
Share on other sites
falco

Quando abro este file com o vim, depois faço :w nome_do_novo_file.c mas tenho que sair do file em que estou (default.c) pra depois abrir o file que acabei de criar, senão, quando gravar as alterações que fiz, ele grava no file default.c e não no nome_do_novo_file.c que gravei...

Dá para contornar isto?

Não se percebe nada do que tás a dizer. Porque logo para começar estás a falar em duas línguas diferentes e porque dizes: deste, daquele e outro; sem que se perceba a quais te estás a referir.

Contudo no vim não é preciso sair de nenhum ficheiro para gravar o que quer que seja, porque o vim pode editar multiplos ficheiros ao mesmo tempo... Porque o vim até suporta tabs (sim como os browsers web).

Ou seja, se quiseres criar um novo ficheiro, ou copias o novo ficheiro para a nova localização antes de o editares (que era algo muito mais inteligente), ou abres o ficheiro que já tinhas e abres uma nova tab (:tabnew), copias o conteúdo do ficheiro antigo para o novo e gravas o novo com o nome que quiseres.

Para ao editares um ficheiro guardares esse buffer num outro ficheiro podes sempre fazer: w! novo_ficheiro.

Ou então abres o ficheiro antigo, gravas o mesmo buffer com outro nome (w: novo_ficheiro), depois passas a editar o outro ficheiro (e: novo_ficheiro) e depois, como já estás a editar o novo ficheiro, basta-te fazer ":w", para gravares no novo ficheiro.

O vim só faz o que lhe pedires e por causa disso, se pedires para ele criar um novo ficheiro, ele cria, mas só o vai editar se o mandares editar.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.