Trình chỉnh sửa văn bản Atom xóa khoảng trắng ở cuối khi lưu


116

Tôi sử dụng Sublime text. Bây giờ tôi đang cố gắng Atom. Khi tôi lưu bất kỳ tệp nào dưới dạng văn bản siêu phàm, nó không bao gồm bất kỳ dòng trống nào ở cuối. Nhưng lưu bất kỳ tệp nào trong đó Atomsẽ để lại một dòng trống ở cuối. Làm cách nào để tôi buộc Atomkhông để lại khoảng trắng ở cuối?


3
Gậy Atom để POSIX nghĩa của một dòng theo mặc định: "A sequence of zero or more non- <newline> characters plus a terminating <newline> character." - stackoverflow.com/questions/729692
sepehr

Câu trả lời:


191

Trong Atom của bạn, Preferenceshãy chuyển đến Packagestab và tìm kiếm whitespace. Nhấp vào whitespacegói và bỏ Ensure Single Trailing Newlinechọn tùy chọn

nhập mô tả hình ảnh ở đây


30
Tôi nghĩ sẽ tốt hơn nếu chúng ta bỏ chọn "Bỏ qua khoảng trắng trên dòng hiện tại". Thao tác này sẽ xóa khoảng trắng cuối dòng hiện tại tại thời điểm lưu tệp.
Gagan

Thông báo này có thể trở nên khó hiểu hơn không? Lol - Tôi vô cùng vui mừng khi Atom chỉnh sửa phần khác của một tệp dài bởi vì một nhà phát triển khác đã để lại một số khoảng trống ở cuối chỉ để thấy rằng không thể tìm thấy cài đặt này theo tên. Rất ít .. Có ai nhận thấy rằng tên đã thay đổi từ Gói thành Cài đặt không?
jcalfee314

5
Có thể đây là một cài đặt mới, nhưng có một Remove Trailing Whitespacehộp kiểm ở cuối settingsphần. Bỏ chọn nó sẽ giữ lại tất cả các khoảng trắng ở cuối.
bluecollarcoder

19

Ở cấp độ toàn cầu, điều này có thể được thay đổi bằng cách sử dụng settingstrong Whitespacegói, nhưng nếu bạn muốn tắt nó cho một ngôn ngữ cụ thể, bạn phải sử dụng thuộc tính phạm vi cú pháp trong config.cson của mình.

'.text.html.php': # php overrides
  whitespace:
    ensureSingleTrailingNewline: false
    removeTrailingWhitespace: false

'.source.ruby': # ruby overrides
  whitespace:
    ensureSingleTrailingNewline: false
    removeTrailingWhitespace: false

Để xem phạm vi của ngôn ngữ, hãy chuyển đến Packagestab và tìm kiếm ngôn ngữ của bạn.

Nhấp vào cài đặt của gói ngôn ngữ và bạn có thể thấy phạm vi:


1
Câu trả lời của bạn thậm chí còn chi tiết hơn so với các tài liệu chính thức tại github.com/atom/whitespace , cảm ơn bạn đã dành thời gian đưa ra câu trả lời này! :-) Tôi rất thích định cấu hình nguyên tử theo cách này, nhưng tôi không thể làm cho nó hoạt động được, nguyên tử tiếp tục chuyển hai dòng mới ở cuối thành một dòng duy nhất trong các tệp jinja2 của tôi. Phạm vi là .text.html.jinja, cấu hình phù hợp với bạn, nhưng không hoạt động. Toàn cầu sau đó là :-(
ssc

Hình ảnh cho thấy cách tìm phạm vi đặc biệt hữu ích. Kể từ đó, tôi cũng đã tìm thấy các phạm vi được liệt kê trong bộ chọn ngữ pháp (theo mặc định ở bên phải của kết thúc dòng, số dòng và mã hóa ở cuối cửa sổ hoặc bằng phím tắt mặc định ctrl+shift+L).
Steve

9

Đi tới các gói và tìm "khoảng trắng", đi tới cài đặt của nó và bỏ chọn hộp kiểm cuối cùng.

Cài đặt Ảnh chụp màn hình cài đặt

Hộp kiểm Ảnh chụp màn hình hộp kiểm


0

Để thêm vào câu trả lời của Dan Moldavan .

Tôi đã gặp sự cố này khi làm việc trên Ứng dụng Rails.

Tôi đã thêm một .editorconfigtệp có các thuộc tính sau:

# editorconfig.org

root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
trim_trailing_whitespace = false

Và tôi đã thêm một .gitattributestệp có các thuộc tính sau:

# Enforce Unix newlines
* text=auto eol=lf

Và sau đó, Atom Editor của tôi đã gặp sự cố:

1 vấn đề ảnh hưởng đến .gitattributes

khoảng trắng: Có thể gói "khoảng trắng" ngăn các thuộc tính sau hoạt động đáng tin cậy: insert_final_newline, trim_trailing_whitespace. Bạn có thể thử định cấu hình lại hoặc vô hiệu hóa gói "khoảng trắng" để giải quyết các vấn đề liên quan.

Đây là cách tôi sửa nó :

  • Mở Atom Editor của bạn
  • Đi tới Chỉnh sửa> Tùy chọn> Gói
  • Nhập khoảng trắng
  • Nhấp vào gói hiển thị
  • Bỏ chọn những điều sau:
    • Đảm bảo một dòng mới theo dõi
    • Bỏ qua khoảng trắng trên dòng hiện tại
  • Để lại Ignore Khoảng trắng Chỉ dòng unticked

Ảnh chụp màn hình của bản sửa lỗi

Lưu và đóng cài đặt.

Đó là tất cả.

Tôi hi vọng cái này giúp được

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.