Configurando o tabstop para saída bash

6

É possível definir uma parada de tabulação (número de espaços por tabulação) para os comandos more e less ? No vi, adicionei esta linha a .vimrc

set tabstop=4

No entanto, quando leio um arquivo com more , ele ainda usa 8 espaços por guia

$ more style.css
div {
        width: 100%;
}

Isso seria algo que eu poderia configurar em .bashrc ou um arquivo semelhante?

    
por andrewtweber 21.03.2014 / 18:42

2 respostas

6

de man less :

  -xn,... or --tabs=n,...
         Sets tab stops.  If only one n is specified, tab stops are set at 
         multiples of n.  If multiple values separated by commas are specified,
         tab stops are  set  at  those positions, and then continue with the same
         spacing as the last two.  For example, -x9,17 will set tabs at positions
         9, 17, 25, 33, etc.  The default for n is 8.

A página man também descreve como definir opções padrão para menos usando setenv ou export. Adicionar LESS="-x4";export LESS ao seu ~ / .bashrc deve fazer o truque

    
por 21.03.2014 / 19:36
2

Acho que não é uma propriedade de bash (ou zsh , csh ... e outro shell). É propriedade do terminal que mostrou a saída.

Você pode usar o comando expand para converter tab em número de spaces . De expand man page:

-t, --tabs=NUMBER
              have tabs NUMBER characters apart, not 8

Então você vai fazer assim:

$ cat test.tabs
a        b        c

$ expand -t 4 test.tabs
a    b    c
    
por 22.03.2014 / 16:25