Initial revision.


git-svn-id: file:///verilog-mode-svn/trunk@2 db5bb42b-8904-0410-88e9-aa7026cf2ec3
*** empty log message ***


git-svn-id: file:///verilog-mode-svn/trunk@3 db5bb42b-8904-0410-88e9-aa7026cf2ec3
*** empty log message ***


git-svn-id: file:///verilog-mode-svn/trunk@4 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Base of publicly released version.


git-svn-id: file:///verilog-mode-svn/trunk@5 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Fix a typo, hints to use autoload, incorrect indentation of module as
typed, named blocks where not handled. [ Thanks Drew!]

There was a bug in the auto endcomment for `else and `endif (comment
went to the wrong spot)

Changed some features:
The auto comments used to add comments like:
 endmodule /* module: foo */
 endfunction /* function: bar */

 I deleted the "module:" and "function:" parts as they are rather obvious...

The end for named blocks is now marked.

Added some features:
 Now M-C-t (esc tab) does some reasonable completion;
 it tries to get appropriate keywords based on scope;
 it tries to get tasks based on scope;
 it tires to get modules based on scope.

 eg,
 module foo;
   ini<M-TAB> fills with initial

 module barinsky;
 endmodule

 module foo;

  ba<M-TAB> fills with barinsky

and so on.

However, it still needs more work (vestiges of pascal mode remain).


git-svn-id: file:///verilog-mode-svn/trunk@6 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Fix some silly typos; for now on I promise to _at least_ byte-compile
and load the file before I send it out...


git-svn-id: file:///verilog-mode-svn/trunk@7 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Many changes; the major one is that indent calculation is much faster.
Also some colorization changes, and bug fixes.


git-svn-id: file:///verilog-mode-svn/trunk@8 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) Reworked color, borrowing ideas from gnus, so we pick either a
   light or dark color scheme, based on the background color of the
   frame. Also made it all work on a monochrome X screen as well.
2) Tuned the auto-indent case feature to handle all the stuff that is
   legal as a case item.  Still doesn't work "right" for nested cases
3) Added verilog-re-search-{forward,backward} which are like their
   base versions, except they never match in strings or comments of
   either form; changed most searches to use these.
4) Reworked electric-terminate-line to be faster, and better.
5) Reworked electric-tick to be not zero indent user text macros; just
   the verilog preprocessor symbols.
6) Re worked set-auto-comments to be more efficient (mostly by
   eliminating redundant calls to verilog-calculate indent, an
   expensive function, but also other cleanup).
7) sped up verilog-calculate-indent.
8) sped up verilog-continued-line (used by the above).
9) reorganized and centralized "in-comment" decision code based on
   more complete understanding of parse-partial-sexp.
10) fixed bugs in indent-declaration that caused infinite loops given
   type names in comments (eg reg, wire, input, et al).

ToDo:
1) Handle auto lineup correctly in nested cases.
2) Re think when to do auto line up; (at present, we do it if you ever
   reindent a declaration or case item; and we reindent all the way
   back to the nearest previous non declaration or case statement;
   which is a lose should you have 100 declarations in a row, and you
   type M-C-\ to reindent region.)
3) Support completion of declared wires and registers; again, need to
   cache lookup, as rebuilding every time a user trys to complete is a
   lose.


git-svn-id: file:///verilog-mode-svn/trunk@9 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Changed comment at top of file to say "verilog-mode.el" instead of
"verilog.el", as I want you to call this file verilog-mode.el.


git-svn-id: file:///verilog-mode-svn/trunk@10 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) major change is smart auto-end-comments. (Thanks to
   Nadim.Saeed@amd.com for the suggestion) Basically, much like I was
   doing at every endcase, now at every end, I parse back to find the
   reason for this block.  I.E., if you had:

   while (true) begin
	/* do stuff */
   end

   I insert a comment after the end as follows: /* while (true) */

   This greatly enhances readability of code...

2) cleanup of usage of font-lock on dumb terminals.
3) macromodule added where appropriate.
4) comment indentation cleanups.
5) a ; in a for(i = 1; no longer triggers a newline
6) start of work on a indent-line-relative, which would examine only a
   few lines of code to determine indent level, which would be bound
   to <CR>; allowing quick entry of source. An occasional <TAB> which
   would invoke the expensive ((order N logN) where N is number of
   lines in the module) verilog-indent-line to get indentation
   "perfect".
7) some more work on completion.


git-svn-id: file:///verilog-mode-svn/trunk@11 db5bb42b-8904-0410-88e9-aa7026cf2ec3
missing ).


git-svn-id: file:///verilog-mode-svn/trunk@12 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Made work with Xemacs. provided verilog-mode. small clean up in regexps.


git-svn-id: file:///verilog-mode-svn/trunk@13 db5bb42b-8904-0410-88e9-aa7026cf2ec3
First public release.


git-svn-id: file:///verilog-mode-svn/trunk@14 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) Add correct table..endtable indentation, and end comments for
   primitives.
2) move color setting out of verilog-mode; folks should do this in
   their .emacs
3) set up font lock keywords to work for emacs before 19.30 and after
   19.30
4) Change all auto inserted comments to be of the // flavor, leaving
   the /* */ comments for the user; this lets user comment out blocks
   of code easily.
5) auto comment for end of else block is now much more useful.


git-svn-id: file:///verilog-mode-svn/trunk@15 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) Moved highlight specific initialization out of this mode, and added
   comments telling folks how to use it.
2) Added support for udps.


git-svn-id: file:///verilog-mode-svn/trunk@16 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) Reorganized varaible definitions.
2) added verilog-indent-begin-after-if variable
   (if true (default) indent begin following if/else/while et cetera).
3) added verilog-auto-indent-on-newline variable
   (if true (default) indent new line after user hits ^m).
4) added \M-\r which updates end comment.
5) work on case item auto comments.


git-svn-id: file:///verilog-mode-svn/trunk@17 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) added more special case indent of pre processor directives.
2) avoided overflow in regexp matcher for big case items.
3) made auto indent better for "snippets": incomplete verilog that
   folks like to `include.


git-svn-id: file:///verilog-mode-svn/trunk@18 db5bb42b-8904-0410-88e9-aa7026cf2ec3
1) Major change is the abandonment of case lining up.  It's too error
   prone at present.  The problem is finding the right : (especially
   given : can be in [msb:lsb] expressions on both sides of the "real"  :
2) More font lock stuff; things should work in emacs 19, and Xemacs now.
3) Some more effort to insure verilog snippets indent correctly.


git-svn-id: file:///verilog-mode-svn/trunk@19 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Fixed a bug indenting declarations when they are
not in a module context.


git-svn-id: file:///verilog-mode-svn/trunk@20 db5bb42b-8904-0410-88e9-aa7026cf2ec3
Enhanced comment indenting.


git-svn-id: file:///verilog-mode-svn/trunk@21 db5bb42b-8904-0410-88e9-aa7026cf2ec3