1. 程式人生 > >notepad++的function list功能,解析.h檔案中函式名字

notepad++的function list功能,解析.h檔案中函式名字

notepad++的完全版(不是minimal版)的function list功能很有用,但是對於.h標頭檔案沒有效果。可以通過修改functionList.xml檔案(在notepad++.exe所在目錄下)來達到目的。

  • 根據langs.xml檔案,字尾.h被分配到c++語言中的;
    修改functionList.xml
  • c++langID是3,對應的語法解析是cplusplus_syntax
  • 找到 cplusplus_syntax,找到裡面的<function>(在<classRange>元素裡面和外面各有一個)。它們的mainExpr
    屬性的值大概是諸如"...[\n\s]*\{"之類的字串,即以{字元作為結尾(在正則表示式中要轉義)。如果我們要分析標頭檔案中的函式宣告,那麼把{結尾改成;結尾應該是可行的。所以將mainExpr的改成"...[\n\s]*(\{|;)"
  • 修改後重啟Notepad++程式,發現確實可以起作用。

補充:後來發現如果允許分析head檔案的函式宣告,那麼.cpp檔案中函式呼叫也會被解析到,會造成混亂。大家可以視情況使用。