📄 astyle_notes.html
字号:
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Artistic Style - Release Notes</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="CREATED" content="19981123;1064600">
<meta name="CHANGEDBY" content="Jim Pattee">
<meta name="CHANGED" content="19981123;1091900">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<style> <!-- h1 {color:#0000A0; text-align:center; font-style:italic; font-size:200%;}
h2 {color:#0000A0;}
h3 {color:#0000A0;}
code {color:#0000A0; font-size:larger;}
--></style>
</head>
<body>
<h1>Artistic Style Release Notes</h1>
<p> </p>
<blockquote>
<h3>Artistic Style 1.21 (June 2007)</h3>
<ul>
<li>New function, formatArrayBrackets,
to improve array formatting and indentation.<li>Attach brackets to lines with end-of-line comments.
<li>Break brackets from lines with end-of-line comments without bringing
the comments with them.<li>Move ASFormatter and ASBeautifier static initialization
from constructor to "init" function to allow for changes in the file type.<li>Add --preserve-date (-Z) option.<li>New functions formatBrackets, padOperators and PadParens to improve decomposition.<li>Add identification of file
mode (C, C#, or Java) to file open procedure.<li>Keywords in headers now depend on file
mode (C, C#, or
Java) and object type (formatter or beautifier).<li>Remove short options -c (mode=c) and -j
(mode=java) since the mode is now set automatically from the file extension.<li>Change Linux bracket formatting for header files.<li>Fix formatting of empty blocks.<li>Expand BracketType definition.
<li>Fix "do not change" bracket mode inconsistencies with other bracket
formatting.
<li>Remove mode=java from Java predefined style.<li>Change long option --errors-to-standard-output to --errors-to-stdout.<li>Fix breaking of struct variable declaration.<li>Add support for OpenVMS compiler.<li>Inline the ASBeautifier function isLegalNameChar.<li>Fix no-indent of block comments starting in
column 1 or 2.<li>Fix formatting of Java anonymous class defined as a method call
parameter (bracket within a paren).
<li>Fix indentation for Java "for each" statement.<li>Fix bracket being attached to a preprocessor directive.<li>Fix extra indent of single line blocks when a previous line
probation header is found.<li>Fix formatting of block comments when continuation lines have
different leading whitespace characters.<li>Fix deleting a blank line before a bracket when brackets=attach.<li>Fix segmentation fault on preprocessor continuation line followed by an empty line.<li>Fix bad bracket indent that sometimes occurs when brackets=attach and it
cannot be attached.<li>Fix trimming of comment lines.
<li>Fix incorrect identification of "new" operator pointers as
calculations.
<li>Fix incorrect identification of assignments as command type bracket.<li>Fix incorrect indentation of pointers following a dot operator or
pointer.<li>Fix attaching "else if" statements to a single line block.
<li>Fix header recognition problem when header is proceeded by a tab
instead of a space.
<li>Fix line break when colon is followed by a comment.<li>Fix
ASBeautifier not identifying a template definition.<li>Change indents around the end of line to two indents.<li>Change header includes to fix header dependencies for Linux GCC 4.3.<li>Add output line number
for debugging.<li>Add filename to trace output.<li>Add trace for arrays.<li>Add trace for bracketType .<li>Fix no-indent comment in a #else preprocessor directive.<li>Fix block comment continuation line indent when block comments do
not start the line.<li>Adjust position of block comments (/*) when padding is added or deleted.
<li>Fix incorrect formatting if "return" is included in a function name.
<li>Fix incorrect padding if template depth is greater that one and pad=oper is used.
<li>Fix incorrect bracket type identification when bracket is followed
by a comment.<li>Fix incorrect bracket type identification when a "const"
method is declared.<li>Fix incorrect bracket type identification when pre-definition header is inside a paren.<li>Fix deleting a space when attaching a bracket with line comments.<li>Fix indentation when the conditional
"?" operator is used in a single line
statement.<li>Fix indentation when single line "if" statement is used.<li>Add pointers, multiply operators, and selected variables to do not unpad in paren unpad
procedure.<li>Return exit code 0 for --version and --help.</ul>
<h3>Artistic Style 1.20.2 (February 2007)</h3>
<ul>
<li>Fix problems with the new stream I/O procedure added in release
1.20.1:<ul>
<li>Fix adding an extra blank line at end of document.</li>
<li>Fix line ending on last line when cin and cout option is
used.</li>
</ul>
</ul>
<h3>Artistic Style 1.20.1 (January 2007)</h3>
<ul>
<li>The following changes were made to improve processing for Mac OS X
platforms:<ul>
<li>Remove Makefile linker option -s and add a separate "strip"
command.</li>
<li>Open console input and output streams as binary to allow Linux line
ends on a Windows platform.</li>
<li>Change stream I/O procedure to allow for Mac OS 9 line endings.</li>
<li>Change output stream end of line from endl so output stream
is not flushed with each write.</li>
<li>Change information messages from cerr to cout.</li>
<li>Removed messages when I/O is to cin and cout to accommodate
TextWrangler.</li>
</ul>
</ul>
<h3>Artistic Style 1.20 (January 2007)</h3>
<ul>
<li>Call importOptions() from function AStyleMain() to allow slop in options parameters.</li>
<li>New makefiles for GCC and Intel with new compile options.</li>
<li>New project file for Visual C with new compile options.</li>
<li>Change comments to reflect the GNU Lesser General Public License.</li>
<li>Indent message maps for MFC and event tables for wxWidgets.</li>
<li>Fix incorrect formatting for an empty comment.</li>
<li>Fix "Unknown option" in default options file when last line does not
contain CR or LF.</li>
<li>Patch from Dieter Bayer to fix case indent when a scope resolution
operator is used.</li>
<li>Change long option --brackets=break-closing-headers to
--brackets=break-closing.</li>
<li>Add short option -y for --brackets=break-closing.</li>
<li>Add short option -e for --break-elseifs.</li>
<li>Add short option -w for --indent-preprocessor.</li>
<li>Add short option -f for --break-blocks.</li>
<li>Add short option -F for --break-blocks=all.</li>
<li>Remove the backup file after formatting when <nobr>--suffix=none.</nobr></li>
<li>Show total time at end of job.</li>
<li>Improved error handling for invalid options with ASTYLE_LIB.</li>
<li>Add function AStyleGetVersion() to ASTYLE_LIB option.</li>
<li>Change preprocessor macro from ASTYLE_GUI to ASTYLE_LIB.</li>
<li>Add astyle namespace to ASEnhancer.</li>
<li>Add #include <ctype.h> for Red Hat distribution of GCC 3.2 (prior to
Jan 2004).</li>
<li>Remove commented-out code.</li>
</ul>
<h3>Artistic Style 1.19 (July 2006)</h3>
<ul>
<li>Add unpad=paren option.</li>
<li>Always pad paren headers (e.g. 'if', 'for', 'while').</li>
<li>Fix problem of pad=oper working different if pad=paren is declared.</li>
<li>Add additional tests to distinguish the multiplication operator from
pointers.</li>
<li>Fix padding parens before a member access pointer (->).</li>
<li>If space padding has changed, move end-of-line comments to the
original column, if possible.</li>
<li>Move potential calculation decision to outside of operator padding
function.</li>
<li>Fix duplication of last line of source if a final endline is not
present. </li>
<li>Fix class initializer not indented on last line if bracket is
attached.</li>
<li>Fix identification of templates contained in parens.</li>
<li>Fix one line block occurring before end of class.</li>
<li>Fix line added after one line block with bracketFormatMode =
NONE_MODE.</li>
<li>Add needed variables to ASBeautifier copy constructor.</li>
<li>Trim end of line for multi-line comments.</li>
<li>Add a breakLine before paren checks (needed for unpad=paren option).</li>
<li>Add trace file to ASFormatter.</li>
<li>Move formatting message from end to beginning of formatting.</li>
<li>Move the building of vectors to ASResource. Vectors for
classes ASBeautifier and ASFormatter should now have the same values.</li>
<li>Move debugging variable inLineNumber from ASFormatter to
ASBeautifier.</li>
<li>Bypass char processing for UTF8 characters in ASBeautifier.</li>
<li>Move switchVariables struct from ASEnhancer to the header file. </li>
<li>Remove preprocessorHeader vector (not used).</li>
<li>Remove variable isInConst (not used).</li>
<li>Remove commented-out code.</li>
</ul>
<h3>Artistic Style 1.18 (June 2006)</h3>
<ul>
<li>The following changes were made for the option pad=oper:
<ul>
<li>Does <strong>not</strong> remove extra spaces from formatted
expressions. </li>
<li>Does <strong>not</strong> pad opening parens on the outside.
</li>
<li>Does <strong>not</strong> remove leading spaces from multi-line
comments. </li>
<li>Does <strong>not</strong> pad negative numbers. </li>
<li>Does <strong>not</strong> add a space to the end of preprocessor
directives. </li>
<li>Will <strong>not</strong> pad operators inside block parens [].</li>
</ul>
</li>
<li>The following changes were made for the option pad=paren:
<ul>
<li>Formats correctly <strong>with</strong> or <strong>without</strong>
pad=oper. </li>
<li>Does <strong>not</strong> add a space for each additional run if
pad=oper is not used. </li>
<li>Outside of opening paren is padded correctly. </li>
<li>Inside of closing paren is padded correctly. </li>
<li>Does <strong>not</strong> pad block parens []. </li>
<li>Added short option P, previously used for pad=all.</li>
</ul>
</li>
<li>Added new options pad=paren-out (d) and pad=paren-in (D). </li>
<li>Removed option pad=all. </li>
<li>Add short option V for convert-tabs. </li>
<li>Added bounds checking to options containing parameters. </li>
<li>Display a message when a default options file is used. </li>
<li>Replaced IS_PARAM_OPTION(S) macros with overloaded isParamOption.
Fixed compare problem with short param options. </li>
<li>Fix EOF problem with default options file.</li>
</ul>
<h3>Artistic Style 1.17 (May 2006)</h3>
<ul>
<li>The following changes were made for processing bracketFormatMode =
NONE_MODE:
<ul>
<li>Removed the function isFormattingEnabled() and always performed
the formatting. </li>
<li>Removed the formatting bypass for NONE_MODE. </li>
<li>Fix brackets always being broken in the 2 cases where NONE_MODE
formatting was done. </li>
<li>Added new functions to support the processing of NONE_MODE
brackets. </li>
<li>Made other minor changes necessary for correct NONE_MODE
processing.</li>
</ul>
</li>
<li>Changed indent cases option to indent the entire case block. </li>
<li>Changed to output Windows or Linux line endings. </li>
<li>Added ASEnhancer module for case statement indenting. </li>
<li>Corrected errors in identifying options indent=tab=, and
force-indent=tab=. </li>
<li>Corrected errors in identifying options min-conditional-indent=, and
max-instatement-indent=. </li>
<li>Improved error and information messages. </li>
<li>Added capability to compile as a console program, shared library, or
static library. </li>
<li>Fixed problem with semicolons and parens being put on a line by
themselves. </li>
<li>Fixed spaces being added before a line comment. </li>
<li>Fixed blank line added after some preprocessor statements. </li>
<li>Fixed preprocessor statements not being trimmed. </li>
<li>Do not indent line comments that begin in column 1 or 2. </li>
<li>Fixed indentation problem with ending }; of class statements. </li>
<li>Changed nextLine() function to eliminate char buffer limits. </li>
<li>Moved Windows default options file to %USERPROFILE%. </li>
<li>Removed NEW operators to prevent memory leaks. </li>
<li>Fixed space before the semicolon in return ; statement. </li>
<li>Fixed extra space that was sometimes added when pad operators was
used. </li>
<li>Removed string parameter from IS_PARAM_OPTION. </li>
<li>Added forward declaration of parseOption() to eliminate compile
error. </li>
<li>Added input line number counter for debugging. </li>
<li>Add statements to check for markers if break-blocks or
break-blocks=all is used. </li>
<li>Remove warnings for signed/unsigned mismatch. </li>
<li>Removed COMPARE macro and used string compare. </li>
<li>Removed compiler_defines.h. </li>
<li>Removed USES_NAMESPACE declaration.</li>
</ul>
<h3>Artistic Style 1.16</h3>
<ul>
<p>There was no release 1.16.</p>
</ul>
<h3>Artistic Style 1.15.3 (7 March 2002)</h3>
<ul>
<li>
<div>
<div>
Bug fix in handling of brackets after line-comments.</div>
</div>
</li>
<li>
<div>
<div>
Bug fix: C# add/remove event property headers now properly
formatted.</div>
</div>
</li>
</ul>
<h3>Artistic Style 1.15.2 (2 March 2002)</h3>
<ul>
<li>
<div>
Bug fixes in exception handling phrases, e.g. multiple catches and
try..finally.</div>
</li>
</ul>
<h3>Artistic Style 1.15.1 (2 March 2002)</h3>
<ul>
<li>
<div>
Bug fix: C# properties are now formatted properly.</div>
</li>
</ul>
<h3>Artistic Style 1.15.0 (2 March 2002)</h3>
<ul>
<li>
<div>
Added support for C#.</div>
</li>
<li>
<div>
Artistic Style is now licensed only under the GNU Public License
(GPL).</div>
</li>
<li>
<div>
Compilation under G++ 3.0 now works properly.</div>
</li>
<li>
<div>
Bug fix: Opening brackets that appear at the beginning of a line
immediately after an empty line comment are now handled properly,
and not appended as part of the line comment.</div>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -