Có ai biết về trình soạn thảo văn bản trên Linux cho phép tôi xem các ngắt dòng và trả về vận chuyển không? Vim có hỗ trợ tính năng này không?Xem ngắt dòng và trả về vận chuyển trong trình chỉnh sửa
Trả lời
:set list
trong Vim sẽ hiển thị khoảng trắng. Kết thúc các dòng hiển thị là '$
' và lợi nhuận vận chuyển thường hiển thị là '^M
'.
Cùng một câu hỏi ở đây: http://superuser.com/questions/97692/vim-show-line-feeds-carriage-return –
Không đúng, ': bộ danh sách' sẽ KHÔNG hiển thị ký tự'^M' (CR). Việc cung cấp tùy chọn '-b' cho vi/vim sẽ hoạt động. Hoặc, một khi vim được nạp, gõ: ': e ++ ff = unix' – CaptSaltyJack
@CaptSaltyJack Điều đó cần phải là câu trả lời riêng ..... –
VI hiển thị dòng mới (ký tự LF, mã x0A
) bằng cách hiển thị văn bản tiếp theo trên dòng tiếp theo.
Sử dụng công tắc -b
cho chế độ nhị phân. Ví dụ: vi -b filename
hoặc vim -b filename --
.
Sau đó, nó sẽ hiển thị các ký tự CR (x0D
), thường không được sử dụng trong các tệp kiểu Unix, như các ký tự ^M
.
Để không đồng ý với câu trả lời chính thức:
:set list
sẽ không chương^M ký tự (CR). Việc cung cấp tùy chọn -b cho vi/vim sẽ hoạt động. Hoặc, khi vim được tải, hãy nhập :e ++ff=unix
.
Tại sao ': set ff = unix' không hoạt động, nhưng': e ++ ff = unix' làm gì? –
Đó là Cú pháp. ': help edit' hiển thị' e [dit]! [++ opt] [+ cmd] '. Và ': help ++ e' nói _ Đối số [++ opt] có thể được sử dụng để buộc giá trị của 'fileformat' [..] _. – dennis
chỉ để làm rõ, ': set list' hiển thị dòng mới (' $ '),': e ++ ff = unix' hiển thị CR ('^ M'); nếu bạn muốn xem cả hai, ': set list' rồi': e ++ ff = unix' –
Hãy thử lệnh sau.
: đặt nhị phân
Trong VIM, điều này sẽ làm tương tự như khi sử dụng tùy chọn dòng lệnh "-b". Nếu bạn đặt tệp này vào tệp khởi động (tức là .vimrc), tệp này sẽ luôn sẵn sàng cho bạn.
Trên nhiều hệ thống * nix, có lệnh "dos2unix" hoặc "unix2dos" có thể xử lý tệp và sửa bất kỳ sự cố kết thúc dòng nghi ngờ nào. Nếu không có vấn đề với kết thúc dòng, các tập tin sẽ không được thay đổi.
Tôi đề nghị bạn chỉnh sửa tệp .vimrc, để chạy danh sách các lệnh. Chỉnh sửa tập tin vimrc của bạn, như thế này:
cat >> ~/.vimrc <<EOF
set ffs=unix
set encoding=utf-8
set fileencoding=utf-8
set listchars=eol:¶
set list
EOF
Khi bạn đang thực hiện vim, các lệnh vào vimrc được thực hiện, và bạn có thể xem ví dụ này:
My line with CRLF eol here ^M¶
Chỉ cần làm rõ lý do tại sao :set list
sẽ không hiển thị CR dưới dạng ^M
mà không có e ++ff=unix
và lý do tại sao :set list
không liên quan gì đến số ^M
.
Nội bộ khi Vim đọc một tệp vào bộ đệm, nó sẽ thay thế tất cả các ký tự dòng có đại diện riêng (hãy gọi nó là $
). Để xác định những ký tự nào cần được loại bỏ, trước tiên nó sẽ phát hiện ra những gì kết thúc dòng định dạng được lưu trữ trong một tập tin. Nếu chỉ có CRLF '\r\n'
hoặc chỉ CR '\r'
hoặc chỉ LF '\n'
ký tự kết thúc dòng, thì 'fileformat'
được đặt thành dos
, mac
và unix
tương ứng.
Khi tùy chọn list
được đặt, Vim hiển thị $
ký tự khi ngắt dòng xảy ra bất kể tùy chọn fileformat
đã được phát hiện. Nó sử dụng đại diện bên trong của riêng mình của dòng-break và đó là những gì nó hiển thị.
Bây giờ khi bạn viết đệm vào đĩa, Vim chèn ký tự kết thúc dòng theo những gì fileformat
tùy chọn đã beed phát hiện, essentialy chuyển đổi tất cả những nội $
's với các nhân vật thích hợp. Nếu số fileformat
xảy ra là unix
thì nó sẽ chỉ viết \n
thay cho ngắt dòng nội bộ của nó.
Bí quyết là bắt buộc Vim đọc một tệp được mã hóa dos
là unix
một. Hiệu ứng ròng là nó sẽ loại bỏ tất cả \n
's để lại \r
' s bị ảnh hưởng và hiển thị chúng như là ^M
's trong bộ đệm của bạn. Đặt :set list
sẽ bổ sung hiển thị dòng nội bộ dưới dạng $
. Sau khi tất cả, bạn thấy ^M$
thay cho dos
ngắt dòng được mã hóa.
Cũng lưu ý rằng :set list
không liên quan gì đến việc hiển thị số ^M
. Bạn có thể tự mình kiểm tra (đảm bảo bạn đã vô hiệu hóa tùy chọn list
trước) bằng cách chèn CR đơn lẻ sử dụng CTRL-V
theo sau là Enter
trong chế độ chèn. Sau khi ghi bộ đệm vào đĩa và mở lại, bạn sẽ ses ^M
tùy chọn được đặt thành 0.
Bạn có thể tìm thêm thông tin về định dạng tệp trên http://vim.wikia.com/wiki/File_format hoặc bằng cách nhập :help 'fileformat'
trong Vim.
- 1. Trả về vận chuyển/ngắt dòng bằng \ n trong chuỗi trong Android
- 2. StreamWriter đang viết trả về vận chuyển?
- 3. Mã hóa trả về XML vận chuyển
- 4. Chèn ký tự trả về vận chuyển trong vim
- 5. vba userforms hành vi trả về vận chuyển
- 6. Làm thế nào để loại bỏ trả về vận chuyển và dòng mới trong Postgresql?
- 7. C# xóa trả về vận chuyển bổ sung từ Luồng
- 8. Xử lý sự cố trả về vận chuyển Base64 từ Java và gửi tới trình duyệt
- 9. Nokogiri to_xml không có trả về vận chuyển
- 10. VisualForce: chuyển đổi trả về vận chuyển sang dòng phân tách html trong trường văn bản dài
- 11. Tập tin Python.write tạo trả về vận chuyển bổ sung
- 12. Tạo Trả về Vận chuyển bằng Chuỗi PHP?
- 13. Dữ liệu trong một bảng có trả lại vận chuyển?
- 14. Có vận chuyển trở lại, ngắt dòng trong MS Access không?
- 15. Chức năng Oracle REPLACE() không xử lý vận chuyển trả về và dòng nguồn cấp dữ liệu
- 16. Hàm Javascript không trả về đối tượng khi có ngắt dòng giữa câu lệnh trả về và đối tượng?
- 17. Có bất kỳ trình chỉnh sửa javascript nào bảo toàn ngắt dòng không?
- 18. Chỉnh sửa và xem Cookie
- 19. Truy vấn SQL để kiểm tra nếu giá trị chuỗi chứa trả về vận chuyển
- 20. Trình chỉnh sửa chế độ xem WYSIWYG trong 'Android'?
- 21. Git: Xóa trả về vận chuyển từ các tệp được kiểm soát nguồn
- 22. Tìm ngắt dòng và trả lại dòng (\ r \ n) trong MySQL
- 23. Đăng trả lại dòng mới/vận chuyển dưới dạng giá trị trường ẩn
- 24. Nhật ký lỗi PHP có trả về vận chuyển bổ sung?
- 25. Làm thế nào để thêm dòng mới hoặc trả về vận chuyển vào mô tả trên biểu đồ facebook API
- 26. Google Chrome textareas gói và thêm ngắt dòng
- 27. JSON.stringify trong Firefox và ngắt dòng
- 28. Trình chỉnh sửa hình ảnh dòng lệnh nhẹ?
- 29. WPF RichTextBox để tạo trình chỉnh sửa với số dòng
- 30. Trình cắm thêm/xem Eclipse để chỉnh sửa nhanh các đối số dòng lệnh
LƯU Ý: đôi khi dòng mới ($) và dấu xuống dòng (^ M) được ẩn trong MANY bảng màu và cũng có thể sử dụng putty cho ssh. –