source insight 的base工程配置檔案utils.em的修改
<pre name="code" class="cpp"><span style="font-size:18px;">/*
* utils.em
*
* Created on: March 13, 2015
* Author: [email protected]
*/
//szMyName = getenv(MYNAME)
/*
* 1. GetCurrentBuf(): 獲取當前輸入的控制代碼
* 2. GetCurSymbol(): 獲取當前游標後的符號
* 3. GetBufLnCur(): 獲取當前游標所在的行號
* 4. hwnd=GetCurrentWnd(), sel=GetWndSel(hwnd), col=sel.ichFirst+1 : 獲取列號
* 5. InsBufLine(hbuf, ln, sz): 在ln行插入sz的字元內容
* 6. SetBufIns(hbuf, ln, n): 將游標轉移到第ln行的第n在字元
* 7. sz = cat(sz, "abc"): 將abc新增到sz後面
*/
/******************************************************************************/
macro InsertHeader()
{
hbuf = GetCurrentBuf()
ln = GetBufLnCur(hbuf)
if (ln < 0)
{
ln = 0
}
sz = "/******************************************************************************/"
InsBufLine(hbuf, ln, sz)
SetBufIns(hbuf, ln+1, 0)
}
/******************************************************************************/
macro GetCurrentFileName(pathName)
{
name = ""
nlength = strlen(pathName)
i = nlength - 1
while (i + 1)
{
ch = pathName[i]
if ("\\" == "@ [email protected]")
break
i = i - 1
}
i = i + 1
while (i < nlength)
{
name = cat(name, pathName[i])
i = i + 1
}
return name
}
macro MonthNumToName(Month)
{
if (Month == 1)
return "January"
if (Month == 2)
return "February"
if (Month == 3)
return "March"
if (Month == 4)
return "April"
if (Month == 5)
return "May"
if (Month == 6)
return "June"
if (Month == 7)
return "July"
if (Month == 8)
return "August"
if (Month == 9)
return "September"
if (Month == 10)
return "October"
if (Month == 11)
return "November"
if (Month == 12)
return "December"
}
macro GetCurrentTimeAndDate()
{
szTimeDate = ""
szTime = GetSysTime(1)
Hour = szTime.Hour
if (Hour < 10)
Hour = " [email protected]@"
Minute = szTime.Minute
if (Minute < 10)
Minute = "[email protected]@"
Second = szTime.Second
if (Second < 10)
Second = "[email protected]@"
Year = szTime.Year
Month = szTime.Month
Day = szTime.Day
if (Day < 10)
szDay = "[email protected]@"
else
szDay = Day
szMonth = MonthNumToName(Month)
/*
if (Month < 10)
szMonth = " [email protected]@"
else
szMonth = Month
*/
szTimeDate = "@[email protected] @[email protected], @[email protected] @[email protected]:@[email protected]:@[email protected]"
return szTimeDate
}
macro GetMyEmailAddress()
{
szMyEmail = "xtank.nie\@gmail.com"
return szMyEmail
}
/******************************************************************************/
macro InsertFileHeader()
{
ln = 0;
hbuf = GetCurrentBuf()
InsBufLine(hbuf, ln, "/*")
szPathName = GetBufName(hBuf)
szCurrentFileName = GetCurrentFileName(szPathName)
sz = " * @[email protected]"
ln = ln + 1
InsBufLine(hbuf, ln, sz)
ln = ln + 1
InsBufLine(hbuf, ln, " *")
szTimeDate = GetCurrentTimeAndDate()
sz = " * Created on: @[email protected]"
ln = ln + 1
InsBufLine(hbuf, ln, sz)
szEmail = GetMyEmailAddress()
sz = " * Author: @[email protected]"
ln = ln + 1
InsBufLine(hbuf, ln, sz)
ln = ln + 1
InsBufLine(hbuf, ln, " */")
InsBufLine(hbuf, ln + 1, "")
SetBufIns(hbuf, ln+2, 0)
}
macro IfdefSz(sz)
{
hwnd = GetCurrentWnd()
lnFirst = GetWndSelLnFirst(hwnd)
lnLast = GetWndSelLnLast(hwnd)
hbuf = GetCurrentBuf()
InsBufLine(hbuf, lnFirst, "#ifdef @[email protected]")
InsBufLine(hbuf, lnLast+2, "#endif /* @[email protected] */")
}
macro InsertCPlusPlus()
{
//IfdefSz("__cplusplus");
hbuf = GetCurrentBuf()
ln = GetBufLnCur(hbuf)
ln_bak = ln
InsBufLine(hbuf, ln, "#ifdef __cplusplus")
ln = ln + 1
InsBufLine(hbuf, ln, "extern \"C\" {")
ln = ln + 1
InsBufLine(hbuf, ln, "#endif /* __cplusplus */")
ln = ln + 1
InsBufLine(hbuf, ln, "")
ln = ln + 1
InsBufLine(hbuf, ln, "#ifdef __cplusplus")
ln = ln + 1
InsBufLine(hbuf, ln, "}")
ln = ln + 1
InsBufLine(hbuf, ln, "#endif /* __cplusplus */")
SetBufIns(hbuf, ln_bak+3, 0)
}
macro isUpperLetter(letter)
{
if (letter == "A"
|| letter == "B"
|| letter == "C"
|| letter == "D"
|| letter == "E"
|| letter == "F"
|| letter == "G"
|| letter == "H"
|| letter == "I"
|| letter == "J"
|| letter == "K"
|| letter == "L"
|| letter == "M"
|| letter == "N"
|| letter == "O"
|| letter == "P"
|| letter == "Q"
|| letter == "R"
|| letter == "S"
|| letter == "T"
|| letter == "U"
|| letter == "V"
|| letter == "W"
|| letter == "X"
|| letter == "Y"
|| letter == "Z")
return 1
else
return 0
}
macro GetHeadFileDefine()
{
szHeadFileNameDefine = ""
hbuf = GetCurrentBuf()
szPathName = GetBufName(hBuf)
szCurrentFileName = GetCurrentFileName(szPathName)
szCurrentFileName = toupper(szCurrentFileName)
nlength = strlen(szCurrentFileName)
szHeadFileNameDefine = cat(szHeadFileNameDefine, "__")
i = 0
while (i < nlength)
{
ch = szCurrentFileName[i]
if (isUpperLetter("@[email protected]") == 1)
szHeadFileNameDefine = cat(szHeadFileNameDefine, "@[email protected]")
else
szHeadFileNameDefine = cat(szHeadFileNameDefine, "_")
i = i + 1
}
szHeadFileNameDefine = cat(szHeadFileNameDefine, "__")
return szHeadFileNameDefine
}
macro InsertDefineHeadName()
{
//IfdefSz("__cplusplus");
hbuf = GetCurrentBuf()
ln = GetBufLnCur(hbuf)
ln_bak = ln
szHeadFileDefineName = GetHeadFileDefine()
InsBufLine(hbuf, ln, "#ifndef @[email protected]")
ln = ln + 1
InsBufLine(hbuf, ln, "#define @[email protected]")
ln = ln + 1
InsBufLine(hbuf, ln, "")
ln = ln + 1
InsBufLine(hbuf, ln, "#endif /* @[email protected] */")
SetBufIns(hbuf, ln_bak+2, 0)
}
/******************************************************************************/
/******************************************************************************/
// Inserts "Returns True .. or False..." at the current line
macro ReturnTrueOrFalse()
{
hbuf = GetCurrentBuf()
ln = GetBufLineCur(hbuf)
InsBufLine(hbuf, ln, " Returns True if successful or False if errors.")
}
/* Inserts ifdef REVIEW around the selection */
macro IfdefReview()
{
IfdefSz("REVIEW");
}
/* Inserts ifdef BOGUS around the selection */
macro IfdefBogus()
{
IfdefSz("BOGUS");
}
/* Inserts ifdef NEVER around the selection */
macro IfdefNever()
{
IfdefSz("NEVER");
}
// Ask user for ifdef condition and wrap it around current
// selection.
macro InsertIfdef()
{
sz = Ask("Enter ifdef condition:")
if (sz != "")
IfdefSz(sz);
}
// Delete the current line and appends it to the clipboard buffer
macro KillLine()
{
hbufCur = GetCurrentBuf();
lnCur = GetBufLnCur(hbufCur)
hbufClip = GetBufHandle("Clipboard")
AppendBufLine(hbufClip, GetBufLine(hbufCur, lnCur))
DelBufLine(hbufCur, lnCur)
}
// Paste lines killed with KillLine (clipboard is emptied)
macro PasteKillLine()
{
Paste
EmptyBuf(GetBufHandle("Clipboard"))
}
// delete all lines in the buffer
macro EmptyBuf(hbuf)
{
lnMax = GetBufLineCount(hbuf)
while (lnMax > 0)
{
DelBufLine(hbuf, 0)
lnMax = lnMax - 1
}
}
// Ask the user for a symbol name, then jump to its declaration
macro JumpAnywhere()
{
symbol = Ask("What declaration would you like to see?")
JumpToSymbolDef(symbol)
}
// list all siblings of a user specified symbol
// A sibling is any other symbol declared in the same file.
macro OutputSiblingSymbols()
{
symbol = Ask("What symbol would you like to list siblings for?")
hbuf = ListAllSiblings(symbol)
SetCurrentBuf(hbuf)
}
// Given a symbol name, open the file its declared in and
// create a new output buffer listing all of the symbols declared
// in that file. Returns the new buffer handle.
macro ListAllSiblings(symbol)
{
loc = GetSymbolLocation(symbol)
if (loc == "")
{
msg ("@[email protected] not found.")
stop
}
hbufOutput = NewBuf("Results")
hbuf = OpenBuf(loc.file)
if (hbuf == 0)
{
msg ("Can't open file.")
stop
}
isymMax = GetBufSymCount(hbuf)
isym = 0;
while (isym < isymMax)
{
AppendBufLine(hbufOutput, GetBufSymName(hbuf, isym))
isym = isym + 1
}
CloseBuf(hbuf)
return hbufOutput
}
</span>
相關推薦
source insight 的base工程配置檔案utils.em的修改
<pre name="code" class="cpp"><span style="font-size:18px;">/* * utils.em * * Created on: March 13, 2015 * Author: [
Source Insight 設定工程預設儲存路徑
1、執行(win+R)—regedit回車,找到登錄檔HKEY_CURRENT_USER\Software\Source Dynamics\Source Insight\3.0\Paths 2、右
Gradle的工程配置檔案說明
build.gradle檔案 /** * 執行的環境是java語言 */ plugins { id 'java' } /** * GroupID 是專案組織唯一的識別符號,實際對應JAVA的包的結構,是main目錄裡java的目錄結構。 * ArtifactID
KEIL5與Source Insight同一個工程在Source Insight中亂碼的解決方法
來源不僅僅是一個原始碼檢視的好工具,同時也是程式設計的好工具。 出現註釋亂碼的解決辦法 在SI中“FILE”-->"Reload as Ecording"--->選擇與你
myeclipse2016匯入maven工程配置檔案提示dubbo報錯解決
問題 新機器安裝了開發環境,匯入工程後提示報錯。沒有標準手冊,大家也是各自用各自工具不統一。 環境問題最折騰人了,關鍵是大家都很忙,沒人顧的上你,所以還得自己解決。小小記錄一下。 在匯入maven工程的時候,報出如下錯誤: cvc-complex-type
Source Insight 4.0 配置中文顯示
單獨檔案配置中文顯示:導航中的File->Reload As Encoding 選擇 Chinese Simplified(GB18030); 全域性檔案配置中文顯示:1.關閉所有檔案
解決Source Insight拷貝工程時出現的“Warning:XXXXXX does not exist and cannot be opened”問題
用Source Insight開啟經常會提示出Warning:XXXXXX does not exist and cannot be opened的問題,後來才發現是工程路徑的問題:開啟工程目錄下的Source Insight,在提示各種錯誤之後按如下操作:1.選單欄Proj
source insight開啟工程掛掉問題和徹底刪除source insigh的解決辦法
一、source insight開啟工程掛掉問題一般是因為工程路徑存在中文,把路徑修改成沒有中文就行了。 二、但是那些以前一開啟就使source insigh掛掉的工程還是存在的, 1、有個比較好的方法是徹底刪除調source insigh重新安裝。 當你重新安裝後會發
Maven父子工程配置檔案詳解
專案骨架搭建成功之後。 因為父工程管理子工程。子工程相當於繼承於子工程,所以子工程可以呼叫父工程裡面的東西。那麼就可以將jar包對應的配置檔案書寫到父工程的pom.xml檔案中,注意:父工程的打包方式為pom。程式碼如下:(如果另有需要可以自己新增所需jar包)。 <
解決maven工程配置檔案不拷貝的問題
maven工程下,對於java檔案包,工程只拷貝編譯.java的檔案,而並不拷貝xml配置檔案,配置檔案只有放在resource包下才會拷貝。而當我們使用mybatis逆向工程生成了mapper檔案和它的配置檔案是放在一起的,所以我們如果不想再把配置檔案單獨放在resourc
記一次大坑:SpringBoot+Mybatis專案中,配置檔案中的修改了SQL語句後不生效
問題:原是SSM框架專案,轉移到SpringBoot+Mybatis,使用的是C3P0連線資料庫。轉移到SpringBoot後的專案,我修改了xml配置檔案中的查詢sql語句,也就是增加了一個查詢欄位,無論是在前端頁面測試,還是使用單元測試時候,我修改後的SQL就是不生效,查
Linux驅動配置檔案選項的修改
在Linux 的目錄 /linux-3.14.38 下,執行 Terminal 然後執行 make menuconfig 即可使用圖形化的 驅動配置工具 進行 配置 選擇需要或不需要的驅動檔案 1.去掉藍芽 將所有的 CONFIG_BT 開頭的配置選項註釋 2.觸控式螢幕
Source Insight工程精準匯入用到的Linux核心檔案
下載指令碼檔案:PF_Prj_Gen.sh /*這個指令碼的作用應該是對原始檔進行篩選,挑出編譯出了對應的.o檔案的檔案,然後把這些檔案生成列表,在source insight中新增進去,這種方法瀏覽程式碼很好,過濾掉了沒有用到的一大堆檔案 習慣在ubuntu上面用命令列搜尋,因為比較快,往
建立source insight (.PR檔案)工程
建立一個source insight 工程 啟動source insight之後,預設支援的檔案型別中沒有.S彙編檔案 單擊Options -> Document Options ,在File filter選項中新增*.S檔案型別 Project –> n
source insight 配置檔案(超好)
下載地址:http://www.rayfile.com/zh-cn/files/fc8b2fdc-ce9b-11df-bc91-0015c55db73d/ 0. 此為C/C++的SourceInsight配置檔案,其他語言的為預設。(字型顏色在其他程式語言有效) 1.
Source Insight工程檔案預設目錄設定
1.啟動登錄檔編輯工具regedit,找到HKEY_CURRENT_USER\Software\Source Dynamics\Source Insight\3.0\Paths 2.點選滑鼠右鍵選擇新建一個字串值,變數名為“UserDataDir”。該值所對應的值即為工程檔
source insight 配置檔案(超好) --轉載
http://zhuang0393.blog.163.com/blog/static/9285104201093111912636/ 0. 此為C/C++的SourceInsight配置檔案,其他語言的為預設。(字型顏色在其他程式語言有效) 1. 主要就是給那些習慣於
source Insight 添加python 工程
AR lan master 設置 https 分享圖片 tar nbsp net 1. 下載python的識別文件 Python.CLF 2.設置 source Insight 添加python 工程
Tomcat利用配置檔案複寫web工程目錄
1. 在%tomcat_home%/conf/catalina/localhost/建立web工程xml 如webcontent.xml,內容如下 <content path="webcontent" docBase="D:\\Documents\\javaProject\\w
web工程讀取自定義xml配置檔案的方法
以前都是在c++中我都是習慣用ini配置檔案,接觸webx框架後,一般都是用得配置好的xml檔案,偷懶結果就是把自己給坑了。在需要自定義配置檔案的之後踩到了坑,特此記錄下。 此處我想讀取