2012-06-23 24 views
113

Po naciśnięciu TAB w nano redaktor, kursor przeskoczy z 8 pomieszczeń tak:Jak zrobić znak tabulacji 4 spacje zamiast 8 spacji w nano?

def square(x): 
     return x * x 
def cube(y): 
     return y * y * y 

jak mogę ustawić szerokość tabulacji do 4 miejsc do wyświetlania tak:

def square(x): 
    return x * x 
def cube(y): 
    return y * y * y 
+0

Nano jest dość prostym edytorem. Jest duża szansa, że ​​po prostu tego nie obsługuje. – millimoose

+0

umm nie tylko w nano, ale także wcięcie o 8 spacji, gdy używam interpretera python w Terminalu. –

+2

To jest odpowiedź na SuperUser i powinien być zamknięty jako duplikat: http://superuser.com/questions/110421/tab-character-width-in-terminal – millimoose

Odpowiedz

47

wiersza polecenia flag

Od man nano:

-T cols (--tabsize=cols) 
    Set the size (width) of a tab to cols columns. 
    The value of cols must be greater than 0. The default value is 8. 
-E (--tabstospaces) 
    Convert typed tabs to spaces. 

Na przykład, aby ustawić rozmiar kartę do 4, wymienić zaczepy ze spacjami i edytować plik „foo.txt”, należy uruchomić polecenie:

nano -ET4 foo.txt 

plik konfiguracyjny

Od man nanorc:

set tabsize n 
    Use a tab size of n columns. The value of n must be greater than 0. 
    The default value is 8. 
set/unset tabstospaces 
    Convert typed tabs to spaces. 

Edytuj plik ~/.nanorc (utwórz go, jeśli nie istnieje), a także dodawać te polecenia do niego. Na przykład:

set tabsize 4 
set tabstospaces 

Nano będzie używać tych ustawień domyślnie po uruchomieniu, ale flagi linii poleceń nadpisują je.

+0

umm ... nie mogę znaleźć.plik nanorc w katalogu ~/directory –

+0

Dobrze, nieważne. Znajduję nanorc w katalogu/etc. dzięki jednak –

+0

Jeśli nie istnieje, możesz go utworzyć. – AlchemicalApples

10

W nano 2.2.6 linię w ~/.nanorc zrobić to wydaje się być

set tabsize 4

Ustawianie tabspace dał mi błąd: 'Nieznany flaga "tabspace"'

1

Dla przyszłości widzowie, w moim pliku/etc/nanorc znajduje się linia zbliżona do linii 153, która mówi "set tabsize 8". Słowo może wymagać tabsize zamiast tabspace. Po tym, jak zastąpiłem 8 4 i odkomentowałem linię, rozwiązał mój problem.

191

Jeśli używasz nano z językiem takim jak python (jak w twoim przykładzie), dobrym pomysłem jest też zamiana kart na spacje.

Edycja ~/.nanorc pliku (lub utwórz go) i dodać:

set tabsize 4 
set tabstospaces 

Jeśli masz już plik z zakładkami i chcesz przekonwertować je do przestrzeni Polecam komendę expand (shell):

expand -4 input.py > output.py 
+0

Używam mennicy i kiedy ustawiam tabsize z 8 na 4 w/etc/nanorc i wracam do plik, wciąż mam 8 spacji w karcie, próbowałem nawet skopiować ten plik nanorc do ~ /. ale to nie działa, zamknięty i ponownie otwarty terminal, ale nadal nie mogę uzyskać 4 spacji na karcie, chyba że używam nano-T4. Dzięki – Alex

+0

@Alex sprawdź, czy twój plik zaczyna się od kropki '.nanorc', a nie' nanorc'. Należy go umieścić w katalogu domowym użytkowników, tj. '/ Home/your-username/.nanorc'. –

+1

Dzięki, skończyłem na stworzeniu innego. Nnanorca innego niż ten w/etc, umieściłem go w domowym katalogu i to zadziałało. To są jedyne 3 linie, które zawarłem w nowym .nanorc dla wszystkich zainteresowanych: ustaw nowrap, ustaw tabsize 4 i ustaw tabstospaces – Alex