gmlarumbe / vhdl-ext

VHDL Extensions for Emacs
GNU General Public License v3.0
27 stars 5 forks source link

All commands fails #6

Closed civec closed 11 months ago

civec commented 11 months ago

Hi,

I have been using the vhdl-mode for quite some time and recently I have decided to give a try to this extension. I have installed it from melpa and I believe I have also all the requirement needed for the given command.

I have yet succeed with configure it . Setting a variable setq vhdl-project-alist doesn't work for me. I had to create variable vhdl-ext-project-alist. Now almost all the command fails with

vhdl-ext-buffer-proj: Wrong type argument: stringp, nil

Is there another variable which has to be set?

Thanks for help

gmlarumbe commented 11 months ago

Hi @civec ,

Thanks for reporting the issue.

I have recently made some changes to the package but I still did not spare enough time to document them in the README and the wiki. Sorry for the confusion.

The most significant one is the replacement of the variable vhdl-project-alist with vhdl-ext-project-alist as you have already figured out. Now it is an alist whose elements cdrs are property lists, e.g:

(setq vhdl-ext-project-alist
      `(("axi_if_converter"
         :root "/path/to/repo/axi_if_converter"
         :files ("src/top/rtl/global_pkg.vhd"
                 "src/misc/clk_div.vhd"
                 "src/misc/clk_sync.vhd"
                 "src/pattern_counter/rtl/pattern_counter.vhd"
                 "src/input_buffer/rtl/input_buffer_pkg.vhd"
                 "src/input_buffer/rtl/input_buffer.vhd"
                 "src/core_fsm/rtl/core_fsm.vhd"
                 "src/axi_lite_regs/rtl/axi_lite_regs.vhd"
                 "src/axi_lite_master/rtl/axi_lite_master.vhd"
                 "src/core_conv/rtl/core_converter.vhd"
                 "src/top/rtl/axi_if_converter.vhd")
         ;; The ones below are used for GHDL-related features
         :worklib "xil_defaultlib" ; Defaults to `work' if not set
         :workdir "library/xil_defaultlib" ; output compilation directory for worklib
         :lib-search-path ("/opt/ghdl_Xilinx_lib/") ; extra directories to look for compiled libraries
         )))

You can also set the properties :dirs, :ignore-dirs and :ignore-files for each project entry. You can check the doc of the vhdl-ext-project-alist variable for further info.

I expect all commands to work with this new variable (at least they do in CI regressions). If that is not the case you can temporarily try with MELPA Stable version 0.3.1 which did not include these changes yet.

In the next days I intend to commit various bug fixes and update the README and the Wiki. I hope it will take a short time.

Thanks!

civec commented 11 months ago

Hi @gmlarumbe ,

thanks for quick answer. Now it works perfectly. Documentation is always lagging behind code :-)