diff -Naur hexer-1.0.6/hexer.1 hexer-1.0.6.patched/hexer.1 --- hexer-1.0.6/hexer.1 2020-04-24 09:06:48.000000000 -0400 +++ hexer-1.0.6.patched/hexer.1 2020-11-19 15:51:44.118564837 -0500 @@ -339,7 +339,7 @@ .BR "REGULAR EXPRESSIONS" ). .TP .B ? -Search reverse using a regular expression. +Reverse search using a regular expression. .TP .B . Repeat the last change to the buffer @@ -427,7 +427,7 @@ or .BR BackSpace key deletes the previously inserted byte. If the hex column is active, the -previously inserted nibble (hex digit) is deleted. It is not possible +previously inserted nybble (hex digit) is deleted. It is not possible to delete more bytes than have been inserted in the current insert command. While in .BR "Insert Mode" , @@ -940,7 +940,7 @@ .B maxmatch limit by doubling the `*' or `+' operator, e.g. "a.**b" or "foo\\(bar\\)\\+\\+". -.br +.PP Note that the context specifiers `^'/`$' (beginning/end of a line) and `\\<'/`\\>' (beginning/end of a word) are available and actually do what you expect. If you don't want the atoms `.' and `[^...]' to match @@ -948,13 +948,13 @@ .B specialnl option using the .BR :set -command. -.br +.PP To enter a special character, you can use the standard C `\\'\(hyescape sequences. To enter a character using its octal code, use a `\\o'\(hyprefix followed by up to three octal digits. (C-style octal escapes are not supported, because `\\0', ... `\\9' are interpreted as back-references to subexpressions of the RE.) -To enter a character using it's hex code, type a `\\x'-prefix followed +To enter a character using its hex code, type a `\\x'-prefix followed by up to two hex digits; decimal codes can be entered using a `\\d'\(hyprefix followed by up to three decimal digits. It is possible to enter strings of codes by doubling the base specifier, e.g. "\\xxfe ff 5a 7e" or @@ -963,7 +963,7 @@ .BR maxmatch ) of repetitions of .BR "ff fe" . -.br +.PP It is possible to use all kinds of character `\\'\(hyescapes (escapes representing a single character) within `[]'\(hyranges. Within a range, the `o' selecting an octal base for the escape may be omitted, since @@ -988,55 +988,80 @@ .B % (percent) sign and an expression in infix notation. It is possible to use parentheses. +.PP .B myc understands the following binary infix operators (from highest priority to lowest): +.TP .B ** (power), +.TP .B * (multiply), +.TP .B / (divide), +.TP .B % (modulo), +.TP .B + (add), -.B - +.TP +.B \- (subtract), +.TP .B << (shift left), +.TP .B >> (shift right), +.TP .B < (less), +.TP .B <= (less or equal), +.TP .B > (greater), +.TP .B >= (greater or equal), +.TP .B == (equal), +.TP .B != (not equal), +.TP .B & (arithmetical and), +.TP .B | (arithmetical or), +.TP .B ^ (arithmetical exclusive or), +.TP .B && (logical and), +.TP .B || (logical or), +.TP .B = (assign); and the following unary prefix operators: -.B - +.TP +.B \- (negate, unary minus), +.TP .B ! (logical not), +.TP .B ~ (bitwise complement). +.PP .B myc knows three data types: .BR boolean , @@ -1044,8 +1069,10 @@ (32 bit), .B float (64 bit, equivalent to C double). +.PP On some esoteric platforms the precision of integer and float may be different. +.PP As in C the result of a division depends on the data types of the operands. An integer divided by an integer yields an integer. If you want the result to be a float, make sure one of the operands is a @@ -1057,8 +1084,10 @@ .I a/(b+0.) instead of .IR a/b . +.PP The power operation returns a float if the result is too large to fit in an integer. +.PP The result of a calculation is stored in the special variables .B $$ and diff -Naur hexer-1.0.6/myc.1 hexer-1.0.6.patched/myc.1 --- hexer-1.0.6/myc.1 2020-04-24 09:06:48.000000000 -0400 +++ hexer-1.0.6.patched/myc.1 2020-11-19 15:39:33.189631281 -0500 @@ -64,67 +64,98 @@ is specified on the command-line, the result is echoed and .B myc exits immediately. +.PP If invoked with no arguments, .B myc starts reading commands from standard-in. +.SH OPERATORS .B myc understands the following binary infix operators (from highest priority to lowest): +.TP .B ** (power), +.TP .B * (multiply), +.TP .B / (divide), +.TP .B % (modulo), +.TP .B + (add), -.B - +.TP +.B \- (subtract), +.TP .B << (shift left), +.TP .B >> (shift right), +.TP .B < (less), +.TP .B <= (less or equal), +.TP .B > (greater), +.TP .B >= (greater or equal), +.TP .B == (equal), +.TP .B != (not equal), +.TP .B & (arithmetical and), +.TP .B | (arithmetical or), +.TP .B ^ (arithmetical exclusive or), +.TP .B && (logical and), +.TP .B || (logical or), +.TP .B = (assign); and the following unary prefix operators: -.B - +.TP +.B \- (negate, unary minus), +.TP .B ! (logical not), +.TP .B ~ (bitwise complement). +.SH DATA TYPES .B myc knows three data types: +.TP .BR boolean , +.TP .B integer (32 bit), +.TP .B float (64 bit, equivalent to C double). +.SH NOTES On some esoteric platforms the precision of integer and float may be different. +.PP As in C the result of a division depends on the data types of the operands. An integer divided by an integer yields an integer. If you want the result to be a float, make sure one of the operands is a @@ -138,6 +169,7 @@ .IR a/b . The power operation returns a float if the result is too large to fit in an integer. +.PP The result of a calculation is stored in the special variables .B $$ and