[Fli4l_dev] Änderung der ?==?utf-8?Q?Nomenklatur?

Christoph Schulz fli4l at kristov.de
Sa Feb 3 09:09:04 CET 2018


Hallo,

das liegt daran, dass die Dokumentation der neuen Syntax (noch) nicht
existiert. Was du gemacht hast, ist übersetzt:

USERCMD_FILE_1_SRC='...'
USERCMD_FILE_2_DST='...'

Sprich, jede Verwendung von [] liefert einen *neuen* Index. Muss ja
auch, wie soll mkfli4l denn sonst wissen, wann du einen Wechsel des
Array-Eintrags bezweckst und wann nicht? Da du aber in deinem Fall beide
"Untervariablen" an *denselben* Index binden musst, musst du dies
mkfli4l explizit mitteilen, indem du den gemeinsamen Index
"ausklammerst":

USERCMD_FILE[] {
  SRC='...'
  DST='...'
}

Jetzt beziehen sich SRC und DST auf denselben Array-Index.

Du kannst mit der neuen Syntax jeden beliebigen Präfix ausklammern,
solange du keine Worte auftrennst o.ä. Du könntest also auch
schreiben:

USERCMD {
  FILE {
    [] {
      SRC='...'
      DST='...'
    }
  }
}

Außerdem kann man durchgängig "." statt "_" verwenden (außer vor
Indizes, meine ich), was m.E. schöner aussieht und an Strukturen in
vielen Programmiersprachen erinnert (C, C++, Java, ...). Natürlich ist
das Geschmacksache.

USERCMD.FILE[] {
  SRC='...'
  DST='...'
}

Und für explizite Array-Indizes (falls das nötig sein sollte) kann man
die Indizes ebenfalls in einer "normaleren" Syntax schreiben:

VBOX.USER[1].SECTION[2].SECDEF[3]='...'
SWITCH[1].VLAN[2].PORT[3].ID='...'

Aber natürlich ist das auch Geschmacksache.


Viele Grüße,
-- 
Christoph Schulz
[fli4l-Team]


Mehr Informationen über die Mailingliste Fli4l_dev