출처 : http://nving.tistory.com/66
출처 : http://ko.w3support.net/index.php?db=so&id=82971
매크로 에디트에 가서 MyMacros 에
EnvironmentsEvents에 아래와 같이 추가한다.
MakeUTF8File 함수는 파일이 저장된후 utf8검사해서 인코딩 변경해서 저장을 다시한다.
DelWhiteSpaceEndOfLine 함수는 파일의 각 라인 끝에 white space 제거한다.
Imports System.IO
Sub MakeUTF8File(ByVal path As String)
Dim input As New FileStream(path, FileMode.Open)
'Check BOM
Dim isUTF8 As Boolean = (input.ReadByte = &HEF And input.ReadByte = &HBB And input.ReadByte = &HBF)
input.Close()
If (Not isUTF8) Then
Dim s As String
s = File.ReadAllText(path, System.Text.Encoding.Default)
File.WriteAllText(path, s, System.Text.Encoding.UTF8)
End If
End Sub
Sub DelWhiteSpaceEndOfLine(ByVal Document As EnvDTE.Document)
Dim result As vsFindResult
'Dim nameresult As String
Try
Document.Activate()
' Remove all the trailing whitespaces.
result = DTE.Find.FindReplace(vsFindAction.vsFindActionReplaceAll, _
":Zs+$", _
vsFindOptions.vsFindOptionsRegularExpression, _
String.Empty, _
vsFindTarget.vsFindTargetCurrentDocument, , , _
vsFindResultsLocation.vsFindResultsNone)
'nameresult = document.Name & " " & Str$(result)
'MsgBox(nameresult, , "Filename and result")
If result = vsFindResult.vsFindResultReplaced Then
'MsgBox("Document Saved", MsgBoxStyle.OkOnly, "Saved Macro")
Document.Save()
Else
'MsgBox("Document Not Saved", MsgBoxStyle.OkOnly, "Saved Macro")
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Trim White Space exception")
End Try
End Sub
Public Sub DocumentEvents_DocumentSaved(ByVal Document As EnvDTE.Document) Handles DocumentEvents.DocumentSaved
DelWhiteSpaceEndOfLine(Document)
Dim path As String = Document.FullName
MakeUTF8File(path)
End Sub
'프로그래밍' 카테고리의 다른 글
GIT DiffMerge 설정. (0) | 2011.11.05 |
---|---|
GIT 명령어 요약.. (0) | 2011.10.26 |
Python 에서 xml 사용하기. element tree 를 사용.. (0) | 2011.08.19 |
Python 삼항연산자 사용방법.. (0) | 2011.08.18 |
Replacement new 메모리 할당 없이 생성자 호출하기.. (0) | 2011.07.26 |
댓글