亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sample.dsm

?? vc6.0完整版
?? DSM
?? 第 1 頁 / 共 2 頁
字號:
'------------------------------------------------------------------------------
'FILE DESCRIPTION: SAMPLE.DSM is a collection of sample editor macros.
'------------------------------------------------------------------------------

'This routine has many uses if you are trying to determine the type of source 
'	file.
'Return value:  0 Unknown file type
'               1 C-related file, this includes .c, .cpp, .cxx, .h, .hpp, .hxx
'               2 Java-related file, this includes .jav, .java
'               3 ODL-style file, .odl, .idl
'               4 Resource file, .rc, .rc2
'               5 HTML-style file, this includes .html, and .htm
'               6 VBS-style file, .dsm
'               7 Def-style file, .def
'USE: Pass this function the document that you wish to get information for.
Function FileType (ByVal doc)
	ext = doc.Name
	FileType = 0
	pos = Instr(ext, ".")
	if pos > 0 then
		Do While pos <> 1
			ext = Mid(ext, pos, Len(ext) - pos + 1)
			pos = Instr(ext, ".")
		Loop
		ext = LCase(ext)
	end if
	If ext = ".rc" Or ext = ".rc2" Then
		FileType = 4
	ElseIf doc.Language = dsCPP Then
		FileType = 1
	ElseIf doc.Language = dsJava Then
		FileType = 2
	ElseIf doc.Language = dsIDL Then
		FileType = 3
	ElseIf doc.Language = dsHTML_IE3 Or doc.Language = dsHTML_RFC1866 Then
		FileType = 5  
	ElseIf doc.Language = dsVBSMacro Then ' 
		FileType = 6  
	ElseIf ext = ".def" Then
		FileType = 7
	Else 
		FileType = 0
	End If 
End Function


'This routine has many uses if you are trying to determine if an identifier
'  is a valid C identifier.
'  These identifiers do not include qualification syntax, for example:
'  foo.bar is not valid
'  foo is valid
'Parameters:    String to test for a valid C identifier.
'Return value:  True: passed parameter is a valid C identifier.
'               False: passed parameter is not a valid C identifier.
Function ValidId(Id)
	ValidId = True

	'Don't permit an empty string
	' (how can you identify nothing with something?)
	if Id = "" then 
	  ValidID = False
	  Exit Function
	End If

	For i = 1 To Len(Id)
	  if Mid(Id, i, 1) < "a" Or Mid(Id, i, 1) > "z" Then
		if Mid(Id, i, 1) < "A" Or Mid(Id, i, 1) > "Z" Then
			if Mid(Id, i, 1) < "0" Or Mid(Id, i, 1) > "9" Then
				if Mid(Id, i, 1) <> "_" Then
					ValidId = False
				End if
			End If
		End If	
	  End If
	Next
	If IsNumeric(Left(Id, 1)) = True Then
		ValidId = False
	End If
End Function


Dim ParamArr ()  ' Dynamic array to store function arguments.

