Не торкайтеся файлу під час запису, якщо файл не було змінено


15

Іноді я розчулено набираю текст, :wколи щось читаю. Це призводить до зміни часу модифікації файлу, а іноді і призводить до того, що моя система збирання зайво відновлює значну частину проекту.

Чи є спосіб встановити vim, щоб просто нічого не робити, якщо я спробую написати файл, і він не був змінений?

Відповіді:


15

Розширення відповіді @ lcd047 ви можете використовувати cabbrevдля зміниw

:cabbrev w <c-r>=(getcmdtype()==':' && getcmdpos()==1 ? 'up' : 'w')<CR>

Коли ви введете, :wви помітите, що його буде замінено на :upнатискання клавіші return.


14

Не безпосередньо (тобто поведінку :wне можна змінити), але ви можете навчитися використовувати :upзамість цього :w. Це робить саме те, що ти хочеш.


3
Дозвольте додати: я використовую улюблену карту клавіш для збереження, і я зв'язав її :updateзамість того, :writeщоб отримати вимогу "Оригінальний плакат".
Джованні Маджорані
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.