Hallo Liste,

ich bin gerade dabei für kate ein neue Hervorhebungsdatei (schrecklich 
in deutsch) für informix-4gl zu schreiben. Ich kriege den regexp 
nicht richtig zusammen und benötige ein wenig Hilfe.

Erstmal ein Beispielcode
<code>
function aubb_anschrift_delete(_rowid, _para1)
  define  _rowid    int,
          _para1    char(10)
  define  rid       int,
          txt       char(20),
          txt_2     char(1)

  let rid = _rowid
  let txt = "text ",_para1
  let txt_2 = ""
</code>

Folgedes soll gemacht werden.
Parameter fangen alle (bei mir zu mindestens) mit einem Unterstrich 
an. Diese sollen markiert werden. Die Variablen die in der Mitte 
einen Unterstrich habe sollen nicht markiert werden, es sei denn sie 
haben am Anfang auch einen Unterstrich. Vor der Parametervariablen 
können steht eins von den folgenden Zeichen: 
,=( <space> <tab> <oder nichts>

Die Parametervariable endet mit einem der folgenden Zeichen
, <space> <tab> <zeilenende>
Ich habe folgenden regexp definiert
  \s*[,=(\t ]_[a-z_]*

Es werden alle Parametervariablen markiert, außer die '_rowid' im 
Funktionskopf. Ausserdem wird das Zeichen vor dem _ auch markiert. 
[,=(\t ] Das soll nicht sein.

Kann jemand helfen?

-- 
cu

Roland Kruggel  mailto: rk.liste at bbf7.de
System: Intel, Debian etch, 2.6.16.16, xfce4 KDE 3.5

Antwort per Email an