Quoter 5.5 build: 9639 released: 2014-09-13 compiled with: Java 1.8.0_131 Jet jet12.0-pro-x86/1.8.0_131

Converts text with many possible cleanups, including preparation of HTML and Java, aligning in columns, character set conversion, case converting, removing excess white space, removing blank lines, preparing regex expressions etc..

Copyright: (c) 1998-2017 Canadian Mind Products.

signed Java Applet (that can also be run as an application).
Download from: http://mindprod.com/products1.html#QUOTER
View HTML to run this program online at: http://mindprod.com/applet/quoter.html

----

Notes:

You must install the Java JRE to use this program.
See http://mindprod.com/jgloss/jgloss/jre.html

This hybrid program is mainly designed to be used as an Applet in a
browser but is can also be used from the command prompt, e.g. under
Windows command.exe or JPSoft tcc.exe, formerly called the DOS box. Just
clicking the programs in a directory listing will not do anything useful.  
Just typing the program names at the command prompt will not either.

This program requires a manual install! See below.

I put out an avalanche of free software into the world, and submit PAD
files to hundreds of distribution sites, but I rarely hear back from
anyone.  What's happening?  Does it all just work fine?  It is so
complicated nobody can figure out how to use it and they give up on it?
It is it useful?  Since everyone has the source, do people just fix the
programs to their liking themselves?  Did you have trouble installing?  Do
I presume you know too much?  I would be happy to hear from you about your
experiences, positive or negative and your requests for improvements.  A
one-line email to roedy@mindprod.com would be great.

===> Free <===
Full source included.
You may even include the source code, modified or unmodified
in free/commercial open source/proprietary programs that you write and distribute.
May be used freely for any purpose but military.
For more details on this restriction, see
http://mindprod.com/contact/nonmil.html
If you include any Canadian Mind Products code in your own applications,
your app too must be labelled non-military use only.
http://mindprod.com/contact/nonmil.html
All Java jars and source code are included. If you need the class files or Javadoc, you will have to build them yourself. To streamline the zip downloads, class files and Javadoc have been removed.

----

Prerequisites:

This program runs under any OS that supports Java,
(e.g.W2K/XP/W2003/Vista/W2008/W7-32/W7-64/W8-32/W8-64/Linux/LinuxARM/LinuxX86
/LinuxX64/Ubuntu/Solaris/SolarisSPARC/SolarisSPARC64/SolarisX86/SolarisX64/OSX/AIX...)
so long as you have
<><> Java version 1.8 <><> or later installed (32-bit or 64-bit Java).
See http://mindprod.com/jgloss/installingjava.html for details.

----

Installing on a PC:

Download source and compiled jar files to run on your own machine as an application or Applet
First install a recent Java JDK or JVM.
See http://mindprod.com/jgloss/installingjava.html.
To install, extract the zip download with WinZip
(or similar unzip utility) into any directory you please,
often J:\ --  ticking off the <span class="click">use folder names</span> option.
To run as an application, type:
java.exe %JAVA_OPTIONS -ea -jar J:\com\mindprod\quoter\quoter.jar {put any parms here}

adjusting as necessary to account for where the jar file is.

----

Installing on a MacIntosh:

Use Safari to download source and compiled jar files to run on your own machine as an application or Applet.
Safari will automatically unpack the zip into ~/Downloads (version 10.5)
[or on the Desktop (version 10.4 and earlier)].
First install a recent Java JDK or JVM.
See http://mindprod.com/jgloss/installingjava.html.
You may optionally move the download tree to a permanent home.
I don't have a MacIntosh, just a PC, so I can't test my Java programs for Mac compatibility.
In theory they should work without problems, but in practice that does not always happen.
If you have problems please, let me know, preferably with screenshots and complete verbatim error messages.
To run as an application, without parameters, just double click the jar file.

To run as an application with parameters, in bash shell type:
open Terminal.app
cd ~/Desktop
java.exe -ea -jar com/mindprod/quoter/quoter.jar {put any parms here}

adjusting as necessary to account for where the jar file is.

----

Rebuilding:

The zip already contains the necessary jar files, so unless you modify
the program, there is no need to recompile the source or rebuild the jar.
Configure.java basedir="E:/" in rebuild.xml to the drive where your files are.
Configure.java your certificate name with environment SET cert=mindprodcert2017rsa
Configure.java your certificate password with environment SET jarsignerpassword=sesame
Use ANT and rebuild.xml, not build.xml, to recompile and recreate the jar.

----

Use:

