25 Years of Programming
An open source source for C, C++, OWL, BASIC, MDB, XLS, DOT, and more...
Home   Projects   Up   Sitemap   Search   Blog   Forum+Chat   About Us   Privacy   Terms of Use   Feedback   FAQ   Images   Services   Payments   Humor   Music

Microsoft Word 6.0 WordBasic macros to remove or modify control codes embedded in files

Old archived disk files sometimes contain embedded control characters such as printer control codes.

These macros allow you to manipulate embedded control codes: remove them, make them visible, convert them to printable characters, or embed new ones.

You can easily customize the macros to specify how each control code is transformed. 

If your file has embedded backspace characters (ASCII 008, ^H), run the backspace removal macro first because in addition to removing the backspace characters themselves, it removes the characters that the backspaces backspaced over.

In the code below the control characters are referred to by their ASCII codes using a 4-digit format peculiar to Word. For example, "^0013" refers to an ASCII carriage return (<CR>), which is ASCII code 13 (decimal) or 0D (hexadecimal), which is the same as Ctrl+M, which long ago used to be written as ^M.

It will help if you have a table of ASCII codes to use for reference.

There are versions of these macros for Word 2003 Visual Basic.

CTLCharsStrip - remove control codes from a file or selection

Removes (most) control chars from a file or selection.

Sub MAIN
REM 11-26-99
REM Copyright (C)1999 Steven Whitney.
REM Initially published by http://25yearsofprogramming.com.
REM Published under GNU GPL (General Public License) Version 3, with ABSOLUTELY NO WARRANTY.
REM Strips control chars from file or selection.
REM ----------------------------------------------------------------------------
If MsgBox("This removes (most) control codes from the file or selection.  Continue?", 36) <> - 1 Then Goto bye
REM ----------------------------------------------------------------------------
REM IF NO SELECTION, ASSUME WHOLE FILE, SO GO TO TOP
REM (PROBLEM IS, YOU CAN'T TELL THE DIFFERENCE BETWEEN *NO* SELECTION AND A
REM 1-CHAR SELECTION.)
If Len(Selection$()) = 1 Then
	If MsgBox("Process whole file?", 36) = - 1 Then StartOfDocument
EndIf
REM ----------------------------------------------------------------------------
REM IT'S HANDY THAT EACH EDITREPLACE LEAVES THE CURSOR AT ITS ORIGINAL LOCATION
EditReplace .Find = "^0000", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0001", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0002", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0003", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0004", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0005", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0006", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0007", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0008", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0009", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0010", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0011", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0012", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0013", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0014", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0015", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0016", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0017", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0018", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0019", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0020", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0021", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0022", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0023", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0024", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0025", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0026", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0027", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0028", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0029", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0030", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0031", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0127", .Replace = "", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM ----------------------------------------------------------------------------
bye:
End Sub

CTLCharsToText - turn embedded control codes into <NUL> style descriptive strings

Turns (most) embedded control chars into <NUL> style descriptive strings.

Sub MAIN
REM 11-24-99
REM Copyright (C)1999 Steven Whitney.
REM Initially published by http://25yearsofprogramming.com.
REM Published under GNU GPL (General Public License) Version 3, with ABSOLUTELY NO WARRANTY.
REM The purpose of this is to allow seeing what control chars are making
REM the little boxes in a file without having to exit and TDUMP it.
REM IF THERE IS A SELECTION, IT ONLY PROCESSES THE SELECTION, ELSE WHOLE FILE.
REM ----------------------------------------------------------------------------
If MsgBox("This converts most control codes to strings so you can see what they are.  By doing this, it corrupts the file, so you should use it on a COPY of the file.  Continue?", 36) <> - 1 Then Goto bye
REM ----------------------------------------------------------------------------
REM IF NO SELECTION, ASSUME WHOLE FILE, SO GO TO TOP
REM (PROBLEM IS, YOU CAN'T TELL THE DIFFERENCE BETWEEN *NO* SELECTION AND A
REM 1-CHAR SELECTION.)
If Len(Selection$()) = 1 Then
	If MsgBox("Process whole file?", 36) = - 1 Then StartOfDocument
EndIf
REM ----------------------------------------------------------------------------
REM IT'S HANDY THAT EACH EDITREPLACE LEAVES THE CURSOR AT ITS ORIGINAL LOCATION
EditReplace .Find = "^0000", .Replace = "<NUL>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0001", .Replace = "<SOH>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0002", .Replace = "<STX>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0003", .Replace = "<ETX>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0004", .Replace = "<EOT>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0005", .Replace = "<ENQ>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0006", .Replace = "<ACK>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0007", .Replace = "<BEL>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0008", .Replace = "<BS>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0009", .Replace = "<HT>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0010", .Replace = "<LF>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0011", .Replace = "<VT>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0012", .Replace = "<FF>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0013", .Replace = "<CR>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0014", .Replace = "<SO>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0015", .Replace = "<SI>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0016", .Replace = "<DLE>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0017", .Replace = "<DCl>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0018", .Replace = "<DC2>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0019", .Replace = "<DC3>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0020", .Replace = "<DC4>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0021", .Replace = "<NAK>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0022", .Replace = "<SYN>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0023", .Replace = "<ETB>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0024", .Replace = "<CAN>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0025", .Replace = "<EM>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0026", .Replace = "<SUB>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0027", .Replace = "<ESC>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0028", .Replace = "<FS>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0029", .Replace = "<GS>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0030", .Replace = "<RS>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0031", .Replace = "<US>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0127", .Replace = "<DEL>", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM ----------------------------------------------------------------------------
bye:
End Sub

