Fortran添加多行注释

原文地址:http://blog.sina.com.cn/s/blog_4d3905b40100b3vq.html

做法:

  1. 在..Microsoft VisualStudioCommonMSDEV98MACROS文件夹下生成文件GrpComment.dsm
  2. 用文本编辑器打开该文件,将以下所附的代码贴在其中,保存(注意保留.dsm后缀)
  3. 启动CVF,选Tools=>Customize=>Add-insand Macro Files
  4. 在GrpComment前打勾,去掉其他的勾
  5. 在同一对话框中选Commands=>Macros,此时在右边可以看见CommentDel和CommentOut
  6. 选中CommentOut,拖到CVF的工具栏上去(添加工具钮),会弹出Button Appearance对话框
  7. 选Image and text,在下边Buttontext框中输入名称(默认是CommentOut),如“加注释”
  8. 类似的方法再将CommentDel命令以工具钮的形式添加到工具栏上,名称可取为“去注释”

这时,工具栏上应该多了两个工具钮:“加注释”和“去注释”。

用法:

  • 加注释:选择要加注释的多行代码,点击“加注释”按钮即可;
  • 去注释:选择已经注释的多行代码,点击“去注释”按钮即可。

适用:

后缀为f90或f77的代码文件,根据编译器默认的文件后缀不同,自行修改(f90为.f90,f77为.f)。

VBscript代码:

“`VB

Function FileType (ByVal doc)
ext= doc.Name
FileType= 0
pos= Instr(ext, ".")
ifpos > 0 then
    DoWhile pos <> 1
        ext= Mid(ext, pos, Len(ext) - pos + 1)
        pos= Instr(ext, ".")
    Loop
    ext= LCase(ext)
endif
Ifext = ".f90" Then
    FileType= 8
ElseIfext = ".f" Then
    FileType= 9
Else
    FileType= 0
EndIf
End Function


Sub CommentOut ()
'DESCRIPTION: 为所选的多行代码加注释
Dimwin
setwin = ActiveWindow
ifwin.type <> "Text" Then
  MsgBox"This macro can only be run when a text editor window isactive."
else
    TypeOfFile=FileType(ActiveDocument)  
    IfTypeOfFile = 8 Or TypeOfFile = 9 Then

        IfTypeOfFile = 8 Then
            CommentType= "! "  ' Fortran 90 file
        Else
            CommentType= "C "  ' Fortran 77 file
        EndIf

        StartLine= ActiveDocument.Selection.TopLine
        EndLine= ActiveDocument.Selection.BottomLine
        IfEndLine < StartLine Then
            Temp= StartLine
            StartLine= EndLine
            EndLine= Temp
        EndIf

        IfEndLine = StartLine Then
            ActiveDocument.Selection.SelectLine
            ActiveDocument.Selection= CommentType + ActiveDocument.Selection

        Else
            Fori = StartLine To EndLine
                ActiveDocument.Selection.GoToLinei
                ActiveDocument.Selection.SelectLine
                ActiveDocument.Selection= CommentType + _
                    ActiveDocument.Selection
            Next
        EndIf
    else
        MsgBox("Unableto comment out the highlighted text" + vbLf + _
                "becausethe file type was unrecognized." + vbLf + _
                "Ifthe file has not yet been saved, " + vbLf + _
                "pleasesave it and try again.")
    EndIf
EndIf
End Sub


Sub CommentDel ()
'DESCRIPTION: 去除所选的多行代码的注释
Dimwin
setwin = ActiveWindow
ifwin.type <> "Text" Then
    MsgBox"This macro can only be run when a text editor window isactive."
else
    TypeOfFile=FileType(ActiveDocument)  
    IfTypeOfFile = 8 Or TypeOfFile = 9 Then

        StartLine= ActiveDocument.Selection.TopLine
        EndLine= ActiveDocument.Selection.BottomLine
        IfEndLine < StartLine Then
            Temp= StartLine
            StartLine= EndLine
            EndLine= Temp
        EndIf

        IfEndLine = StartLine Then
            ActiveDocument.Selection.SelectLine
            ActiveDocument.Selection= mid(ActiveDocument.Selection, 3)
        Else
            Fori = StartLine To EndLine
                ActiveDocument.Selection.GoToLinei
                ActiveDocument.Selection.SelectLine
                ActiveDocument.Selection= mid(ActiveDocument.Selection, 3)
            Next
        EndIf
    else
        MsgBox("Unableto comment out the highlighted text" + vbLf + _
                "becausethe file type was unrecognized." + vbLf + _
                "Ifthe file has not yet been saved, " + vbLf + _
                "pleasesave it and try again.")
    EndIf
EndIf
End Sub
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值