Tiêu chuẩn để thụt lề trong shell script là gì? [đóng cửa]


58

Cộng đồng Java sử dụng 4 khoảng trắng làm đơn vị thụt lề. 1
cộng đồng Ruby sử dụng 2 không gian thường được thỏa thuận. 2

Tiêu chuẩn để thụt lề trong shell script là gì? 2 hoặc 4 dấu cách hoặc 1 tab?


42
Tiêu chuẩn là tuyệt vời. Chúng tôi đã có rất nhiều người trong số họ để lựa chọn ...
Shadur

1
Để giải trí, hãy xem phần "tiêu chuẩn" cho các tập lệnh trong /etc/init.d. Bạn sẽ tìm thấy tiêu chuẩn hai không gian, bốn không gian, một tab, v.v., được sử dụng trong các tập lệnh khác nhau, đôi khi là một vài trong số các tiêu chuẩn đó trong cùng một tập lệnh.
cjc

1
phích cắm không biết xấu hổ: hãy để bash tự quyết định thụt lề thích hợp một cách tự động: unix.stackexchange.com/questions/274888/ mẹo
Olivier Dulac

Tiêu chuẩn là tránh các ký tự tab và tát bất cứ ai không tuân theo quy tắc đơn giản đó. Số lượng không gian bạn sử dụng thay thế là doanh nghiệp của bạn, nhưng nếu bạn chọn đi theo Đường dẫn Tab thì không có gì giúp bạn.
Bắn Parthian

2
Nếu bạn sử dụng các tab, bạn có thể thụt lề <<-heredocs của bạn . stackoverflow.com/a/33817423/99777 Bạn không thể làm điều đó với dấu cách. "Đối với tập lệnh shell, sử dụng tab không phải là vấn đề sở thích hay kiểu; đó là cách ngôn ngữ được xác định."
joeytwiddle

Câu trả lời:


43

Không có thụt lề tiêu chuẩn trong các kịch bản shell là vấn đề.

Câu trả lời hơi ít flippant:

  • Chọn một tiêu chuẩn trong nhóm của bạn mà tất cả bạn có thể làm việc để đơn giản hóa mọi thứ.
  • Sử dụng một cái gì đó trình soạn thảo của bạn làm cho dễ dàng để bạn không phải chiến đấu để tuân thủ tiêu chuẩn.

Trong lịch sử bốn không gian cho mỗi cấp độ thụt có thể được cho là phổ biến nhất.
con-f-use

26

Tôi chưa bao giờ gặp hướng dẫn kiểu được chỉ định shell nhưng đối với lập trình bash thì đây là cách phổ biến nhất:

Hướng dẫn về Phong cách Bash và Mã hóa Standard.pdf | lug.fh-swf.de

Việc thụt lề của các cấu trúc chương trình phải phù hợp với độ sâu lồng nhau logic. Việc thụt lề của một bước thường phù hợp với các bước lập bảng của trình soạn thảo được chọn. Trong hầu hết các trường hợp 2, 4 hoặc 8 được chọn.



-5

Chỉ cần mở tệp bằng trình soạn thảo vim và gõ gg=Gsẽ giới thiệu lại toàn bộ tệp. Tôi nghĩ rằng đây là tiêu chuẩn.


1
Điều đó sẽ thụt lề dựa trên giá trị của biến vim shiftwidth(aka sw). Theo mặc định, nó là 8 tương ứng với điểm dừng mặc định trong các thiết bị đầu cuối. Giá trị đó là lịch sử, ngày nay ít người sử dụng 8 chỗ thụt lề, tôi đã có set sw=2trong ~/.vimrcnhiều thập kỷ.
Stéphane Chazelas
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.