Що означає показник noeol внизу сеансу редагування vim?


Відповіді:


35

Редакторам Unix подобається viта vimзавжди розміщуватимуть нові рядки ( \n) в кінці кожного рядка, особливо включаючи останній рядок. Якщо немає кінця рядка (eol в останньому рядку ), то це незвичайна ситуація, і файл, безумовно, створений не стандартним редактором UNIX.

Ця незвичайна ситуація сповіщається [noeol]прапором у vimредакторі; інші редактори, ймовірно, мають подібні прапори та сповіщення.


В emacs, переміщаючи курсор в кінець файлу (останнього рядка, після останнього символу) і виконати kill-line, ви на самому справі в кінцевому підсумку викреслювання eol.
Yeow_Meng

1
Деякі служби плачуть і скаржаться і не почнуться через помилки через відсутність EOL на EOF
ivanivan

20

В останньому рядку у файлі немає нового рядка (\ n)


2
@Bon Ami: Деякі програми, читаючи ваш текстовий файл, потребують \nв кінці рядка, щоб вважати його завершеним рядком (із заднім знаком нового рядка). У наступному прикладі показаний файл , який може виглядати як повний лінії на випадковий погляд в текстовому редакторі, але wcробить НЕ condider це як лінія: printf "x">"file-no-newline"; wc -l <"file-no-newline"- Outpute є: 0 .. noeol просто візуальна допомога , щоб ви знаєте, статус ..
Пітер.О

2

Це означає, що ОС, де ви переглядаєте файл, не в змозі виявити закінчення рядка файлу (якщо файл взагалі є). Іноді це трапляється при переміщенні файлів (-ів) через ОС (i, e .. з MS до * nix os)

У vim, якщо файл має повернення каретки Windows " ^M", ви можете його виправити за допомогою наступної команди: in vim do:

:%s/^M/\r/g

значення:

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

Примітка: у Mac OX, ^M is ctl+v && ctrl+m


-4

Його "NO EOL" - немає індикатора кінця рядка . Дуже корисно, якщо ви відкриєте дуже великий файл (> 1 Гб). Вім намагається витягнути все це в 1 рядок. Цей показник допомагає мені швидко закрити файл, перш ніж він прикрутить мою ОС.


2
Я майже впевнений, що це не те, що означає цей прапор ...
чотирирічний
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.