RTL coding中的TAB问题

在RTL coding的时候应该尽量避免TAB的使用。

TAB 的显示

  1. 在 GVim中可以使用命令:
basic
1
:set list

来显示文件中的TAB字符, 如下图所示, tab字符被显示成 ‘ ^I ‘

  1. 如果使用下面命令
1
:set listchars=tab:>-,trail:-

TAB会被显示成 “>—“ 而行尾多余的空白字符显示成 “-“

VIM 中的设置

  1. 设置TAB的显示
basic
1
set tabstop=4

在.gvimrc文件中设置上述的语句表示的是, 一个tab显示为4个空格

  1. 这句话是设置在插入(insert)模式下,按下一个tab键后所产生的空白长度为b
1
set softtabstop=b
  1. 作用是将tab所占的空白位用空格填充
1
set expandtab
  1. 用来设置在编辑模式(vim进入后的默认模式)下使用(>>或<<)缩进代码时所占的空白位的长度
1
set shiftwidth=c

verilog-mode 使用

  1. 使用emac脚本对verilog代码进行缩进
1
2
3
4
5
6
7
8
9
#!/usr/bin/emacs --script

(message "emacs script for verilog-indent")
;;(find-file "xxx/xxx/xxx.v")
(find-file (nth 3 command-line-args))
;; (mark-whole-buffer) ;;emacs script use command 'mark',is meanless
;; (electric-verilog-tab)
(verilog-indent-buffer)
(save-buffer)

使用的命令是:

1
emacs -Q --script ~/elisp/verilog-indent.el  misc/rst_syn.v
  1. verilog-mode.el 使用时候TAB的问题

当GVIM不设置set expandtab时候, 使用autoinst产生的代码中会自动插入TAB;

如果设置了set expandtab, 则不会自动插入TAB