emacs中怎樣折疊Verilog代碼
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在verilog編寫代碼時(shí),可能模塊列表太長(zhǎng),或者變量定義列表太長(zhǎng),不容易看到代碼的重點(diǎn)。用代碼折疊功能可以大方便的看代碼、編寫代碼的效率。
配置方法
下面是emacs自帶hide/show的配置方法,verilog-mode除了默認(rèn)的module port列表、注釋等折疊規(guī)則,需要再定義幾個(gè)折疊關(guān)鍵詞,比如begin/end、task/endtask等。
;; define verilog hide/show keywords
(setq hs-special-modes-alist
(cons '(verilog-mode "\\\\|\\\\|\\\\|\\\\|\\\\|("
"\\\\|\\\\|\\\\|\\\\|\\\\|)"
nil
verilog-forward-sexp-function)
hs-special-modes-alist))
(add-hook 'verilog-mode-hook 'hs-minor-mode)菜單和快捷鍵
配置好后,當(dāng)打開verilog文件時(shí),就會(huì)出現(xiàn)hideshow菜單,如下。常用的有Hide All、Show All、Toggle Hiding等。

其中,Toggle Hiding最為常用,可以再綁定到全局快捷鍵,比如Windows+`\`。
(global-set-key (kbd "s-\\") 'hs-toggle-hiding) 選中文本的折疊
有時(shí)候只是想折疊指定的幾行,并沒有特定的語法標(biāo)記。
這時(shí)就需要用到另一個(gè)庫(kù)fold-this。從github(https://github.com/magnars/fold-this.el)下載,配置如下。
(add-to-list 'load-path "~/.emacs.d/fold-this.el")
(require 'fold-this)配置好之后,選中一段文字,再執(zhí)行M-x fold-this,就可以看到這段代碼被折疊了。如下:
[[...]]在折疊區(qū)域按C-g或M-x fold-this-unfold-at-point即可以展開。