Converts text with many possible cleanups, including
preparation of HTML and Java, aligning in columns, character
set conversion, case converting, removing excess white
space, removing blank lines, preparing regex expressions....
converts raw text with the following possible cleanups:
0. Flow text by removing newline characters. This is useful for preparing
   text to paste into web comment boxes.
1  Convert awkward characters to entities for HTML, e.g.  & -> &amp; or
   accented characters like é to &eacute;
2. Quote for Java Strings. e.g. C:\MyDir\MyFile.txt -> "C:\\MyDir\\MyFile.txt"
   and convert Java literals back to Strings.
3. Convert to a CSV field with commas and spaces in quotes, and quotes doubled.
4. Convert to Java char [] literals, e.g. c:\ -> new char { 'c', ':', '\\' }
5. Strip HTML tags such as <p> <span giving you the raw text.
6. Strip XML tags giving you the raw text.
7. Convert HTML entities back to awkward characters.
8. Convert XML entity references back to awkward characters.
9. Encode an entity using URLEncoding %xx e.g. space to %20.
10. Decode an entity using URLDecoding %xx e.g. %20 back to space.
12. Collapse multiple spaces into one.
13. Collapse multiple blank lines onto one.
14. Remove embedded control characters.
15. Collapse runs of spaces into a single space.
16. Collapse multiple blank lines into a single blank line.
17. Align space or comma delimited text in columns
18. Align Java source in columns (considers "\"", '\'', /* comment */,
    //... in column delimiter rules).
19. Convert to UPPER case, lower case or Book Title case.
20. Converting raw multiline clipboards into search or replace regex
    expressions for Java Regexes, Funduc Search and Replace utility or
    Microedge SlickEdit Unix-style regexes, with the option of following by
    converting them to Java string literals.  Composing regex sub-expressions
    to compactly select a particular set of characters.
21. Trim leading, trailing or both spaces. Can be combined with any other transformation.
It will help you write HTML, especially HTML that talks
about HTML or Java. It can be useful for creating JavaDOC
that mentions the tags needed to run the program or that
quotes Java source which makes common use of < > and &.
It takes raw text and converts HTML's reserved characters
such as & < > and " and converts them to their cooked enitity forms
&amp; &lt; &gt; and &quot;. It also converts accented and
special characters to their cooked forms, e.g. the copyright
symbol to &copy; and the e' character to &eacute; Just paste
the raw text into the upper window, click Convert then copy
the converted cooked text from the lower window.
When you run the Quoter Amanuensis as an application, it is
even more automatic. You don't need to do any manual pasting
and copying. Just click Convert to convert the current
contents of the clipboard. The cooked HTML replaces the old
the raw text clipboard contents. This automatic feature is
not available in the Applet version because the Applet
sandbox considers it a security risk.
For example, Quoter will take a clipboard that looks like
this:
special characters:
< > & " ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª «
¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ ÷ ×
accented characters like:
À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö Ø Ù Ú Û Ü Ý Þ ß
à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ø ù ú û ü ý þ ÿ.
and converts it to this:
special characters:
&lt; &gt; &amp; &quot; &iexcl; &cent; &pound; &curren; &yen;
&brvbar; &sect; &uml; &copy; &ordf; &laquo;
&not; &shy; &reg; &macr; &deg; &plusmn; &sup2; &sup3;
&acute; &micro; &para; &middot; &cedil; &sup1; &ordm;
&raquo; &frac14; &frac12; &frac34; &iquest; &divide; &times;
accented characters like:
&Agrave; &Aacute; &Acirc; &Atilde; &Auml; &Aring; &AElig;
&Ccedil; &Egrave; &Eacute; &Ecirc; &Euml; &Igrave; &Iacute;
&Icirc; &Iuml; &ETH; &Ntilde; &Ograve; &Oacute; &Ocirc;
&Otilde; &Ouml; &Oslash; &Ugrave; &Uacute; &Ucirc; &Uuml;
&Yacute; &THORN; &szlig;
&agrave; &aacute; &acirc; &atilde; &auml; &aring; &aelig;
&ccedil; &egrave; &eacute; &ecirc; &euml; &igrave; &iacute;
&icirc; &iuml; &eth; &ntilde; &ograve; &oacute; &ocirc;
&otilde; &ouml; &oslash; &ugrave; &uacute; &ucirc; &uuml;
&yacute; &thorn; &yuml;.
Quoter is also useful when you are writing Java programs
that write Java or C++ programs. For example, when you
select Java instead of HTML as the target it will take a
clipboard containing template code like this:
  if ( myString.compareTo("\n ABC") > 0 )
    test++;
it will convert it to:
   "if ( myString.compareTo(\"\\n ABC\") > 0 )\n"
    + "  test++;\n"
It is also useful any time you cut and paste material for
String literals from some other source, e.g. in preparing
filenames. For example, it will convert:
   C:\myDir\Myprog.exe
to
  "C:\\myDir\\Myprog.exe"
Watch out!  Quoter translates &nbsp; to 0xA0, a non-printing
space, not ordinary 0X20 space.
If there are other transformations you would find useful,
please just ask.
Why the 99 logo?  It represents a double quote character.
Quoter among other things "quotes" (in the sense of escapes)
regexes and Java strings using \.


----

Version History:

 1.0 1998-12-25 initial release.

 1.1 1998-12-28 handle empty or null clipboard better.
                handle Latin1, Windows and IBM OEM character set encodings.

 1.2 1999-09-10 add Java source code strings as target.

 1.3 1999-09-11 allow plain, just strip control chars
                trim lead/trail spaces.
                in Applet, choice changes are now Live and
                trigger a convert action.

 1.4 1999-09-12 UPPER, lower and Title case conversion,
                text column alignment
                Java source alignment.

 1.5 1999-09-12 allow Applet command line parameter to simulate
                Applet mode when running as application.
                fix bug in translate table that was sometimes stripping \ns.

 1.6 1999-09-13 clearer Choice descriptions.

 1.7 1999-09-18 add collapse multiple spaces

 1.8 1999-12-02 high chars -&gt; \ u xxxx

 1.9 2000-05-15 HTML converts runs of blank lines to

 2.0 2000-08-02 Funduc Regex converters
                fixed bug in Java string generator for \ u x x x x

 2.1 2001-02-02 make sure + always gets quoted in Funduc search strings
                reorganise the code around TextProcessor and Translator
                base classes.

 2.2 2001-02-02 avoid surrounding results in quotes

 2.3 2002-03-06 preserve line breaks in generated HTML
                now see and marking line breaks.
                It is easier to take them out than add them manually.

 2.4 2002-06-20 strip HTML tags and entities

 2.5 2002-08-08 convert to Java style search/replace regexes.

 2.6 2003-06-06 fix bug, excess in to HTML output.

 2.7 2004-05-30 cleverer way of handling newlines when stripping tags to more
                closely parallel what the way the text was rendered HTML.
                added an about box.
                handle tabs with \t in Java string literals

 2.8 2004-06-01 handle tabs with \t in Java string literals

 2.9 2004-06-01 no longer use \' in &quot;...&quot;, just plain '

 3.0 2004-06-20 strip HTML tags will not be fooled by tags similar to standard ones.

 3.1 2005-07-30 use ANT, document encodings better.
                more entities, use standard Entities package.

 3.2 2005-09-03 expand size of window slightly

 3.3 2006-03-05 reformat with IntelliJ, add javadoc.
                Convert to JDK 1.5 and swing with enums.

 3.4 2006-03-07 remove translate feature from screen.
                add char[] transform

 3.5 2007-03-26 fixes a bug in StripEntities that was mishandling
                &amp;#xffff;

 3.6 2007-04-06 tidy code. proper size when run as application.
                tidy code. Convert AlignJava to an enum-based
                finite state machine.

 3.7 2007-04-28 new logo, PAD.

 3.8 2007-05-02 add Vslick regex support

 3.9 2007-12-16 add support for encode/decode URL

 4.0 2008-01-29 add > as a reserve character in Java regex.

 4.1 2008-02-09 remove =<> as Java regex search reserved chars

 4.2 2008-04-07 add build to title, tidy code, correct spelling, convert Align to use enum.
                Application mode now displays raw and cooked. Add Paste button.

 4.3 2008-08-06 add support for XML strip tags and entities, insert entities.

 4.4 2009-02-24 add Java string quoting to Java search/replace regexes.

 4.5 2009-02-26 add both Java string quoting and plain for Java search/regexes.

 4.6 2009-11-11 add . to list of quoted chars in Java regex. add ToCSV.

 4.7 2011-01-03 add span processor

 4.8 2011-11-15 add flow by stripping newline chars

 4.9 2011-11-17 add swap button, now signed

 5.0 2011-11-18 regex span now does both includes and excludes and displays the range two ways.

 5.1 2012-01-13 configurable look and feel

 5.2 2012-12-17 convert Java String literals back to plain strings.

 5.3 2014-07-01 now show three Regex variants at once.

 5.4 2014-07-24 correct the three Regex variants and improve the spacing.

 5.5 2014-09-13 add hex display of codepoints

-30-