Sub AddFunctionDescription ( )
'DESCRIPTION: Creates a comment block for the currently selected C/C++ function prototype

	'Throughout this file, ActiveDocument.Selection is used in place 
	'of ActiveDocument.Selection.Text.  The two are equivalent, and can 
	'be used interchangeably. The reason for the equivalence is that
	'Text is regarded as the default property to use. All uses of
	'ActiveDocument.Selection without any other property default to the Text
	'property.
	if ActiveDocument.Language = dsCPP Then
		Header = StripTabs(Trim(ActiveDocument.Selection))

		'Get the function return type.
		if Header <> "" then
			Reti = InStr(Header, " ")
			Loc = InStr(Header, "(")
			if Reti < Loc Then
			  RetTp = Left(Header, Reti)
			  Header = Right(Header, Len(Header) - Reti)
			End If

			'Get the function name.
			Loc = InStr(Header, "(") - 1
			Loc2 = InStr(Header, ")")
			if Loc > 0 And Loc2 > 0 then 'make sure there is a '(' and a ')'
				fcName = Left(Header, Loc)
				Header = Right(Header, Len(Header) - Len(fcName))

				'Do we have storage type on the return type?
				Trim (fcName)
				If InStr(fcName," ") <> 0 Then
					retTp = retTp + Left(fcName,InStr (fcName," "))
					fcName = Right(fcName, Len(fcName) - InStr(fcName," "))
				End If

				'Get the function parameters.
				iPrm = 0
				iPrmA = 0
				prms = Header 

				'Count the number of parameters. 
				Do While InStr(prms, ",") <> 0
					iPrm = iPrm + 1
					prms = Right(prms, Len(prms) - InStr(prms, ",")) 
				Loop 
				
				'Store the parameter list in the array.
				If iPrm > 0 Then  ' If multiple params.
					iPrm = iPrm + 1
					iPrmA = iPrm
					Redim ParamArr(iPrm)
					Do While InStr(header, ",") <> 0
						ParamArr(iPrm) = Left(Header, InStr (Header, ",") - 1)
						'Remove brace from first parameter.
						If InStr(ParamArr(iPrm), " (") <> 0 Then
							ParamArr(iPrm) = Right(ParamArr(iPrm), _
									Len(ParamArr(iPrm))-InStr(ParamArr(iPrm)," ("))
							Trim(ParamArr(iPrm))
						End If
						Header = Right(Header, Len(Header) - InStr(Header,","))
						iPrm = iPrm - 1 
						Loop 
					ParamArr(iPrm) = Header 
					'Remove trailing brace from last parameter.
					If InStr(ParamArr(iPrm), ")") <> 0 Then
						ParamArr(iPrm) = Left(ParamArr(iPrm), _
								InStr(ParamArr(iPrm), ")") - 1)
						Trim(ParamArr(iPrm))
					End If
				Else 'Possibly one param.
					Redim ParamArr(1)
					Header = Right(Header, Len(Header) - 1) ' Strip the first brace.
					Trim(Header)
					ParamArr(1) = StripTabs(Header)
					If InStr(ParamArr(1), ")") <> 1 Then
						ParamArr(1) = Left(ParamArr(1), InStr(ParamArr(1), ")") - 1)
						Trim(ParamArr(1))
						iPrmA = 1
					End If
				End If

				'Position the cursor one line above the selected text.
				ActiveDocument.Selection.LineUp
				ActiveDocument.Selection.LineDown
				ActiveDocument.Selection.StartOfLine
				ActiveDocument.Selection = vbLf

				Descr = "// Function name	: " + fcName + _
						vbLf + "// Description	    : " + _ 
						vbLf +  "// Return type		: " + RetTp + vbLf
				
				'Print the parameter list. 
				Last = iPrmA
				Do While iPrmA <> 0
					'Remove a line feed from any of the arguments.
					If InStr(ParamArr(iPrmA), vbLf) <> 0 Then
						ParamArr(iPrmA) = Right(ParamArr(iPrmA), _
								(Len(ParamArr(iPrmA)) - _
								InStr(ParamArr(iPrmA), vbLf)))
						Trim(ParamArr(iPrmA))
					End If
					ParamArr(iPrmA) = StripTabs(ParamArr(iPrmA))
					'If there are 2+ parameters, the first parameter will 
					'have a '(' prepended to it, remove it here:
					if iPrmA = Last AND Last <> 1 then
					  ParamArr(iPrmA) = Right(ParamArr(iPrmA), _
							Len(ParamArr(iPrmA)) - 1)
					End If
					Descr = Descr + "// Argument         : " + _
							ParamArr(iPrmA) + vbLf
					iPrmA = iPrmA - 1
				Loop
				ActiveDocument.Selection = Descr
			Else
				MsgBox("It is possible that the function you are trying to"+_
						" work with has a syntax error.")
			End if
		End If
	Else
		MsgBox("You need to have an active C/C++ document open"+ _
				vbLF+"with the function prototype selected.")
	End If
End Sub

'Strips the leading tab spaces. 
Function StripTabs (ByVal MyStr)
	Do While InStr(MyStr, vbTab) <> 0
		MyStr = Right(MyStr, Len(MyStr) - InStr(MyStr, vbTab)) 
	Loop 
	StripTabs = Trim(MyStr)
End Function

Sub ToggleCommentStyle ( )
'DESCRIPTION: Toggles between comment styles /* and //.

	TmpBlock = ""
	CmtBlock = ActiveDocument.Selection
	TypeOfFile = FileType(ActiveDocument)
	If TypeOfFile > 0 And TypeOfFile < 5 Then   'C/C++ style comment.
		'Get the first two characters of the comment block.
		Trim(CmtBlock)
		If Instr(CmtBlock,"//") <> 0 Then 
			Do While Instr (CmtBlock,"//") <> 0
				TmpBlock = TmpBlock + Left (CmtBlock, Instr (CmtBlock,"//") - 1)
				CmtBlock = Right(CmtBlock, (Len(CmtBlock) - (Instr(CmtBlock,_
						"//") + 1)))
			Loop
			CmtBlock = "/*" + TmpBlock + CmtBlock + "*/"
		ElseIf Instr(CmtBlock, "/*") <> 0 Then 
			CmtBlock = Right(CmtBlock, Len(CmtBlock) - (Instr(CmtBlock,"/*")_
					+ 1))
			Do While Instr (CmtBlock, vbLf) <> 0
				TmpBlock = TmpBlock + Left (CmtBlock, Instr(CmtBlock, vbLf))_
						+ "//"
				CmtBlock = Right(CmtBlock, (Len(CmtBlock) - (Instr(CmtBlock,_
						vbLf))))
			Loop
			CmtBlock = "//" + TmpBlock + Trim(CmtBlock)
			CmtBlock = Left(CmtBlock, Instr(CmtBlock,"*/")-1)
		End If
		ActiveDocument.Selection.Delete
		ActiveDocument.Selection = CmtBlock
	Else
		MsgBox "This macro does not work on this type of file."
	End If
	
End Sub



Sub AddRevisionMarks ( )
'DESCRIPTION: Adds comments to a file that describe the changes made.

	'This routine adds a new comment block to the top of a file, where the 
	' programmer can place revision marks to describe the changes made to the file.
	'The rules this routine uses are as follows:
	' 1) Start at the top of the file.
	' 2) Scan through each line; if the current line starts with a comment,
	'      advance to the next line..
	' 3) If we are currently in a group comment block, keep advancing until
	'     the end of the block is found.
	' 4) If we are in a line item comment (e.g.: //, ', rem, etc), keep advancing
	'     until a line that does not start with a comment is found.
	'     By 'start with a comment', it is meant a line, where after
	'     stripping off spaces and tabs from the beginning, the first set of
	'     characters is not a comment delimiter.
	' 5) Insert a blank line; this allows the next invocation of this macro
	'     to place the newer revision mark before all others.
	' 6) Insert the revision block.

	'Change this to the programmer's name for a default.
	DefaultUserName = "..."

	'Because the user may not have closed a comment (e.g. a /* without a */),
	' try to protect ourselves from an infinite loop...
	BreakAfter = 10 'Max number of lines to look at scan before aborting
	CurrentCount = 1

	BeginComment = "" 'The token for the specified language for the beginning
						' of a comment.
	EndComment = ""   'Same, except for the end of a comment.
	EveryLine = ""    'Does the comment mark need to be placed on every line
						' (VBS, DEF types)?

	'First, make sure the active document is a text window
	' (Not really necessary, but good practice).
	If ActiveDocument.Type = "Text" Then
		TypeOfFile = FileType(ActiveDocument)
    
		'Set ourselves at the very top of the document.
		'This also clears any selection made.
		ActiveDocument.Selection.StartOfDocument
		ActiveDocument.Selection.SelectLine
		CurrText = ActiveDocument.Selection
		CurrText = LTrim(CurrText)
    
		'All of the following do relatively the same thing, 
		' except they look for different comment types.
		If TypeOfFile > 0 And TypeOfFile < 5 Then       'C/C++ family of code
			ContSearch = True
			BeginComment = "/*"
			EndComment = "*/"
			EveryLine = " "

			'In C/C++ style code, we need to look for a //;
			'  if not found, then look for a /*.
			Do
				ActiveDocument.Selection = CurrText
				If InStr(CurrText, "//") = 1 Then   'is a "//" available?
					ActiveDocument.Selection.SelectLine
					CurrText = LTrim(ActiveDocument.Selection) 'Remove whitespace.
					ContSearch = False   ' Looking at // style comments, 
											'don't look for a /* style.
				Else
					Exit Do
				End If
			Loop

			If ContSearch = False Then
				ActiveDocument.Selection.LineUp
			End If

			'When the method ActiveDocument.Selection.SelectLine is called,
			'  it is the same as when you click the mouse in the margin; it
			'  selects the whole line, including the carriage return.
			'  Because of this, the cursor comes down to the next line, which
			'  can really confuse this algorithm. So in a number of places, 
			'  you will see a grouping of LineUp/LineDown commands. By executing
			'  these commands, the cursor is moved down, which clears the current
			'  selection (including getting us past the carriage return),
			'  then moves us back up, thus putting us on the same line. This
			'  removesthe danger of skipping a line (which is what will
			'  happen without the LineUp/LineDown combination).
			If ContSearch = True Then
				ActiveDocument.Selection.StartOfDocument
				'Prime the loop with the first line.
				ActiveDocument.Selection.SelectLine
				CurrText = ActiveDocument.Selection           
				ActiveDocument.Selection.LineDown
				ActiveDocument.Selection.LineUp
				'Remove leading whitespace.
				CurrText = LTrim(CurrText)      
				'Does line start with a /*?              
				If InStr(CurrText,"/*") = 1 Then
					while (InStr(CurrText, "*/") = 0) And _
					      (BreakAfter > CurrentCount)
						ActiveDocument.Selection.SelectLine
						CurrText = ActiveDocument.Selection
						CurrText = LTrim(CurrText)                              
						ActiveDocument.Selection.LineDown
						ActiveDocument.Selection.LineUp    
						CurrentCount = CurrentCount + 1
					wend
					If (BreakAfter > CurrentCount) Then
						'Exit the loop because the search has gone on for an 
						'  unreasonable number of lines.
						MsgBox "Could not find a closing comment mark"
					End If
				End If
			End If

		'The code for these is really just a copy of that from the 
		'  C/C++ section...
		  
		ElseIf TypeOfFile = 5 Then                      'HTML code
			BeginComment = "<!--"
			EndComment = "-->"
			EveryLine = "    "
			If InStr(CurrText,"<!--") = 1 Then
				If InStr(CurrText,"-->") <> 0 Then
					ActiveDocument.Selection.LineDown
				Else
					Do
						ActiveDocument.Selection.SelectLine
						CurrText = ActiveDocument.Selection
						CurrText = Left(CurrText, Len(CurrText) - 2)
						ActiveDocument.Selection = CurrText + vbLf
						If InStr(CurrText, "-->") Then
							Exit Do
						End If
					Loop

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
高清在线成人网| 婷婷亚洲久悠悠色悠在线播放| 久久99精品国产麻豆不卡| 欧美一区二区久久久| 免费成人av在线| 26uuu国产一区二区三区| 国产一区二区在线看| 亚洲国产精品99久久久久久久久| 成人激情小说乱人伦| 亚洲欧美一区二区三区极速播放 | 91精品国产综合久久久久| 免费在线欧美视频| 精品国产伦一区二区三区免费 | 91精品国模一区二区三区| 久久99国产精品久久| 久久精品一区二区三区不卡| 成人av在线一区二区| 五月天精品一区二区三区| 久久综合久久综合久久综合| 成人午夜大片免费观看| 一区二区三区美女视频| 欧美精品在线一区二区三区| 国产传媒欧美日韩成人| 亚洲黄色av一区| 欧美成人官网二区| caoporen国产精品视频| 视频一区免费在线观看| 国产欧美日韩三级| 欧美日韩国产片| 成人在线视频一区| 亚洲不卡一区二区三区| 欧美激情在线一区二区| 91精品啪在线观看国产60岁| 成人午夜免费电影| 丝袜国产日韩另类美女| 国产精品久久久久久久久免费樱桃| 欧美亚洲动漫精品| 国产成人av一区二区三区在线观看| 亚洲国产精品自拍| 国产精品家庭影院| 日韩美女一区二区三区四区| 色www精品视频在线观看| 国产成人综合自拍| 美女mm1313爽爽久久久蜜臀| 日韩理论电影院| 久久综合九色综合欧美98| 在线日韩av片| 成人免费福利片| 极品少妇xxxx精品少妇偷拍| 石原莉奈在线亚洲三区| 一区二区在线观看视频在线观看| 国产亚洲精品中文字幕| 日韩女优制服丝袜电影| 欧美三级乱人伦电影| av电影在线观看一区| 国产九色sp调教91| 久久成人av少妇免费| 午夜av区久久| 亚洲精品高清在线| 亚洲婷婷综合久久一本伊一区 | 99综合影院在线| 国产自产2019最新不卡| 久88久久88久久久| 奇米亚洲午夜久久精品| 午夜精品123| 无码av免费一区二区三区试看| 亚洲人成亚洲人成在线观看图片| 欧美高清一级片在线观看| www国产精品av| 欧美videos中文字幕| 欧美va亚洲va香蕉在线| 精品国产髙清在线看国产毛片| 日韩一级高清毛片| 日韩一区国产二区欧美三区| 欧美嫩在线观看| 欧美日韩国产一级| 7878成人国产在线观看| 91麻豆精品国产91久久久| 欧美老年两性高潮| 日韩一区二区三区电影| 日韩精品一区二区三区视频播放| 欧美一级日韩一级| 久久只精品国产| 国产亚洲一区二区三区四区 | 国产精品66部| 国产精品白丝av| 国产成人一区在线| 成人黄色免费短视频| 91丨porny丨蝌蚪视频| 在线视频一区二区免费| 色天天综合色天天久久| 欧美日韩一区久久| 欧美日本乱大交xxxxx| 91精品国产免费| 精品国产一区a| 国产精品丝袜久久久久久app| 国产精品色眯眯| 亚洲午夜激情av| 精品在线播放免费| 99久久国产综合色|国产精品| 欧美性三三影院| 精品欧美久久久| 中文字幕一区免费在线观看| 亚洲一区二区在线免费看| 日本免费新一区视频| 粉嫩13p一区二区三区| 欧美主播一区二区三区美女| 日韩欧美国产不卡| 亚洲国产高清在线| 午夜精品久久久| 国产黄色成人av| 精品视频一区三区九区| 久久综合九色欧美综合狠狠| 成人免费一区二区三区在线观看 | www国产成人免费观看视频 深夜成人网| 久久久久久久免费视频了| 国产精品天美传媒| 日本v片在线高清不卡在线观看| 国产福利一区在线观看| 欧美日韩精品福利| 国产精品萝li| 美女视频黄 久久| 99久久国产综合色|国产精品| 日韩一区二区在线观看视频| 亚洲同性gay激情无套| 韩国v欧美v日本v亚洲v| 欧美三区在线视频| 亚洲国产精品精华液2区45| 亚洲国产成人tv| aaa欧美日韩| 久久久亚洲精品一区二区三区| 亚洲高清在线精品| 成人不卡免费av| 精品国产网站在线观看| 五月婷婷激情综合网| 91在线精品一区二区| 久久美女高清视频| 日韩**一区毛片| 色综合久久中文综合久久牛| 久久精品日产第一区二区三区高清版| 丝瓜av网站精品一区二区| 一本一道综合狠狠老| 中文字幕国产一区二区| 激情文学综合网| 日韩网站在线看片你懂的| 午夜精品久久一牛影视| 色呦呦网站一区| 中文字幕一区二区三区在线观看| 国产精品18久久久久| 欧美成人一区二区三区片免费 | 在线免费观看成人短视频| 国产精品护士白丝一区av| 国产综合色视频| 欧美一级精品在线| 日本欧美肥老太交大片| 538prom精品视频线放| 亚洲国产成人av网| 欧美在线影院一区二区| 亚洲综合丁香婷婷六月香| 99视频在线精品| 亚洲天堂中文字幕| 99精品热视频| 亚洲色图在线看| 欧洲一区二区三区在线| 亚洲制服丝袜一区| 欧美日韩精品综合在线| 亚洲福利电影网| 欧美精品1区2区| 日韩高清一区在线| 欧美tk—视频vk| 国产一区二区按摩在线观看| 国产午夜精品福利| 成人免费视频一区| 国产精品卡一卡二卡三| 91香蕉国产在线观看软件| 亚洲黄色片在线观看| 欧美高清hd18日本| 美国欧美日韩国产在线播放| 精品福利一区二区三区免费视频| 韩国午夜理伦三级不卡影院| 国产日产欧产精品推荐色| 99re在线视频这里只有精品| 一区二区三区视频在线观看| 欧美日韩亚洲综合在线| 日韩av一区二区在线影视| 久久久久综合网| 99久久婷婷国产精品综合| 亚洲资源中文字幕| 欧美日韩成人激情| 久草中文综合在线| 中文字幕电影一区| 欧美专区日韩专区| 国产真实乱子伦精品视频| 中文字幕综合网| 欧美一三区三区四区免费在线看 | 日韩综合小视频| 26uuu久久天堂性欧美| 91在线国内视频| 蜜桃av一区二区| 亚洲三级在线免费|