Inny kolor tła dla wielu typów plików w vimie


10

Czy można mieć różne kolory tła w vimie (tj. Jeden jasny, jeden ciemny) w przypadku plików z wieloma rodzajami plików (tj. :set ft=html.php)? W kodzie PHP z osadzonym HTML może być trudno zobaczyć jedną instrukcję PHP wśród kilkudziesięciu linii HTML, patrz poniżej. Zadowolę się czymkolwiek, czy będzie to inny kolor bg, znacznik na marginesie, drugi lewy margines (jedna wtyczka vim robi to dla znaków), może <?phpna przykład podświetlając tag (chociaż to nie jest idealne)

PHP w kodzie HTML

EDYCJA: Nie sądzę, że jest to możliwe na poziomie składni, ponieważ wydaje się, że używa ona ograniczonej liczby elementów (Ciąg, Funkcja, Identyfikator ...). Bez wątpienia pozwala to na łatwą integrację z kolorami. SyntaxAttr to dobra wtyczka, która to pokazuje. Umieść go na dowolnej części kodu, a powie ci, do której grupy składni należy.


Być może możesz użyć tego samego rozwiązania, co w tym poście stackoverflow.com/questions/4167425/..., gdzie tworzą niestandardowy schemat kolorów, który wyróżnia dowolny ciąg zaczynający się od sql_.

1
Zobaczę, czy uda mi się go wykryć w regionach pomiędzy ?>i <?jako PHP.
puk

Odpowiedzi:


1

Innym potencjalnym rozwiązaniem jest dostosowanie ulubionego pliku schematu kolorów w celu sprawdzenia ustawienia „tła”. Wiele osób ustawia ustawienie „tła” w jedną lub drugą stronę, ale można to sprawdzić, aby zmienić kolory podświetlenia.

Przykładowy schemat kolorów


" Search
if &background=="dark"
  hi IncSearch    gui=UNDERLINE guifg= ctermfg=
else " background is light
  hi IncSearch    gui=UNDERLINE guifg= ctermfg=
fi


Czy istnieje sposób sprawdzenia języka słowa / znaku? tzn. czy jest to HTML v PHP?
puk

Rodzaj zależy. Możesz sprawdzić typ podświetlenia dla określonego słowa. A jeśli można rozróżnić HTML i PHP, to wiesz. Ale myślę, że to najlepsze, co dostaniesz bez dodatkowej pracy. Aby uzyskać typ wyróżnienia, użyj czegoś takiego: echo synIDattr (synID (linia („.”), Col („.”), 1), „nazwa”)
pottsdl
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.