Vim, sözdizimi vurgulama nasıl yeniden yüklenir


Yanıtlar:


97

Kullanım :syntax sync fromstart

Bu ipucunu http://vim.wikia.com/wiki/Fix_syntax_highlighting adresinden aldım

Bu makale ayrıca bu komut için bir eşleme oluşturmayı da önermektedir, örneğin F12'yi eşlemek için:

noremap <F12> <Esc>:syntax sync fromstart<CR>
inoremap <F12> <C-o>:syntax sync fromstart<CR>

Bu çalışır, ancak yazım denetimi için alt çizgiyi kaldırır. Bunu önlemenin bir yolu var mı?
Alec Jacobson

1
Üzgünüm bilmiyorum. Yazım denetimi yapan hiçbir şeyim yok. Sizin özel eklentinize bağlı olabilir. Kimse cevap vermezse, tüm ilgili bilgilerle bir soru oluşturmaya değer olabilir.
Mike Lippert

3
autocmd BufEnter,InsertLeave * :syntax sync fromstartArabelleğe girdikten sonra sözdizimi senkronizasyonunu zorlamak için kullanmayı bitirdim. Sözdizimi senkronizasyonu, bir InsertLeaveolay meydana geldiğinde de tetiklenir .
Samuel Li

Belki bir gün birisi bunu faydalı bulacaktır. Bash için filetype=shveya kullanın syntax=shve beğenmeyin bash. Bunu anlamam bir ara aldı.
quapka

Ben biraz daha kısa olan :do Syntaxeşdeğerini kullanıyorum :doautocmd Syntax, böylece onu bağlamanıza gerek yok (en azından bu komutu sık sık çağırmam gerekmiyor, bu yüzden sadece yazıyorum). Çoğunlukla, dosyayı netrw aracılığıyla açtığımda sözdizimi vurgusunun bozulmasına neden olan düzenli ifadeler içeren bazı dosyalarda kullanıyorum.
Rens Tillmann

54

Deneyin:

:e

Dosyada kaydedilmemiş herhangi bir değişiklik yoksa.

Veya:

:syn off | syn on

Acıyı hafifletmek için bir haritalama oluşturun, buna benzer bir şeynmap <F6> :Rmodel|e<CR>
holygeek

2
Sözdizimi vurgulamasını yenilemek için bazı yerleşik komutlar olmalı gibi görünüyor. İşe yarayan başka bir şey de dosyanın başka bir kısmına gg``
atlamaktır

2
": syntax fromstart" (tırnak işaretleri olmadan) bazen sözdizimi renklendirmesi göstermeyen dosyalarda dosya türü sözdizimini vurgulayarak yeniden yüklemedi - bazı nedenlerden dolayı ben ve Vim için devam eden bir sorun. Ancak, ": syn off | syn on" hemen çalıştı. ": e!" bu yeniden yüklemeyi de gerçekleştirir, ancak dikkatli olun: dosyanızdaki kaydedilmemiş değişiklikler kaybolacak!
Victoria Stuart

:syn off | syn onbenim için renk
şemasını değiştiriyor

12

Yukarıdakilerin hepsini denedim - hiçbiri benim için çalışmadı.

İşe :filetype detect yarayan tek şey: bu yüzden hızlı bir kısayolu yeniden oluşturdum :noremap <Leader>,ftd :filetype detect


10

Bazen sözdizimi iyidir, ancak kırılan tek şey kıvrımlar. Bu durumda zxçok yardımcı olur.

VIM belgelerinden:

zx

Kıvrımları güncelle: Manuel olarak açılan ve kapatılan kıvrımları geri alın: "kat seviyesi" ni yeniden uygulayın, ardından "zv" yapın: İmleç çizgisini görüntüleyin. Ayrıca yeniden hesaplanan kıvrımları zorlar. Bu, 'foldexpr' kullanılırken yararlıdır ve tampon, kıvrımların düzgün bir şekilde güncellenmemesine neden olacak şekilde değiştirilir.



-1

Deneyin:

:Rrefresh!

Bu komut, önbelleğe alınmış belirli ayarları yeniler ve ayrıca rails.vim'i yeniden yükler .
Rails'te söz dizimi vurgulamasını yenilememe yardımcı oluyor.


Bu yalnızcarails.vim genel bir çözüm için geçerlidir ve değildir. Bu eklenti olmadan bu komut mevcut değildir.
wchargin

-1

Şunları da deneyebilirsiniz:

CTRL-L

VIM belgelerinden ( :h CTRL-L):

Ekranı temizleyin ve yeniden çizin. Yeniden çizim, daha sonra, önden yazı işlendikten sonra gerçekleşebilir.


Ctrl-L ekranı yeniler. İlgili sözdizimi dosyasında değişiklik yaparsanız hiçbir şey fark etmez.
Alexis Wilke
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.