symbolator: Got this error while running symbolator on a verilog file

Is symbolator properly supported for verilog? I got the following error when I ran it on a .v file. I have tried out multiple output formats etc. but no joy.

./symbolator.py alu.v
Scanning library: .                                                                                                    
Creating symbol for alu.v "alu"
-> __alu.svg              
Traceback (most recent call last):
File "./symbolator.py", line 596, in <module>                                                                             
   main()                                                                                                                
File "./symbolator.py", line 591, in main                                                                                 
   sym.draw(0,0, nc)                                          
File "./symbolator.py", line 272, in draw                                                                                 
   sym_width = max(s.min_width(c, style.font) for sym in self.symbols for s in sym.sections)
File "./symbolator.py", line 272, in <genexpr>                                                                            
   sym_width = max(s.min_width(c, style.font) for sym in self.symbols for s in sym.sections)
File "./symbolator.py", line 158, in min_width                                                                            
   lmax = max(tw.text_width(c, font_params) for tw in self.left_pins)
File "./symbolator.py", line 158, in <genexpr>                                                                            
   lmax = max(tw.text_width(c, font_params) for tw in self.left_pins)
File "./symbolator.py", line 105, in text_width                                                                           
   x0, y0, x1, y1, baseline = c.surf.text_bbox(self.text, font_params)
File "/mnt/g/symbolator_files/symbolator/nucanvas/svg_backend.py", line 211, in text_bbox                                 
   return CairoSurface.cairo_text_bbox(text, font_params, spacing, self.scale)
File "/mnt/g/symbolator_files/symbolator/nucanvas/cairo_backend.py", line 122, in cairo_text_bbox
   layout = pangocairo.create_layout(ctx)
KeyError: 'could not find foreign type Context'
sumanth@LAPTOP-MFGQBV4B:/mnt/g/symbolator_files/symbolator$ ```

About this issue

Most upvoted comments

@mithro what exactly are you planning with Symbolator in the Symbiflow project? I think Its high time someone created an open-source HDL to block diagram converter that enables easier design exploration by allowing us to zoom into the sub-modules without having to synthesize the design. Something like the Schematic Viewer in Vivado and ISE except much lighter and faster.

If something like that is on the charts. I would love to contribute to the project.

FYI - We have started maintaining a symbolator fork in the SymbiFlow organization (https://github.com/SymbiFlow/symbolator).

We are reviewing and accepting pull requests as the tool is being heavily used in SymbiFlow and Google’s skywater-pdk documentation.

At some point we might rename it to something like symbiflow-symbolator and publish it on PyPi and similar.