Hallo,
um Dateien zu editieren oder anzuschauen, benutze ich den vi Version 6.3.23 auf einem SuSE 9.2 - System.
Da ich derzeit einige Dateien editieren muss, deren Auskommentierungszeichen ein „;“ (Strichpunkt) ist und mir keine Syntax-Highlighting angezeigt wird, wenn ich :syn on eingebe, würde ich gerne eine Regel schreiben, die mir - wie bei den normalen .conf-Dateien die Zeilen in blau darstellt, die ansonsten in .conf-Dateien eine „#“ (Raute) zur Auskommentierung benutzen.
Dazu habe ich einfach mal die Datei /usr/share/vim/vim63/syntax/conf.vim kopiert in testconf.vim.
Dort habe ich dann statt der „#“ einen „;“ eingetragen, so dass die Datei testconf.vim nun so aussieht:
" Vim syntax file
" Language: generic configure file
" Maintainer: Bram Moolenaar
" Last Change: 2001 Apr 25
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version = 508 || !exists("did\_conf\_syntax\_inits")
if version
else
command -nargs=+ HiLink hi def link
endif
HiLink confComment Comment
HiLink confTodo Todo
HiLink confString String
delcommand HiLink
endif
let b:current\_syntax = "conf"
" vim: ts=8 sw=2
Ich habe in den folgenden beiden Zeilen
syn match confComment "^#.\*" contains=confTodo
syn match confComment "\#.\*"ms=s+1 contains=confTodo
das „#“ durch einen „;“ ersetzt:
syn match confComment "^;.\*" contains=confTodo
syn match confComment "\;.\*"ms=s+1 contains=confTodo
Wenn ich jetzt eine Datei namens xy.conf aufrufe, deren auskommentierte Zeilen mit einem „;“ beginnen und gebe dann den Befehl :set syntax=testconf ein, dann werden mir die Zeilen mit dem „;“ nicht blau dargestellt.
Wo liegt da der Fehler?
Grüsse
schuelsche