⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wrapping.html

📁 This the README for the Eclipse Plug-in distribution of the Jalopy Java Source Code Formatter.
💻 HTML
📖 第 1 页 / 共 3 页
字号:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  <html><head>      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">   <title>4.3.4.&nbsp;Wrapping</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="indentation.html" title="4.3.3.&nbsp;Indentation"><link rel="next" href="separation.html" title="4.3.5.&nbsp;Blank Lines"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="wrapping.html#wrap-general" title="4.3.4.1.&nbsp;General"><link rel="subsection" href="wrapping.html#wrap-always" title="4.3.4.2.&nbsp;Always"><link rel="subsection" href="wrapping.html#wrap-misc" title="4.3.4.3.&nbsp;Misc">      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer">       <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'>     </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;                    <a href="./download.html" class="navlink">Download</a> &#149;                    <a href="./docs.html" class="navlink">Documentation</a> &#149;                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;                    <a href="./links.html" class="navlink">Links</a> &#149;                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |                    <a href="./history.html" class="navlink2">History</a> |                    <a href="./manual.html" class="navlink2">Manual</a> |                    <a href="./faq.html" class="navlink2">FAQ</a> |                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.4.&nbsp;Wrapping</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="indentation.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="separation.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="wrapping"></a>4.3.4.&nbsp;Wrapping</h3></div></div><div></div></div><a class="indexterm" name="d0e2657"></a><a class="indexterm" name="d0e2660"></a><p>Controls when and how lines gets wrapped.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="wrap-general"></a>4.3.4.1.&nbsp;General</h4></div></div><div></div></div><p>Lets you control the general line wrapping options.</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-general-general"></a>4.3.4.1.1.&nbsp;General</h5></div></div><div></div></div><p>Lets you control the general line wrapping options.</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-use"></a>Wrap lines</p><p>Enables or disables the automatic line wrapping.</p></li><li><p><a name="wrap-sizes-line"></a>Line length</p><p>Lets you specify the maximum line length. Jalopy tries (more or less) to limiteach line within the given length.</p><a class="indexterm" name="d0e2686"></a><a class="indexterm" name="d0e2691"></a></li><li><p><a name="wrap-sizes-deep"></a>Deep indent</p><a class="indexterm" name="d0e2697"></a><a class="indexterm" name="d0e2702"></a><p>Specifies the length after which a gap will be identified as "deep indented".Jalopy tries to avoid these kind of gaps and will force a line break or applyanother indentation scheme, if this size is exceeded.</p><div class="example"><a name="ex-wrap-sizes-deep"></a><p class="title"><b>Example&nbsp;4.65.&nbsp;Deep indent size (60) not exceeded</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">                                                            |                  |    protected static synchronized File getANewDestinationFile(File dest,       |                                                            | String packageName,                                                            | String filename) ||----------------- the gap ---------------------------|throws IOException      |    {                                                       |                  |    }                                                       |                  |                                                            |                  |                                                            60                 79</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-sizes-deep-exceed"></a><p class="title"><b>Example&nbsp;4.66.&nbsp;Deep indent size (50) exeeded</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">                                                  |                            |    protected static synchronized File getANewDestinationFile(File dest,       |                                                  |           String packageName,                                                  |           String filename) ||----------------- the gap ---------------------------|throws IOException      |    {                                             |                            |    }                                             |                            |                                                  |                            |                                                  50                           79</pre></td></tr></table></div></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-policy"></a>4.3.4.1.2.&nbsp;Policy</h5></div></div><div></div></div><a class="indexterm" name="d0e2721"></a><a class="indexterm" name="d0e2726"></a><p>Lets you fine-control the wrapping behaviour.</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-left-parenthesis"></a>Wrap after left parenthesis</p><p>Lets you control the wrapping behaviour for statement and expression lists.</p><p>If left disabled, the first line break will be preferably insertedbehind the first parameter or expression and only occurs after the leftparenthesis if the maximum line length would be exceeded.</p><div class="example"><a name="ex-wrap-left-parenthesis-disabled"></a><p class="title"><b>Example&nbsp;4.67.&nbsp;Wrap after left parenthesis (disabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">                                                                               |appServerReferencesVector.add<span class="bold"><b>(</b></span>new AppServerReference<span class="bold"><b>(</b></span>        "RemoteApplicationManager",                                            |        poa.create_reference_with_id<span class="bold"><b>(</b></span>         |            "RemoteApplicationManager".getBytes(),                             |            RemoteApplicationManagerHelper.id())));                            |                                                                               |</pre></td></tr></table></div><p>Otherwise the line break will always occur behind the left parenthesis.</p><div class="example"><a name="ex-wrap-left-parenthesis-enabled"></a><p class="title"><b>Example&nbsp;4.68.&nbsp;Wrap after left parenthesis (enabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">appServerReferencesVector.add<span class="bold"><b>(</b></span>    new AppServerReference<span class="bold"><b>(</b></span>        "RemoteApplicationManager",        poa.create_reference_with_id<span class="bold"><b>(</b></span>            "RemoteApplicationManager".getBytes(),            RemoteApplicationManagerHelper.id())));</pre></td></tr></table></div><p>This switch affects the output style of method/constructor declarations andcalls, creator statements and <tt class="literal">if-else</tt>, <tt class="literal">for</tt>,<tt class="literal">while</tt> and <tt class="literal">do-while</tt> blocks.</p><p>As per default, the wrapped lines will be indended using<a href="indentation.html#indentation-policy-standard">Standard indentation</a>, but youmay want to apply another indentation scheme. See<a href="indentation.html#indentation-policy" title="4.3.3.1.1.&nbsp;Policy">Section&nbsp;4.3.3.1.1, &#8220;Policy&#8221;</a> for more information.</p><p></p></li><li><p><a name="wrap-right-parenthesis"></a>Wrap before right parenthesis</p><p>Forces a line break before the right parenthesis of parameter or expression lists.The parenthesis will be intended according to the current indentation level.Only takes action if at least one parameter/expression was indeed wrapped.</p><p>This switch affects the output style of method/constructor declarations andcalls, creator statements and <tt class="literal">if-else</tt>, <tt class="literal">for</tt>,<tt class="literal">while</tt> and <tt class="literal">do-while</tt> blocks.</p><div class="example"><a name="ex-wrap-right-parenthesis"></a><p class="title"><b>Example&nbsp;4.69.&nbsp;Right parenthesis (disabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public void severalParameters(String one,                              int two,                              String three,                              StringObject four,                              AnotherObject five<span class="bold"><b>)</b></span> {}</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-right-parenthesis-enabled"></a><p class="title"><b>Example&nbsp;4.70.&nbsp;Right parenthesis (enabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public void severalParameters(String one,                              int two,                              String three,                              StringObject four,                              AnotherObject five<span class="bold"><b>)</b></span> {}</pre></td></tr></table></div><p>Both switches combined, looks like the following example:</p><div class="example"><a name="ex-wrap-left-right-parenthesis"></a><p class="title"><b>Example&nbsp;4.71.&nbsp;Left and right parenthesis</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">appServerReferencesVector.add<span class="bold"><b>(</b></span>    new AppServerReference<span class="bold"><b>(</b></span>        "RemoteApplicationManager",        poa.create_reference_with_id<span class="bold"><b>(</b></span>            "RemoteApplicationManager".getBytes(),            RemoteApplicationManagerHelper.id()        <span class="bold"><b>)</b></span>    <span class="bold"><b>)</b></span><span class="bold"><b>)</b></span>;</pre></td></tr></table></div><p>For blocks the output may go like this:</p><div class="example"><a name="ex-wrap-left-right-parenthesis-wrapped-continue"></a><p class="title"><b>Example&nbsp;4.72.&nbsp;Left and right parenthesis (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">if <span class="bold"><b>(</b></span>    "pick".equals(m.getName()) &amp;&amp; m.isStatic() &amp;&amp; m.isPublic()<span class="bold"><b>)</b></span> {    pickFound = true;}else if <span class="bold"><b>(</b></span>    "pick".equals(m.getName()) &amp;&amp; m.isStatic() &amp;&amp; m.isPublic()<span class="bold"><b>)</b></span> {    pickFound = true;}</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-grouping-paren"></a>Wrap grouping parentheses</p><p>Lets you control the wrapping behaviour for grouping parentheses. If enabled,linebreaks are inserted after left and before right parentheses of groupedexpressions to let the expression(s) stand out.</p><div class="example"><a name="ex-wrap-grouping-no"></a><p class="title"><b>Example&nbsp;4.73.&nbsp;Grouping parentheses (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">if (    !<span class="bold"><b>(</b></span>(bankverbindung instanceof ObjectValue)    || (bankverbindung instanceof PrimitiveValue<span class="bold"><b>)</b></span>)) {    throw new RuntimeException();}</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-grouping"></a><p class="title"><b>Example&nbsp;4.74.&nbsp;Wrapped grouping parentheses (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">if (    !<span class="bold"><b>(</b></span>        (bankverbindung instanceof ObjectValue)        || (bankverbindung instanceof TkPrimitiveValue)    <span class="bold"><b>)</b></span>) {    throw new RuntimeException();}</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-after-assignment"></a>Wrap after assignments</p><p>Lets you control the way wrapping takes action for assignments. If left disabled,line wrapping preferably occurs as part of the expression printing. Otherwisewrapping will be performed right after the assignment.</p><div class="example"><a name="ex-wrap-assignment-no"></a><p class="title"><b>Example&nbsp;4.75.&nbsp;Don't wrap after assignment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">this.interessentenNr = new InteressentenNr(        Fachschluesselerzeugung.createService()        .getNeuerFachschluessel(            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT        )    );</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-assignment"></a><p class="title"><b>Example&nbsp;4.76.&nbsp;Wrap after assignment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">this.interessentenNr =    new InteressentenNr(        Fachschluesselerzeugung.createService()        .getNeuerFachschluessel(            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT        )    );</pre></td></tr></table></div><p></p></li></ul></div><p>Line wrapping will often occur with statements that consist of several (possibly long)expressions. Here you specify whether line wrapping should occurbefore or after the expression operator.</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-before"></a>Wrap before operators</p><a class="indexterm" name="d0e2926"></a><p>If enabled, lines will be wrapped before the operator. The operator will beprinted with the continuation line.</p><div class="example"><a name="ex-wrap-before"></a><p class="title"><b>Example&nbsp;4.77.&nbsp;Wrap before operators</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -