diff options
Diffstat (limited to 'syntax/def_LinkedWords.py')
| -rwxr-xr-x | syntax/def_LinkedWords.py | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/syntax/def_LinkedWords.py b/syntax/def_LinkedWords.py new file mode 100755 index 0000000..d9d7301 --- /dev/null +++ b/syntax/def_LinkedWords.py @@ -0,0 +1,38 @@ +#!/usr/bin/python3 + +# Copyright 2025, Jonas Smedegaard <dr@jones.dk> +# SPDX-License-Identifier: GPL-3+ + +from os.path import basename, splitext +from railroad import * + +Diagram( + Choice(0, + Sequence( + "[", + NonTerminal("Words"), + "]", + Choice(0, + Sequence( + "(", + Choice(0, + Sequence( + NonTerminal("Uri"), + NonTerminal("_"), + NonTerminal("LinkTitle") + ), + NonTerminal("Uri"), + NonTerminal("LinkTitle") + ), + ")" + ), + NonTerminal("LinkLabel") + ) + ), + Sequence( + NonTerminal("LinkLabel") + ) + ), + type="complex" +).writeStandalone( + open(splitext(basename(__file__))[0] + ".svg", "w").write) |
