Benim vimrc aşağıdaki var:
func! AddSpaceBeforeEqual()
s/\([a-z)_0-9"'\[\]]\)=/\1 =/ge
endfunc
Vimrc'imi havlamak için vint kullanıyorum ve aşağıdaki uyarıyı aldım:
ProhibitCommandWithUnintendedSideEffect İstenmeyen yan etkileri olan komutlardan kaçının. İmleci hareket ettirip hata mesajları yazdırırken: s [ubstitute] kullanmaktan kaçının. Komut dosyalarına daha uygun işlevleri (arama () gibi) tercih edin. Birçok vim komutu için, aynı şeyi daha az yan etki ile yapan işlevler vardır. Yerleşik işlevlerin listesi için bkz. Yardım işlevleri (). Google Vimscript Stil Kılavuzu
Ancak, :s
komutu kullanmadan oyuncu değişikliği yapmanın bir yolu olduğunu düşünmüyorum .
Örneğin, search()
işlev bir desenle eşleşen çizgileri verir, ancak ikame yapmanın bir yolu yoktur. substitute()
İşlev bir dize çalışır ve bir bütün dosya üzerinde yerine geçmez.
Yedek bir yöntemi kendim mi uygulamalıyım yoksa işlevimi yeniden yazmanın daha akıllı bir yolu mu?
:help function-search-undo