emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: verilog-mode.el


From: Stefan Monnier
Subject: Re: verilog-mode.el
Date: Sat, 13 Oct 2007 22:41:15 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/23.0.50 (gnu/linux)

>>>>> "Michael" == Michael McNamara <address@hidden> writes:

> Colleagues: Attached is version 366 of verilog-mode.el, a lisp file that
> I and Wilson Snyder have been developing and publishing for the last ten
> years or so, releasing it under the GPL at http://www.verilog.com and at
> http://www.veripool.com.

> We have completed paper work to assign copyright to the FSF so that editing
> mode could be included in a future emacs distribution.

> We are actively maintaining the mode, as the hardware description language,
> Verilog, which this mode supports is under active development itself.  (see
> http://www.systemverilog.org/)

> Dan suggested that I post the mode here to get your feedback, constructive
> criticism, and hopefully support for including this in the
> emacs distribution.

> And so, here it is.

> Please send any comments to address@hidden and to address@hidden

> Thank you!

- Remove verilog-running-on-xemacs and use (featurep 'xemacs) instead
  (without storing its value in a variable): the byte-compiler will then
  be able to optimize away the unapplicable code (and correspondingly skip
  some silly warnings).
- 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.
- in verilog-modi-cache-results, you check (memq 'v19 verilog-emacs-features)
  additionally to (boundp 'font-lock-mode) which is redundant (same thing
  in verilog-auto).
- 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.
- the code in the major mode function which sets up the menu has a comment
  claiming this is about font-lock ;-)
- 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).


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]