沒學過VBSript,但為了格式化自己要用的代碼,找來找去沒找到合適的,勉強作了一個。用法:將下面代碼存成一個“.DSM”後綴的文件,用VC6裝載這個宏,打開任一C,C++代碼文件,運行宏,代碼將按系統設置的方式(空格或TAB)得到格式化。由於不懂VBSript,做得不完善,問題是:1:必須把欲格式化的文件在VC等環境下打開,不能按目錄自動檢索該格式化的文件;2:在“{”後有字符時{}裡面的失去縮進;
條件:文件必須可寫。
存在的價值:VC環境是大家信任的環境,絕不會因為它對代碼格式化而使代碼不能編譯。
希望有人不吝技術,把它做好一點。如果有新版,請寄給我一份:[email protected]
Sub FormatByCode()
Dim myDocument
For Each myDocument in Application.Documents
myDocument.Active = True
myDocument.Selection.SelectAll
Dim EndLine, CurrLine
EndLine=myDocument.Selection.BottomLine
myDocument.Selection.StartOfLine
CurrLine=myDocument.Selection.CurrentLine
while ( CurrLine<=EndLine )
myDocument.Selection.SelectLine
myDocument.Selection = LTrim(myDocument.Selection)
CurrLine=myDocument.Selection.CurrentLine
wend
myDocument.Selection.SelectAll
myDocument.Selection.Unindent
myDocument.Selection.Unindent
myDocument.Selection.Unindent
myDocument.Selection.Unindent
myDocument.Selection.Unindent
myDocument.Selection.Unindent
myDocument.Selection.SmartFormat
myDocument.Save
myDocument.Close dsSaveChangesPrompt
Next
End Sub