Chỉ báo noeol ở cuối phiên chỉnh sửa vim có nghĩa là gì?


Câu trả lời:


35

Các biên tập viên Unix thích vivimsẽ luôn đặt dòng mới ( \n) ở cuối mỗi dòng - đặc biệt là bao gồm dòng cuối cùng. Nếu không có dòng cuối ( eol) trên dòng cuối cùng thì đó là một tình huống bất thường và tệp chắc chắn không được tạo bởi trình soạn thảo UNIX tiêu chuẩn.

Tình huống bất thường này được đưa đến thông báo của bạn bằng [noeol]cờ trong vimtrình chỉnh sửa; các biên tập viên khác có thể có cờ và thông báo tương tự.


Trong emacs, di chuyển con trỏ đến cuối tệp (dòng cuối cùng, sau ký tự cuối cùng) và thực thi kill-line, cuối cùng bạn thực sự xóa eol.
Yeow_Meng

1
Và một số dịch vụ than vãn và phàn nàn và sẽ không bắt đầu do lỗi vì không có EOL tại EOF
ivanivan

20

Dòng cuối cùng trong tệp không có dòng mới (\ n)


2
@Bon Ami: Một số chương trình, khi đọc tệp văn bản của bạn, cần \nở cuối dòng để coi nó là một dòng hoàn chỉnh (với một dòng char mới theo dõi). Ví dụ chương trình một tập tin có thể trông giống như một sau hoàn chỉnh đường trong nháy mắt bình thường trong một trình soạn thảo văn bản, nhưng wckhông không condider nó như một dòng: printf "x">"file-no-newline"; wc -l <"file-no-newline"- Outpute là: 0 .. các noeol chỉ là một trợ giúp trực quan để cho bạn biết tình trạng ..
Peter.O

2

Điều này có nghĩa là HĐH nơi bạn xem tệp không thể phát hiện kết thúc dòng của tệp (nếu tệp có bất kỳ tệp nào). Đôi khi điều này xảy ra khi bạn di chuyển (các) tệp trên các hệ điều hành (i, e .. từ MS sang * nix os)

Trong vim, nếu tệp có cửa sổ vận chuyển trở lại " ^M", bạn có thể sửa nó bằng lệnh sau: in vim do:

:%s/^M/\r/g

Ý nghĩa:

%      => select the whole buffer
s      => Search
/^M/   => find Windows Carrage return.
/\r/   =>  Replae it with *nix carrage return

Lưu ý: trong Mac OX, ^M is ctl+v && ctrl+m


-4

Đó là 'KHÔNG EOL' - không có chỉ báo kết thúc . Rất hữu ích nếu bạn kết thúc việc mở một tệp rất lớn (> 1GB). Vim cố gắng kéo tất cả những thứ đó trong 1 dòng. Chỉ báo này giúp tôi nhanh chóng đóng tệp trước khi nó làm hỏng hệ điều hành của tôi.


2
Tôi khá chắc chắn rằng đó không phải là ý nghĩa của lá cờ này ...
bốn giờ
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.