# DESCRIPTION: To-do list for verilog-mode
######################################################################
 
Occasionally:
    * M-x checkdoc
    * Make sure it's as byte compile clean as possible.

Features
	Make a hiearchy map of the current module and below in a spare buffer.

;From: Dan Nicolaescu <dann@ics.uci.edu>
;Date: Sun, 14 Oct 2007 10:49:43 -0700

;      > (defvar verilog-mode-map ()
;      >   "Keymap used in Verilog mode.")
;      > (if verilog-mode-map
;      >     ()
;      >   (setq verilog-mode-map (make-sparse-keymap))
;      >   (define-key verilog-mode-map ";"        'electric-verilog-semi)
    
;    Better use:
    
;    (defvar verilog-mode-map
;      (let ((map (make-sparse-keymap)))
;        (define-key map ";"        'electric-verilog-semi)
;        ... etc etc


From: Stefan Monnier <monnier@iro.umontreal.ca>
Date: Sat, 13 Oct 2007 22:41:15 -0400
    
    - Rather than create a new syntax-table in each buffer, just do
    
       (defvar verilog-mode-syntax-table
         (let ((st (make-syntax-table)))
           (modify-syntax-table ...)
           ...
           st))
    
      once and forall (inlining the only calls to verilog-setup-dual-comments
      and verilog-populate-syntax-table).
      Regarding verilog-setup-dual-comments, even if you consider the XEmacs
      solution cleaner, the Emacs solution is not only equivalent but it also
      works under XEmacs, so you can use it everywhere and remove an
      emacs-version check.
    - You can then remove the verilog-emacs-features abomination.

    - The part
    
             (require 'verilog-mode)
    
      is pretty hideous and deserves either to be fixed (i.e. removed), or large
      comments justifying each part.
      Also some of the subsequent requires are unneeded (e.g. the `imenu' one).

    - Use easy-menu-add rather than add-submenu so it works on both Emacs
      and XEmacs.

    - Emacs-21's comment-region and uncomment-region should work correctly
      (including mangling nested comments, although in a different way from the
      one you chose).

      verilog-comment-regiont and verilog-uncomment-region
      can (probably) be dropped when running under Emacs>=21 (and the C-c C-c
      binding could also be removed if you assume your users will use M-;)