CTLCharsFromText - turn descriptive strings into control codes

You can use this to manually embed control codes in a file.

Turns <NUL> style control char strings to actual control chars (the inverse of CTLCharsToText).

Sub MAIN
REM 11-25-99
REM Copyright (C)1999 Steven Whitney.
REM Initially published by http://25yearsofprogramming.com.
REM Published under GNU GPL (General Public License) Version 3, with ABSOLUTELY NO WARRANTY.
REM Restores "<NUL>" style control char strings to real control chars.
REM (You can probably alternatively use Undo to undo CTLCharsToText,
REM since, at most, it performed only 26 ReplaceAll steps.)
REM You can also use it to insert control chars into a file.
REM IF THERE IS A SELECTION, IT ONLY PROCESSES THE SELECTION, ELSE WHOLE FILE.
REM ----------------------------------------------------------------------------
If MsgBox("This converts control code strings (such as <NUL>) to real control chars. Continue?", 36) <> - 1 Then Goto bye
REM ----------------------------------------------------------------------------
REM IF NO SELECTION, ASSUME WHOLE FILE, SO GO TO TOP
REM (PROBLEM IS, YOU CAN'T TELL THE DIFFERENCE BETWEEN *NO* SELECTION AND A
REM 1-CHAR SELECTION.)
If Len(Selection$()) = 1 Then
	If MsgBox("Process whole file?", 36) = - 1 Then StartOfDocument
EndIf
REM ----------------------------------------------------------------------------
REM IT'S HANDY THAT EACH EDITREPLACE LEAVES THE CURSOR AT ITS ORIGINAL LOCATION
EditReplace .Find = "<NUL>", .Replace = "^0000", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<SOH>", .Replace = "^0001", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<STX>", .Replace = "^0002", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<ETX>", .Replace = "^0003", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<EOT>", .Replace = "^0004", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<ENQ>", .Replace = "^0005", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<ACK>", .Replace = "^0006", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<BEL>", .Replace = "^0007", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<BS>", .Replace = "^0008", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find =  "<HT>", .Replace = "^0009", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find =  "<LF>", .Replace = "^0010", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<VT>", .Replace = "^0011", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find =  "<FF>", .Replace = "^0012", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find =  "<CR>", .Replace = "^0013", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<SO>", .Replace = "^0014", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<SI>", .Replace = "^0015", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<DLE>", .Replace = "^0016", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<DCl>", .Replace = "^0017", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<DC2>", .Replace = "^0018", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<DC3>", .Replace = "^0019", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<DC4>", .Replace = "^0020", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<NAK>", .Replace = "^0021", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<SYN>", .Replace = "^0022", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<ETB>", .Replace = "^0023", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<CAN>", .Replace = "^0024", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<EM>", .Replace = "^0025", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<SUB>", .Replace = "^0026", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "<ESC>", .Replace = "^0027", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<FS>", .Replace = "^0028", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<GS>", .Replace = "^0029", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<RS>", .Replace = "^0030", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<US>", .Replace = "^0031", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find =  "<DEL>", .Replace = "^0127", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM ----------------------------------------------------------------------------
bye:
End Sub

CTLCharsToDots - turn control codes in file or selection into visible dots

Turns (most) control chars in file or selection into dots.

Sub MAIN
REM 11-26-99
REM Copyright (C)1999 Steven Whitney.
REM Initially published by http://25yearsofprogramming.com.
REM Published under GNU GPL (General Public License) Version 3, with ABSOLUTELY NO WARRANTY.
REM Turns control chars in file or selection into dots (periods).
REM You should mapdown parity bits first, if necessary.
REM ----------------------------------------------------------------------------
If MsgBox("This turns(most) control codes from the file or selection into dots (periods).  Continue?", 36) <> - 1 Then Goto bye
REM ----------------------------------------------------------------------------
REM IF NO SELECTION, ASSUME WHOLE FILE, SO GO TO TOP
REM (PROBLEM IS, YOU CAN'T TELL THE DIFFERENCE BETWEEN *NO* SELECTION AND A
REM 1-CHAR SELECTION.)
If Len(Selection$()) = 1 Then
	If MsgBox("Process whole file?", 36) = - 1 Then StartOfDocument
EndIf
REM ----------------------------------------------------------------------------
REM IT'S HANDY THAT EACH EDITREPLACE LEAVES THE CURSOR AT ITS ORIGINAL LOCATION
EditReplace .Find = "^0000", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0001", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0002", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0003", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0004", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0005", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0006", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0007", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0008", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0009", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0010", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0011", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0012", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM EditReplace .Find = "^0013", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0014", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0015", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0016", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0017", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0018", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0019", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0020", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0021", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0022", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0023", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0024", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0025", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0026", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0027", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0028", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0029", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0030", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0031", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
EditReplace .Find = "^0127", .Replace = ".", .Direction = 0, .MatchCase = 0, .WholeWord = 0, .PatternMatch = 0, .SoundsLike = 0, .ReplaceAll, .Format = 0, .Wrap = 0
REM ----------------------------------------------------------------------------
bye:
End Sub

 

Valid HTML 4.01 Transitional Valid CSS
Yahoo! Search
Search the web Search this site
View content labeling at ICRA.