summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-08-11 18:03:01 +0000
committerKarl Berry <karl@freefriends.org>2011-08-11 18:03:01 +0000
commitaf36b8b8cf0b062904823fbaa99efa81f1a04ab8 (patch)
treeac1e3abf81c59149e2e0a8cc5198413dae7e9611
parent76ef14b63cb828fe036a1a070fb7913567fa9fa8 (diff)
match_parens ruby script (30jul11)
git-svn-id: svn://tug.org/texlive/trunk@23500 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/texlive/linked_scripts/Makefile.am1
-rw-r--r--Build/source/texk/texlive/linked_scripts/Makefile.in1
-rwxr-xr-xBuild/source/texk/texlive/linked_scripts/match_parens/match_parens61
l---------Master/bin/alpha-linux/match_parens1
l---------Master/bin/amd64-freebsd/match_parens1
l---------Master/bin/amd64-kfreebsd/match_parens1
l---------Master/bin/i386-cygwin/match_parens1
l---------Master/bin/i386-freebsd/match_parens1
l---------Master/bin/i386-kfreebsd/match_parens1
l---------Master/bin/i386-linux/match_parens1
l---------Master/bin/i386-netbsd/match_parens1
l---------Master/bin/i386-solaris/match_parens1
l---------Master/bin/mips-irix/match_parens1
l---------Master/bin/powerpc-aix/match_parens1
l---------Master/bin/powerpc-linux/match_parens1
l---------Master/bin/sparc-linux/match_parens1
l---------Master/bin/sparc-solaris/match_parens1
l---------Master/bin/universal-darwin/match_parens1
-rwxr-xr-xMaster/bin/win32/match_parens.exebin0 -> 1536 bytes
l---------Master/bin/x86_64-darwin/match_parens1
l---------Master/bin/x86_64-linux/match_parens1
l---------Master/bin/x86_64-solaris/match_parens1
-rw-r--r--Master/texmf-dist/doc/support/match_parens/README17
-rw-r--r--Master/texmf-dist/doc/support/match_parens/created.rid1
-rw-r--r--Master/texmf-dist/doc/support/match_parens/fr_class_index.html26
-rw-r--r--Master/texmf-dist/doc/support/match_parens/fr_file_index.html27
-rw-r--r--Master/texmf-dist/doc/support/match_parens/fr_method_index.html26
-rw-r--r--Master/texmf-dist/doc/support/match_parens/index.html24
-rw-r--r--Master/texmf-dist/doc/support/match_parens/match_parens.html152
-rw-r--r--Master/texmf-dist/doc/support/match_parens/rdoc-style.css208
-rwxr-xr-xMaster/texmf-dist/scripts/match_parens/match_parens61
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds8
-rw-r--r--Master/tlpkg/tlpsrc/collection-binextra.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/match_parens.tlpsrc1
35 files changed, 633 insertions, 2 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/Makefile.am b/Build/source/texk/texlive/linked_scripts/Makefile.am
index 09a659e373e..0891b7cd457 100644
--- a/Build/source/texk/texlive/linked_scripts/Makefile.am
+++ b/Build/source/texk/texlive/linked_scripts/Makefile.am
@@ -95,6 +95,7 @@ texmf_dist_other_scripts = \
latexdiff/latexrevise.pl \
latexmk/latexmk.pl \
luaotfload/mkluatexfontdb.lua \
+ match_parens/match_parens \
mathspic/mathspic.pl \
mf2pt1/mf2pt1.pl \
mkjobtexmf/mkjobtexmf.pl \
diff --git a/Build/source/texk/texlive/linked_scripts/Makefile.in b/Build/source/texk/texlive/linked_scripts/Makefile.in
index cea9cc9300a..7e8fb94fc84 100644
--- a/Build/source/texk/texlive/linked_scripts/Makefile.in
+++ b/Build/source/texk/texlive/linked_scripts/Makefile.in
@@ -233,6 +233,7 @@ texmf_dist_other_scripts = \
latexdiff/latexrevise.pl \
latexmk/latexmk.pl \
luaotfload/mkluatexfontdb.lua \
+ match_parens/match_parens \
mathspic/mathspic.pl \
mf2pt1/mf2pt1.pl \
mkjobtexmf/mkjobtexmf.pl \
diff --git a/Build/source/texk/texlive/linked_scripts/match_parens/match_parens b/Build/source/texk/texlive/linked_scripts/match_parens/match_parens
new file mode 100755
index 00000000000..b5c0fa18da1
--- /dev/null
+++ b/Build/source/texk/texlive/linked_scripts/match_parens/match_parens
@@ -0,0 +1,61 @@
+#!/usr/bin/env ruby
+
+=begin rdoc
+
+== match_parens - find mismatches of parentheses, braces, (angle) brackets, in texts
+
+== Synopsis
+
+ match_parens [_filename_]
+
+== Description
+
+Mismatches of parentheses, braces, (angle) brackets, especially in TeX
+sources which may be rich in those, may be difficult to trace. This
+little script helps you by writing your text to standard output, after
+adding a left margin to your text, which will normally be almost empty,
+but will clearly show any mismatches. (Just try me on myself to see that
+the parenthesis starting this sentence will not appear to be matched at
+the end of the file. If you look at me in the vim editor, try the command
+:%!%
+
+=== Copyright
+
+Copyright (C) 2009 Wybo Dekker (<tt>wybo@dekkerdocumenten.nl</tt>)
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the {GNU General Public License}[http://www.gnu.org/licenses/]
+as published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but without any warranty; without even the implied warranty of
+merchantability or fitness for a particular purpose. See the {GNU
+General Public License}[http://www.gnu.org/licenses/] for more details.
+
+$Id: match_parens,v 1.7 2011-07-30 09:31:24 wybo Exp $
+=end
+
+private
+ s, n, html, parens =
+'', '0', false, '^{}[]()'
+
+RELEASE = 1.3
+
+while gets()
+ if html
+ if ~/^=end/ || ~/<\/html>/i
+ html = false
+ parens = '^{}[]()'
+ end
+ else
+ if ~/^=begin rdoc/ || ~/\<html\>/i
+ html = true
+ parens = '^{}[]()<>'
+ end
+ end
+ # look for <> in html or rdoc:
+ s << $_.tr(parens,'')
+ while s.gsub!(/\{\}|\(\)|\[\]|<>/,'') do end
+ puts [n.next!,s,$_].join("\t")
+end
diff --git a/Master/bin/alpha-linux/match_parens b/Master/bin/alpha-linux/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/alpha-linux/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/amd64-freebsd/match_parens b/Master/bin/amd64-freebsd/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/amd64-freebsd/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/amd64-kfreebsd/match_parens b/Master/bin/amd64-kfreebsd/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/amd64-kfreebsd/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-cygwin/match_parens b/Master/bin/i386-cygwin/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-cygwin/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-freebsd/match_parens b/Master/bin/i386-freebsd/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-freebsd/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-kfreebsd/match_parens b/Master/bin/i386-kfreebsd/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-kfreebsd/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-linux/match_parens b/Master/bin/i386-linux/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-linux/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-netbsd/match_parens b/Master/bin/i386-netbsd/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-netbsd/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/i386-solaris/match_parens b/Master/bin/i386-solaris/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/i386-solaris/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/mips-irix/match_parens b/Master/bin/mips-irix/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/mips-irix/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/powerpc-aix/match_parens b/Master/bin/powerpc-aix/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/powerpc-aix/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/powerpc-linux/match_parens b/Master/bin/powerpc-linux/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/powerpc-linux/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/sparc-linux/match_parens b/Master/bin/sparc-linux/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/sparc-linux/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/sparc-solaris/match_parens b/Master/bin/sparc-solaris/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/sparc-solaris/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/universal-darwin/match_parens b/Master/bin/universal-darwin/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/universal-darwin/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/win32/match_parens.exe b/Master/bin/win32/match_parens.exe
new file mode 100755
index 00000000000..5777d90a17a
--- /dev/null
+++ b/Master/bin/win32/match_parens.exe
Binary files differ
diff --git a/Master/bin/x86_64-darwin/match_parens b/Master/bin/x86_64-darwin/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/x86_64-darwin/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/x86_64-linux/match_parens b/Master/bin/x86_64-linux/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/x86_64-linux/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/bin/x86_64-solaris/match_parens b/Master/bin/x86_64-solaris/match_parens
new file mode 120000
index 00000000000..98e3ec225c5
--- /dev/null
+++ b/Master/bin/x86_64-solaris/match_parens
@@ -0,0 +1 @@
+../../texmf-dist/scripts/match_parens/match_parens \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/README b/Master/texmf-dist/doc/support/match_parens/README
new file mode 100644
index 00000000000..c1a90e6d5db
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/README
@@ -0,0 +1,17 @@
+This is release 1.3 of the match_parens script
+LICENSE: GPL
+
+Short description:
+Mismatches of parentheses, braces, (angle) brackets, especially
+in TeX sources which may be rich in those, may be difficult to
+trace. This little script helps you by writing your text to
+standard output, after adding a left margin to your text, which
+will normally be almost empty, but will clearly show any
+mismatches. (Just try the script on myself to see that the
+parenthesis starting this sentence will not appear to be matched
+at the end of the file. If you are looking at me in the vim editor, try
+the command:
+
+:%!match_parens
+
+$Id: README,v 1.5 2011-07-30 09:29:02 wybo Exp $
diff --git a/Master/texmf-dist/doc/support/match_parens/created.rid b/Master/texmf-dist/doc/support/match_parens/created.rid
new file mode 100644
index 00000000000..6fb2168692a
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/created.rid
@@ -0,0 +1 @@
+Sat, 30 Jul 2011 11:57:29 +0200
diff --git a/Master/texmf-dist/doc/support/match_parens/fr_class_index.html b/Master/texmf-dist/doc/support/match_parens/fr_class_index.html
new file mode 100644
index 00000000000..49ce9e299aa
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/fr_class_index.html
@@ -0,0 +1,26 @@
+
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!--
+
+ Classes
+
+ -->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>Classes</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
+ <base target="docwin" />
+</head>
+<body>
+<div id="index">
+ <h1 class="section-bar">Classes</h1>
+ <div id="index-entries">
+ </div>
+</div>
+</body>
+</html> \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/fr_file_index.html b/Master/texmf-dist/doc/support/match_parens/fr_file_index.html
new file mode 100644
index 00000000000..b2ed504eeca
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/fr_file_index.html
@@ -0,0 +1,27 @@
+
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!--
+
+ Files
+
+ -->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>Files</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
+ <base target="docwin" />
+</head>
+<body>
+<div id="index">
+ <h1 class="section-bar">Files</h1>
+ <div id="index-entries">
+ <a href="files/match_parens.html">match_parens</a><br />
+ </div>
+</div>
+</body>
+</html> \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/fr_method_index.html b/Master/texmf-dist/doc/support/match_parens/fr_method_index.html
new file mode 100644
index 00000000000..cdfab83ff8d
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/fr_method_index.html
@@ -0,0 +1,26 @@
+
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!--
+
+ Methods
+
+ -->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>Methods</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
+ <base target="docwin" />
+</head>
+<body>
+<div id="index">
+ <h1 class="section-bar">Methods</h1>
+ <div id="index-entries">
+ </div>
+</div>
+</body>
+</html> \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/index.html b/Master/texmf-dist/doc/support/match_parens/index.html
new file mode 100644
index 00000000000..df838c5c21a
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/index.html
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+
+<!--
+
+ RDoc Documentation
+
+ -->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>RDoc Documentation</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+</head>
+<frameset rows="20%, 80%">
+ <frameset cols="25%,35%,45%">
+ <frame src="fr_file_index.html" title="Files" name="Files" />
+ <frame src="fr_class_index.html" name="Classes" />
+ <frame src="fr_method_index.html" name="Methods" />
+ </frameset>
+ <frame src="files/match_parens.html" name="docwin" />
+</frameset>
+</html> \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/match_parens.html b/Master/texmf-dist/doc/support/match_parens/match_parens.html
new file mode 100644
index 00000000000..38fdf620ccf
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/match_parens.html
@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>File: match_parens</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
+ <script type="text/javascript">
+ // <![CDATA[
+
+ function popupCode( url ) {
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
+ }
+
+ function toggleCode( id ) {
+ if ( document.getElementById )
+ elem = document.getElementById( id );
+ else if ( document.all )
+ elem = eval( "document.all." + id );
+ else
+ return false;
+
+ elemStyle = elem.style;
+
+ if ( elemStyle.display != "block" ) {
+ elemStyle.display = "block"
+ } else {
+ elemStyle.display = "none"
+ }
+
+ return true;
+ }
+
+ // Make codeblocks hidden by default
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
+
+ // ]]>
+ </script>
+
+</head>
+<body>
+
+
+
+ <div id="fileHeader">
+ <h1>match_parens</h1>
+ <table class="header-table">
+ <tr class="top-aligned-row">
+ <td><strong>Path:</strong></td>
+ <td>match_parens
+ </td>
+ </tr>
+ <tr class="top-aligned-row">
+ <td><strong>Last Update:</strong></td>
+ <td>Sat Jul 30 11:31:24 +0200 2011</td>
+ </tr>
+ </table>
+ </div>
+ <!-- banner header -->
+
+ <div id="bodyContent">
+
+
+
+ <div id="contextContent">
+
+ <div id="description">
+ <h2>match_parens - find mismatches of parentheses, braces, (angle) brackets, in texts</h2>
+<h2>Synopsis</h2>
+<pre>
+ match_parens [_filename_]
+</pre>
+<h2>Description</h2>
+<p>
+Mismatches of parentheses, braces, (angle) brackets, especially in TeX
+sources which may be rich in those, may be difficult to trace. This little
+script helps you by writing your text to standard output, after adding a
+left margin to your text, which will normally be almost empty, but will
+clearly show any mismatches. (Just try me on myself to see that the
+parenthesis starting this sentence will not appear to be matched at the end
+of the file. If you look at me in the vim editor, try the command :%!%
+</p>
+<h3>Copyright</h3>
+<p>
+Copyright (C) 2009 Wybo Dekker (<tt>wybo@dekkerdocumenten.nl</tt>)
+</p>
+<p>
+This program is free software: you can redistribute it and/or modify it
+under the terms of the <a href="http://www.gnu.org/licenses/">GNU General
+Public License</a> as published by the Free Software Foundation, either
+version 3 of the License, or (at your option) any later version.
+</p>
+<p>
+This program is distributed in the hope that it will be useful, but without
+any warranty; without even the implied warranty of merchantability or
+fitness for a particular purpose. See the <a
+href="http://www.gnu.org/licenses/">GNU General Public License</a> for more
+details.
+</p>
+<p>
+$Id: match_parens,v 1.7 2011-07-30 09:31:24 wybo Exp $
+</p>
+
+ </div>
+
+
+ </div>
+
+
+ </div>
+
+
+ <!-- if includes -->
+
+ <div id="section">
+
+
+ <div id="constants-list">
+ <h3 class="section-bar">Constants</h3>
+
+ <div class="name-list">
+ <table summary="Constants">
+ <tr class="top-aligned-row context-row">
+ <td class="context-item-name">RELEASE</td>
+ <td>=</td>
+ <td class="context-item-value">1.3</td>
+ </tr>
+ </table>
+ </div>
+ </div>
+
+
+
+
+
+
+ <!-- if method_list -->
+
+
+ </div>
+
+
+<div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+</div>
+
+</body>
+</html> \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/match_parens/rdoc-style.css b/Master/texmf-dist/doc/support/match_parens/rdoc-style.css
new file mode 100644
index 00000000000..6653aedfa7a
--- /dev/null
+++ b/Master/texmf-dist/doc/support/match_parens/rdoc-style.css
@@ -0,0 +1,208 @@
+
+body {
+ font-family: DejaVu Serif,Comic Sans MS,serif;
+ font-size: 90%;
+ margin: 0;
+ margin-left: 40px;
+ padding: 0;
+ background: white;
+}
+
+h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
+h1 { font-size: 150%; }
+h2,h3,h4 { margin-top: 1em; }
+
+a { background: #eef; color: #039; text-decoration: none; }
+a:hover { background: #039; color: #eef; }
+
+/* Override the base stylesheet's Anchor inside a table cell */
+td > a {
+ background: transparent;
+ color: #039;
+ text-decoration: none;
+}
+
+/* and inside a section title */
+.section-title > a {
+ background: transparent;
+ color: #eee;
+ text-decoration: none;
+}
+
+/* === Structural elements =================================== */
+
+div#index {
+ margin: 0;
+ margin-left: -40px;
+ padding: 0;
+ font-size: 90%;
+}
+
+
+div#index a {
+ margin-left: 0.7em;
+}
+
+div#index .section-bar {
+ margin-left: 0px;
+ padding-left: 0.7em;
+ background: #ccc;
+ font-size: small;
+}
+
+
+div#classHeader, div#fileHeader {
+ width: auto;
+ color: white;
+ padding: 0.5em 1.5em 0.5em 1.5em;
+ margin: 0;
+ margin-left: -40px;
+ border-bottom: 3px solid #006;
+}
+
+div#classHeader a, div#fileHeader a {
+ background: inherit;
+ color: white;
+}
+
+div#classHeader td, div#fileHeader td {
+ background: inherit;
+ color: white;
+}
+
+
+div#fileHeader {
+ background: #057;
+}
+
+div#classHeader {
+ background: #048;
+}
+
+
+.class-name-in-header {
+ font-size: 180%;
+ font-weight: bold;
+}
+
+
+div#bodyContent {
+ padding: 0 1.5em 0 1.5em;
+}
+
+div#description {
+ padding: 0.5em 1.5em;
+ background: #efefef;
+ border: 1px dotted #999;
+}
+
+div#description h1,h2,h3,h4,h5,h6 {
+ color: #125;;
+ background: transparent;
+}
+
+div#validator-badges {
+ text-align: center;
+}
+div#validator-badges img { border: 0; }
+
+div#copyright {
+ color: #333;
+ background: #efefef;
+ font: 0.75em sans-serif;
+ margin-top: 5em;
+ margin-bottom: 0;
+ padding: 0.5em 2em;
+}
+
+
+/* === Classes =================================== */
+
+table.header-table {
+ color: white;
+ font-size: small;
+}
+
+.type-note {
+ font-size: small;
+ color: #DEDEDE;
+}
+
+.xxsection-bar {
+ background: #eee;
+ color: #333;
+ padding: 3px;
+}
+
+.section-bar {
+ color: #333;
+ border-bottom: 1px solid #999;
+ margin-left: -20px;
+}
+
+
+.section-title {
+ background: #79a;
+ color: #eee;
+ padding: 3px;
+ margin-top: 2em;
+ margin-left: -30px;
+ border: 1px solid #999;
+}
+
+.top-aligned-row { vertical-align: top }
+.bottom-aligned-row { vertical-align: bottom }
+
+/* --- Context section classes ----------------------- */
+
+.context-row { }
+.context-item-name { font-family: monospace; font-weight: bold; color: black; }
+.context-item-value { font-size: small; color: #448; }
+.context-item-desc { color: #333; padding-left: 2em; }
+
+/* --- Method classes -------------------------- */
+.method-detail {
+ background: #efefef;
+ padding: 0;
+ margin-top: 0.5em;
+ margin-bottom: 1em;
+ border: 1px dotted #ccc;
+}
+.method-heading {
+ color: black;
+ background: #ccc;
+ border-bottom: 1px solid #666;
+ padding: 0.2em 0.5em 0 0.5em;
+}
+.method-signature { color: black; background: inherit; }
+.method-name { font-weight: bold; }
+.method-args { font-style: italic; }
+.method-description { padding: 0 0.5em 0 0.5em; }
+
+/* --- Source code sections -------------------- */
+
+a.source-toggle { font-size: 90%; }
+div.method-source-code {
+ background: #262626;
+ color: #ffdead;
+ margin: 1em;
+ padding: 0.5em;
+ border: 1px dashed #999;
+ overflow: hidden;
+}
+
+div.method-source-code pre { color: #ffdead; overflow: hidden; }
+
+/* --- Ruby keyword styles --------------------- */
+
+.standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
+
+.ruby-constant { color: #7fffd4; background: transparent; }
+.ruby-keyword { color: #00ffff; background: transparent; }
+.ruby-ivar { color: #eedd82; background: transparent; }
+.ruby-operator { color: #00ffee; background: transparent; }
+.ruby-identifier { color: #ffdead; background: transparent; }
+.ruby-node { color: #ffa07a; background: transparent; }
+.ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
+.ruby-regexp { color: #ffa07a; background: transparent; }
+.ruby-value { color: #7fffd4; background: transparent; } \ No newline at end of file
diff --git a/Master/texmf-dist/scripts/match_parens/match_parens b/Master/texmf-dist/scripts/match_parens/match_parens
new file mode 100755
index 00000000000..b5c0fa18da1
--- /dev/null
+++ b/Master/texmf-dist/scripts/match_parens/match_parens
@@ -0,0 +1,61 @@
+#!/usr/bin/env ruby
+
+=begin rdoc
+
+== match_parens - find mismatches of parentheses, braces, (angle) brackets, in texts
+
+== Synopsis
+
+ match_parens [_filename_]
+
+== Description
+
+Mismatches of parentheses, braces, (angle) brackets, especially in TeX
+sources which may be rich in those, may be difficult to trace. This
+little script helps you by writing your text to standard output, after
+adding a left margin to your text, which will normally be almost empty,
+but will clearly show any mismatches. (Just try me on myself to see that
+the parenthesis starting this sentence will not appear to be matched at
+the end of the file. If you look at me in the vim editor, try the command
+:%!%
+
+=== Copyright
+
+Copyright (C) 2009 Wybo Dekker (<tt>wybo@dekkerdocumenten.nl</tt>)
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the {GNU General Public License}[http://www.gnu.org/licenses/]
+as published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but without any warranty; without even the implied warranty of
+merchantability or fitness for a particular purpose. See the {GNU
+General Public License}[http://www.gnu.org/licenses/] for more details.
+
+$Id: match_parens,v 1.7 2011-07-30 09:31:24 wybo Exp $
+=end
+
+private
+ s, n, html, parens =
+'', '0', false, '^{}[]()'
+
+RELEASE = 1.3
+
+while gets()
+ if html
+ if ~/^=end/ || ~/<\/html>/i
+ html = false
+ parens = '^{}[]()'
+ end
+ else
+ if ~/^=begin rdoc/ || ~/\<html\>/i
+ html = true
+ parens = '^{}[]()<>'
+ end
+ end
+ # look for <> in html or rdoc:
+ s << $_.tr(parens,'')
+ while s.gsub!(/\{\}|\(\)|\[\]|<>/,'') do end
+ puts [n.next!,s,$_].join("\t")
+end
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index 569db23b1ec..a4ee5db8d09 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -232,7 +232,7 @@ my @TLP_working = qw(
makebarcode makebox makecell makecirc makecmds makedtx makeglos makeplot
manuscript margbib
marginfix marginnote marvosym
- math-e mathabx mathabx-type1 mathalfa mathastext
+ match_parens math-e mathabx mathabx-type1 mathalfa mathastext
mathcomp mathdots mathexam
mathmode mathspec mathspic mattens maybemath mbenotes
mcaption mceinleger mcite mciteplus
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 2c823081c86..fc713d80939 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -503,7 +503,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'maple', "die 'skipping, noinfo license'",
'marigold', "die 'skipping, nonfree font'",
'marvosym', "&MAKEnosymlinks",
- 'match_parens',"die 'skipping, Ruby'",
+ 'match_parens',"&MAKEflatten",
'math-into-latex', "die 'skipping, noinfo license, examples'",
'mathabx', "&MAKEflatten",
'mathabx-type1', "&MAKEflatten",
@@ -915,6 +915,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'context-games' => '&POSTcontext_games',
'coordsys' => '&POSTcoordsys',
'ctex' => '&POSTctex',
+ 'dehyph-exptl' => '&POSTdehyph_exptl',
'doipubmed' => '&POSTlatex2html',
'droid' => '&POSTdroid',
'eplain' => '&POSTeplain',
@@ -1959,6 +1960,7 @@ $standardxmt='\.xmt';
'latexdiff' => 'latex(diff-so|diff-vc|revise)$',
'latexmk' => '\.pl$',
'listings-ext' => '\.sh$',
+ 'match_parens' => '^match_parens$',
'mathspic' => '^mathspic\.pl$',
'mf2pt1' => '\.pl$',
'mkgrkindex' => 'mkgrkindex$',
@@ -4363,6 +4365,10 @@ sub POSTctex {
&SYSTEM ("$MV doc/* .; rmdir doc");
}
+sub POSTdehyph_expt {
+ print "POST$package - *YOU* must update tlpsrc directives, right now!\n";
+}
+
sub POSTdroid {
print "POST$package - mv manifest.txt, doc/fonts\n";
my $dstdir = "$DEST/doc/fonts/$package";
diff --git a/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc
index 2596f562869..f39e8506e70 100644
--- a/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc
@@ -33,6 +33,7 @@ depend latex2man
depend latexdiff
depend latexmk
depend listings-ext
+depend match_parens
depend mkjobtexmf
depend patgen
depend pdfcrop
diff --git a/Master/tlpkg/tlpsrc/match_parens.tlpsrc b/Master/tlpkg/tlpsrc/match_parens.tlpsrc
new file mode 100644
index 00000000000..c3dea21c491
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/match_parens.tlpsrc
@@ -0,0 +1 @@
+binpattern f bin/${ARCH}/match_parens