2012-06-23 36 views
113

Khi tôi nhấn TAB trong nano biên tập viên, con trỏ sẽ nhảy với 8 chỗ như thế này:Làm cách nào để làm cho ký tự tab 4 dấu cách thay vì 8 dấu cách trong nano?

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

làm thế nào tôi có thể thiết lập kích thước thẻ chấm hết cho 4 không gian để hiển thị như thế này:

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

Nano là trình soạn thảo khá cơ bản. Có một cơ hội tốt nó không hỗ trợ điều này. – millimoose

+0

umm không chỉ trong nano, nhưng nó cũng thụt lề bởi 8 khoảng trắng khi tôi sử dụng trình thông dịch python trong Terminal. –

+2

Điều này được trả lời trên SuperUser và phải được đóng dưới dạng trùng lặp: http://superuser.com/questions/110421/tab-character-width-in-terminal – millimoose

Trả lời

47

dòng lệnh cờ

Từ 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. 

Ví dụ, để thiết lập kích thước tab để 4, thay thế các tab với không gian, và chỉnh sửa các tập tin "foo.txt", bạn sẽ chạy lệnh:

nano -ET4 foo.txt 

tập tin Config

Từ 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. 

Chỉnh sửa tệp ~/.nanorc của bạn (tạo tệp này nếu không tồn tại) và thêm các lệnh đó vào đó. Ví dụ:

set tabsize 4 
set tabstospaces 

Nano sẽ sử dụng các cài đặt này theo mặc định bất cứ khi nào khởi chạy, nhưng cờ dòng lệnh sẽ ghi đè chúng.

+0

umm ... tôi không thể tìm thấy.tập tin nanorc trong ~/directory –

+0

Ok đừng bận tâm. Tôi tìm thấy nanorc trong thư mục/etc. cảm ơn mặc dù –

+0

Nếu nó không tồn tại, bạn có thể tạo ra nó. – AlchemicalApples

10

Trong nano 2.2.6 dòng trong ~/.nanorc để làm điều này có vẻ là

set tabsize 4

Thiết tabspace đã cho tôi lỗi: 'Unknown cờ "tabspace"'

1

Đối với tương lai người xem, có một dòng trong tập tin/etc/nanorc của tôi gần với dòng 153 có nội dung "set tabsize 8". Từ có thể cần phải được tabize thay vì tabspace. Sau khi tôi thay thế 8 bằng 4 và bỏ dòng, nó giải quyết được vấn đề của tôi.

191

Nếu bạn sử dụng nano với một ngôn ngữ như python (như trong ví dụ của bạn), bạn cũng nên chuyển đổi tab thành dấu cách.

Sửa ~/.nanorc tập tin của bạn (hoặc tạo ra nó) và thêm:

set tabsize 4 
set tabstospaces 

Nếu bạn đã có một tập tin với các tab và muốn chuyển đổi chúng sang chỗ tôi khuyên lệnh expand (vỏ):

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

Tôi đang sử dụng bạc hà và khi tôi đặt tab từ 8 đến 4 trong/etc/nanorc và quay lại tập tin, tôi vẫn nhận được 8 không gian trong tab, tôi thậm chí đã cố gắng để sao chép tập tin nanorc để ~ /. nhưng điều đó không làm việc, đóng cửa và mở lại thiết bị đầu cuối, nhưng tôi vẫn không thể có được 4 không gian trên tab trừ khi tôi sử dụng nano -T4. Cảm ơn – Alex

+0

@Alex kiểm tra kỹ xem tệp của bạn có bắt đầu bằng dấu chấm '.nanorc' chứ không phải' nanorc' hay không. Tên này phải được đặt trong thư mục chính của người dùng của bạn, ví dụ: '/ home/your-username/.nanorc'. –

+1

Cảm ơn, tôi đã tạo ra một cái khác .nanorc khác với cái trong/etc, đặt nó vào thư mục chính và nó hoạt động. Đây là 3 dòng duy nhất mà tôi đưa vào trong tệp mới .nanorc cho bất kỳ ai quan tâm: đặt nowrap, đặt tabize 4 và đặt tabstospaces – Alex

Các vấn đề liên quan