aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/common/cellhelp.py
diff options
context:
space:
mode:
Diffstat (limited to 'techlibs/common/cellhelp.py')
-rw-r--r--techlibs/common/cellhelp.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/techlibs/common/cellhelp.py b/techlibs/common/cellhelp.py
new file mode 100644
index 000000000..7844ccb40
--- /dev/null
+++ b/techlibs/common/cellhelp.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python3
+
+import fileinput
+import json
+
+current_help_msg = []
+current_module_code = []
+current_module_name = None
+
+def print_current_cell():
+ print("cell_help[\"%s\"] = %s;" % (current_module_name, "\n".join([json.dumps(line) for line in current_help_msg])))
+ print("cell_code[\"%s+\"] = %s;" % (current_module_name, "\n".join([json.dumps(line) for line in current_module_code])))
+
+for line in fileinput.input():
+ if line.startswith("//-"):
+ current_help_msg.append(line[4:] if len(line) > 4 else "\n")
+ if line.startswith("module "):
+ current_module_name = line.split()[1].strip("\\")
+ current_module_code = []
+ current_module_code.append(line)
+ if line.startswith("endmodule"):
+ if len(current_help_msg) > 0:
+ print_current_cell()
+ current_help_msg = []
+