PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vim und Syntax



BMH1980
13.12.05, 14:20
Hallo,

melde mich mal nach laaanger Zeit wieder. Diesmal mit einem (für mich) etwas komplizierterem Theme.

Ich würde gerne eine eigene Syntax-Datei/oder -Skript für Vim schreiben. Im Prinzip soll der Syntax der Gleiche sein, wie bei Shell-Skripten.

Jedoch sollten bestimmte Variabeln gesondert vorgehoben werden. Und es sollen auch ein paar Schlüsselwörter hinzu kommen.

Der Syntax soll für spezielle Buildskripte gedacht sein, in denen immer die gleichen Variabeln vorkommen müssen. Um Tippfehler zu vermeiden, finde ich es besser, dass diese anders hervorgehoben werden, als normale Variabeln.

Ich habe bereits versucht mit der Online-Doku auf vim.org zu arbeiten. Habe mir auch sh.vim und ein anderes Syntax-Skript als Vorlage genommen.

Bisher habe ich es aber nur geschafft, dass die gesonderten Schlüsselwörter hervor gehoben werden.

Kann mir jemand Tipps zu dem Thema geben, oder hat vielleicht auch eine Lösung parat?

Das hier ist mein bisheriges Syntaxskript.


let is_bash = 1
unlet! b:current_syntax
syn include @shTop syntax/sh.vim

syn case match
setlocal softtabstop=0
setlocal shiftwidth=8

syn match Variable "pkgname="

syn keyword fwStatement Fmessage Fdie Fcd Fmkdir Frm Fcp Fcpr Fmv Finstallrel Finstall Fdirschmod Ffileschmod Fdirschown Ffileschown Fexe Fexerel Ffile Ffilerel Fdoc Fdocrel Fln Fsed Fdeststrip Fpatch Fpatchall Fconf Fmake Fmakeinstall Fbuild Frcd Frcd2 Facu Fsort Funpack_makeself Fautoconfize Finclude Flasttar

hi def Variable term=bold ctermfg=Cyan

" Default Highlighting: {{{1
" =====================
hi def link fwStatement Statement
hi def link fwVar Variable

let b:current_syntax = "fw"

Meilenstein
13.12.05, 14:55
ich schliesse mich der Suche mal an. Wollte eigentlich für "nedit" einen Syntax suchen aber bin jetzt auf Vim aufmerksam geworden, doch leider gibts auch hierfür keinen Syntax (für Menü von WindowMaker)

BMH1980
17.12.05, 08:16
Hmm. Wirklich niemand eine Ahnung oder einen Tipp? :(