vlog-mode is a powerful major mode for editing verilog sources in GNU Emacs. (Yes, up to now for GNU Emacs only, because no XEmacs compatibility test is made, though I'm hoping to have it made). It is designed to be a free, open, powerful and fully customizable working environment for those who deal with verilog a lot.
Then why Emacs? Emacs is a powerfull editor available under nearly all OS on all hardwares, esp. on those EDA platforms such as GNU/Linux on x86 or Solaris on Sparc. So the answer is: Emacs is powerful (not "powerful enough" but "cannot be more powerful") and cross-platform (or in geeks' words, Emacs is a platform itself).
Well, then why anothor major mode? verilog-mode is a long-history major mode for verilog, but it's not very open and not good enough for me. So I decided to write a brand-new, more open, more customizable and more powerful one, and then open it to the users' community. Everyone is welcom to make suggestions, send bug reports or feature requests, etc. No single person or organization controls the codes. We will have OUR vlog-mode, not "crazycool's vlog-mode". It belongs to the community, everyone in this community is welcom to make contributions.
(add-to-list 'load-path "~/site-lisp/vlog-mode") (require 'vlog-mode) (add-to-list 'auto-mode-alist '("\\.v\\'" . vlog-mode)) (add-to-list 'auto-mode-alist '("\\.vl\\'" . vlog-mode)) (vlog-mode-enable-v2k) (setq vlog-mode-highlight-all-uppercase-words t) (setq vlog-align-mod-inst-stop-list '(28 52)) (setq vlog-indent-level-beh 2 vlog-indent-level-block 0 vlog-indent-level-block-beh 0 vlog-indent-level-block-inside 2 vlog-indent-level-case-inside 4 vlog-indent-level-case-branch-inside 2 vlog-indent-level-cond 2 vlog-indent-level-default 2 vlog-indent-level-port-list 4) (setq vlog-mode-keywordset-docs (append vlog-mode-keywordset-docs (list "Note:" "NOTE:" "note:"))) (vlog-mode-make-keywords) (setq vlog-skel-header-string "\ //^File Header -----------------------------------------<Powered By Emacs > ) (setq vlog-skel-user-name "Your name" vlog-skel-company-name "GNU")-- // Copyright (C) %< time %Y> %< company> // All rights reserved // --------------------------------------------------------------------------- // $Id$ // FILE NAME : %< filename> // MODULE NAME : %< modulename> // AUTHOR : %< author> // --------------------------------------------------------------------------- // [RELEASE HISTORY] Last Modified : %< time %Y-%m-%d> // VERSION DATE AUTHOR DESCRIPTION // 1.0%< align> %< time %y-%m-%d> %< align> %< author> %< align> Original // --------------------------------------------------------------------------- // [DESCRIPTION] // %< _> // --------------------------------------------------------------------------- // [SUBMODULE LIST] // [ N o n e ] // --------------------------------------------------------------------------- // [PARAMETERS] // PARAM_NAME RANGE DEFAULT DESCRIPTION // ---------- ----- ------- ----------- // [ N o n e ] //$File Header -----------------------------------------< Powered By Emacs > --\n"
Powered by
Last Update: 17 Mar 2007