All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Add scripts to check 'verbbox' env usage
@ 2016-09-12 15:08 Akira Yokosawa
  2016-09-12 15:49 ` Paul E. McKenney
  2016-09-12 22:15 ` [PATCH v2] " Akira Yokosawa
  0 siblings, 2 replies; 8+ messages in thread
From: Akira Yokosawa @ 2016-09-12 15:08 UTC (permalink / raw)
  To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa

From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
From: Akira Yokosawa <akiyks@gmail.com>
Date: Mon, 12 Sep 2016 23:39:22 +0900
Subject: [PATCH] Add scripts to check 'verbbox' env usage

This commit adds scripts to search modification candidates
for enclosing "verbbox" environment within "figure" environment.

At the top of perfbook directory, the command

$ sh utilities/doverbboxcheck.sh

will show \begin{figure} statements to be moved ahead of
"verbbox" environment.

Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
 utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
 utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+)
 create mode 100644 utilities/doverbboxcheck.sh
 create mode 100644 utilities/verbboxcheck.pl

diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
new file mode 100644
index 0000000..2801bf1
--- /dev/null
+++ b/utilities/doverbboxcheck.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# Apply verbboxcheck.pl for all .tex files
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 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 for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, you can access it online at
+# http://www.gnu.org/licenses/gpl-2.0.html.
+#
+# Copyright (C) Akira Yokosawa, 2016
+#
+# Authors: Akira Yokosawa <akiyks@gmain.com>
+
+# check if companion script exists
+if ! test -e utilities/verbboxcheck.pl
+then
+	echo "utilities/verrboxcheck.pl not found."
+	exit 1
+fi
+texfiles=`find . -name '*.tex' -print`
+for i in $texfiles
+do
+	basename="${i%.tex}"
+#	echo $basename
+	perl ./utilities/verbboxcheck.pl $basename.tex
+done
+
diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
new file mode 100644
index 0000000..976a41f
--- /dev/null
+++ b/utilities/verbboxcheck.pl
@@ -0,0 +1,59 @@
+#!/usr/bin/perl
+#
+# Check usage pattern of "verbbox" environment
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 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 for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, you can access it online at
+# http://www.gnu.org/licenses/gpl-2.0.html.
+#
+# Copyright (C) Akira Yokosawa, 2016
+#
+# Authors: Akira Yokosawa <akiyks@gmail.com>
+
+my $line_now;
+my $line_prev;
+my $line_prev_prev;
+my $in_figure = 0;
+my $interval = 0;
+my $line_num;
+my $fig_line;
+my $fig_line_num;
+my $infile = $ARGV[0];
+
+$line_prev_prev = <>;
+$line_prev = <>;
+$line_now = <>;
+$line_num = 3;
+
+while($line_now) {
+    if ($in_figure == 1) {
+	if ($line_now =~ /\\theverbbox/) {
+	    print "$infile:$fig_line_num:$fig_line";
+	    $in_figure = 0;
+	}
+	$interval++;
+    }
+    if ($line_now =~ /\\begin\{figure\}/) {
+	$in_figure = 1;
+	$fig_line = $line_now;
+	$fig_line_num = $line_num;
+    }
+    if ($interval > 3) {
+	$in_figure = 0;
+	$interval = 0;
+    }
+    $line_prev_prev = $line_prev;
+    $line_prev = $line_now;
+    $line_now = <>;
+    $line_num++;
+}
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-12 15:08 [PATCH] Add scripts to check 'verbbox' env usage Akira Yokosawa
@ 2016-09-12 15:49 ` Paul E. McKenney
  2016-09-12 22:12   ` Akira Yokosawa
  2016-09-12 22:15 ` [PATCH v2] " Akira Yokosawa
  1 sibling, 1 reply; 8+ messages in thread
From: Paul E. McKenney @ 2016-09-12 15:49 UTC (permalink / raw)
  To: Akira Yokosawa; +Cc: perfbook

On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
> From: Akira Yokosawa <akiyks@gmail.com>
> Date: Mon, 12 Sep 2016 23:39:22 +0900
> Subject: [PATCH] Add scripts to check 'verbbox' env usage
> 
> This commit adds scripts to search modification candidates
> for enclosing "verbbox" environment within "figure" environment.
> 
> At the top of perfbook directory, the command
> 
> $ sh utilities/doverbboxcheck.sh
> 
> will show \begin{figure} statements to be moved ahead of
> "verbbox" environment.
> 
> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
> ---
>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 95 insertions(+)
>  create mode 100644 utilities/doverbboxcheck.sh
>  create mode 100644 utilities/verbboxcheck.pl
> 
> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
> new file mode 100644
> index 0000000..2801bf1
> --- /dev/null
> +++ b/utilities/doverbboxcheck.sh
> @@ -0,0 +1,36 @@
> +#!/bin/sh
> +#
> +# Apply verbboxcheck.pl for all .tex files
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 2 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 for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, you can access it online at
> +# http://www.gnu.org/licenses/gpl-2.0.html.
> +#
> +# Copyright (C) Akira Yokosawa, 2016
> +#
> +# Authors: Akira Yokosawa <akiyks@gmain.com>
> +
> +# check if companion script exists
> +if ! test -e utilities/verbboxcheck.pl
> +then
> +	echo "utilities/verrboxcheck.pl not found."
> +	exit 1
> +fi
> +texfiles=`find . -name '*.tex' -print`
> +for i in $texfiles
> +do
> +	basename="${i%.tex}"
> +#	echo $basename
> +	perl ./utilities/verbboxcheck.pl $basename.tex
> +done
> +
> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
> new file mode 100644
> index 0000000..976a41f
> --- /dev/null
> +++ b/utilities/verbboxcheck.pl
> @@ -0,0 +1,59 @@
> +#!/usr/bin/perl
> +#
> +# Check usage pattern of "verbbox" environment
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 2 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 for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, you can access it online at
> +# http://www.gnu.org/licenses/gpl-2.0.html.
> +#
> +# Copyright (C) Akira Yokosawa, 2016
> +#
> +# Authors: Akira Yokosawa <akiyks@gmail.com>
> +
> +my $line_now;
> +my $line_prev;
> +my $line_prev_prev;
> +my $in_figure = 0;
> +my $interval = 0;
> +my $line_num;
> +my $fig_line;
> +my $fig_line_num;
> +my $infile = $ARGV[0];
> +
> +$line_prev_prev = <>;
> +$line_prev = <>;
> +$line_now = <>;
> +$line_num = 3;
> +
> +while($line_now) {
> +    if ($in_figure == 1) {

Doesn't this need to be not-equal rather than equal?  Or is the fact
that I haven't written perl for 20 years becoming apparent?  ;-)

						Thanx, Paul

> +	if ($line_now =~ /\\theverbbox/) {
> +	    print "$infile:$fig_line_num:$fig_line";
> +	    $in_figure = 0;
> +	}
> +	$interval++;
> +    }
> +    if ($line_now =~ /\\begin\{figure\}/) {
> +	$in_figure = 1;
> +	$fig_line = $line_now;
> +	$fig_line_num = $line_num;
> +    }
> +    if ($interval > 3) {
> +	$in_figure = 0;
> +	$interval = 0;
> +    }
> +    $line_prev_prev = $line_prev;
> +    $line_prev = $line_now;
> +    $line_now = <>;
> +    $line_num++;
> +}
> -- 
> 1.9.1
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-12 15:49 ` Paul E. McKenney
@ 2016-09-12 22:12   ` Akira Yokosawa
  2016-09-12 23:28     ` Paul E. McKenney
  0 siblings, 1 reply; 8+ messages in thread
From: Akira Yokosawa @ 2016-09-12 22:12 UTC (permalink / raw)
  To: paulmck; +Cc: perfbook, Akira Yokosawa

On 2016/09/12 08:49:50 -0700, Paul E. McKenney wrote:
> On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
>> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
>> From: Akira Yokosawa <akiyks@gmail.com>
>> Date: Mon, 12 Sep 2016 23:39:22 +0900
>> Subject: [PATCH] Add scripts to check 'verbbox' env usage
>>
>> This commit adds scripts to search modification candidates
>> for enclosing "verbbox" environment within "figure" environment.
>>
>> At the top of perfbook directory, the command
>>
>> $ sh utilities/doverbboxcheck.sh
>>
>> will show \begin{figure} statements to be moved ahead of
>> "verbbox" environment.
>>
>> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
>> ---
>>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
>>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
>>  2 files changed, 95 insertions(+)
>>  create mode 100644 utilities/doverbboxcheck.sh
>>  create mode 100644 utilities/verbboxcheck.pl
>>
>> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
>> new file mode 100644
>> index 0000000..2801bf1
>> --- /dev/null
>> +++ b/utilities/doverbboxcheck.sh
>> @@ -0,0 +1,36 @@
>> +#!/bin/sh
>> +#
>> +# Apply verbboxcheck.pl for all .tex files
>> +#
>> +# This program is free software; you can redistribute it and/or modify
>> +# it under the terms of the GNU General Public License as published by
>> +# the Free Software Foundation; either version 2 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 for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, you can access it online at
>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>> +#
>> +# Copyright (C) Akira Yokosawa, 2016
>> +#
>> +# Authors: Akira Yokosawa <akiyks@gmain.com>
>> +
>> +# check if companion script exists
>> +if ! test -e utilities/verbboxcheck.pl
>> +then
>> +	echo "utilities/verrboxcheck.pl not found."
>> +	exit 1
>> +fi
>> +texfiles=`find . -name '*.tex' -print`
>> +for i in $texfiles
>> +do
>> +	basename="${i%.tex}"
>> +#	echo $basename
>> +	perl ./utilities/verbboxcheck.pl $basename.tex
>> +done
>> +
>> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
>> new file mode 100644
>> index 0000000..976a41f
>> --- /dev/null
>> +++ b/utilities/verbboxcheck.pl
>> @@ -0,0 +1,59 @@
>> +#!/usr/bin/perl
>> +#
>> +# Check usage pattern of "verbbox" environment
>> +#
>> +# This program is free software; you can redistribute it and/or modify
>> +# it under the terms of the GNU General Public License as published by
>> +# the Free Software Foundation; either version 2 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 for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, you can access it online at
>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>> +#
>> +# Copyright (C) Akira Yokosawa, 2016
>> +#
>> +# Authors: Akira Yokosawa <akiyks@gmail.com>
>> +
>> +my $line_now;
>> +my $line_prev;
>> +my $line_prev_prev;
>> +my $in_figure = 0;
>> +my $interval = 0;
>> +my $line_num;
>> +my $fig_line;
>> +my $fig_line_num;
>> +my $infile = $ARGV[0];
>> +
>> +$line_prev_prev = <>;
>> +$line_prev = <>;
>> +$line_now = <>;
>> +$line_num = 3;
>> +
>> +while($line_now) {
>> +    if ($in_figure == 1) {
> 
> Doesn't this need to be not-equal rather than equal?  Or is the fact
> that I haven't written perl for 20 years becoming apparent?  ;-)

Ah, this should have been

+while($line_now) {
+    if ($in_figure) {

Also, there remain unnecessary variables I used in a preliminary version.
I'm sending a v2 of the patch. Hope it makes more sense.

                                            Thanks, Akira
> 
> 						Thanx, Paul
> 
>> +	if ($line_now =~ /\\theverbbox/) {
>> +	    print "$infile:$fig_line_num:$fig_line";
>> +	    $in_figure = 0;
>> +	}
>> +	$interval++;
>> +    }
>> +    if ($line_now =~ /\\begin\{figure\}/) {
>> +	$in_figure = 1;
>> +	$fig_line = $line_now;
>> +	$fig_line_num = $line_num;
>> +    }
>> +    if ($interval > 3) {
>> +	$in_figure = 0;
>> +	$interval = 0;
>> +    }
>> +    $line_prev_prev = $line_prev;
>> +    $line_prev = $line_now;
>> +    $line_now = <>;
>> +    $line_num++;
>> +}
>> -- 
>> 1.9.1
>>
> 
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v2] Add scripts to check 'verbbox' env usage
  2016-09-12 15:08 [PATCH] Add scripts to check 'verbbox' env usage Akira Yokosawa
  2016-09-12 15:49 ` Paul E. McKenney
@ 2016-09-12 22:15 ` Akira Yokosawa
  1 sibling, 0 replies; 8+ messages in thread
From: Akira Yokosawa @ 2016-09-12 22:15 UTC (permalink / raw)
  To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa

From 376bd195eeb599184f5e12e6f109f88cfc19ee94 Mon Sep 17 00:00:00 2001
From: Akira Yokosawa <akiyks@gmail.com>
Date: Mon, 12 Sep 2016 23:39:22 +0900
Subject: [PATCH v2] Add scripts to check 'verbbox' env usage

This commit adds scripts to search modification candidates
for enclosing "verbbox" environment within "figure" environment.

At the top of perfbook directory, the command

$ sh utilities/doverbboxcheck.sh

will show \begin{figure} statements to be moved ahead of
"verbbox" environment.

Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
 utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++++++
 utilities/verbboxcheck.pl   | 52 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+)
 create mode 100644 utilities/doverbboxcheck.sh
 create mode 100644 utilities/verbboxcheck.pl

diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
new file mode 100644
index 0000000..cda60f0
--- /dev/null
+++ b/utilities/doverbboxcheck.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# Apply verbboxcheck.pl for all .tex files
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 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 for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, you can access it online at
+# http://www.gnu.org/licenses/gpl-2.0.html.
+#
+# Copyright (C) Akira Yokosawa, 2016
+#
+# Authors: Akira Yokosawa <akiyks@gmail.com>
+
+# check if companion script exists
+if ! test -e utilities/verbboxcheck.pl
+then
+	echo "utilities/verrboxcheck.pl not found."
+	exit 1
+fi
+texfiles=`find . -name '*.tex' -print`
+for i in $texfiles
+do
+	basename="${i%.tex}"
+#	echo $basename
+	perl ./utilities/verbboxcheck.pl $basename.tex
+done
+
diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
new file mode 100644
index 0000000..ce60a52
--- /dev/null
+++ b/utilities/verbboxcheck.pl
@@ -0,0 +1,52 @@
+#!/usr/bin/perl
+#
+# Check usage pattern of "verbbox" environment
+#
+# This script searches \begin{figure} within a few lines ahead of
+# \theverbbox.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 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 for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, you can access it online at
+# http://www.gnu.org/licenses/gpl-2.0.html.
+#
+# Copyright (C) Akira Yokosawa, 2016
+#
+# Authors: Akira Yokosawa <akiyks@gmail.com>
+
+my $line;
+my $in_figure = 0;
+my $interval = 0;
+my $line_num = 1;
+my $fig_line;
+my $fig_line_num;
+my $infile = $ARGV[0];
+
+while($line = <>) {
+    if ($in_figure) {
+	if ($line =~ /\\theverbbox/) {
+	    print "$infile:$fig_line_num:$fig_line";
+	    $in_figure = 0;
+	}
+	$interval++;
+    }
+    if ($line =~ /\\begin\{figure\}/) {
+	$in_figure = 1;
+	$fig_line = $line;
+	$fig_line_num = $line_num;
+    }
+    if ($interval > 3) {
+	$in_figure = 0;
+	$interval = 0;
+    }
+    $line_num++;
+}
-- 
1.9.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-12 22:12   ` Akira Yokosawa
@ 2016-09-12 23:28     ` Paul E. McKenney
  2016-09-13 12:09       ` Akira Yokosawa
  0 siblings, 1 reply; 8+ messages in thread
From: Paul E. McKenney @ 2016-09-12 23:28 UTC (permalink / raw)
  To: Akira Yokosawa; +Cc: perfbook

On Tue, Sep 13, 2016 at 07:12:34AM +0900, Akira Yokosawa wrote:
> On 2016/09/12 08:49:50 -0700, Paul E. McKenney wrote:
> > On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
> >> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
> >> From: Akira Yokosawa <akiyks@gmail.com>
> >> Date: Mon, 12 Sep 2016 23:39:22 +0900
> >> Subject: [PATCH] Add scripts to check 'verbbox' env usage
> >>
> >> This commit adds scripts to search modification candidates
> >> for enclosing "verbbox" environment within "figure" environment.
> >>
> >> At the top of perfbook directory, the command
> >>
> >> $ sh utilities/doverbboxcheck.sh
> >>
> >> will show \begin{figure} statements to be moved ahead of
> >> "verbbox" environment.
> >>
> >> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
> >> ---
> >>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
> >>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
> >>  2 files changed, 95 insertions(+)
> >>  create mode 100644 utilities/doverbboxcheck.sh
> >>  create mode 100644 utilities/verbboxcheck.pl
> >>
> >> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
> >> new file mode 100644
> >> index 0000000..2801bf1
> >> --- /dev/null
> >> +++ b/utilities/doverbboxcheck.sh
> >> @@ -0,0 +1,36 @@
> >> +#!/bin/sh
> >> +#
> >> +# Apply verbboxcheck.pl for all .tex files
> >> +#
> >> +# This program is free software; you can redistribute it and/or modify
> >> +# it under the terms of the GNU General Public License as published by
> >> +# the Free Software Foundation; either version 2 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 for more details.
> >> +#
> >> +# You should have received a copy of the GNU General Public License
> >> +# along with this program; if not, you can access it online at
> >> +# http://www.gnu.org/licenses/gpl-2.0.html.
> >> +#
> >> +# Copyright (C) Akira Yokosawa, 2016
> >> +#
> >> +# Authors: Akira Yokosawa <akiyks@gmain.com>
> >> +
> >> +# check if companion script exists
> >> +if ! test -e utilities/verbboxcheck.pl
> >> +then
> >> +	echo "utilities/verrboxcheck.pl not found."
> >> +	exit 1
> >> +fi
> >> +texfiles=`find . -name '*.tex' -print`
> >> +for i in $texfiles
> >> +do
> >> +	basename="${i%.tex}"
> >> +#	echo $basename
> >> +	perl ./utilities/verbboxcheck.pl $basename.tex
> >> +done
> >> +
> >> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
> >> new file mode 100644
> >> index 0000000..976a41f
> >> --- /dev/null
> >> +++ b/utilities/verbboxcheck.pl
> >> @@ -0,0 +1,59 @@
> >> +#!/usr/bin/perl
> >> +#
> >> +# Check usage pattern of "verbbox" environment
> >> +#
> >> +# This program is free software; you can redistribute it and/or modify
> >> +# it under the terms of the GNU General Public License as published by
> >> +# the Free Software Foundation; either version 2 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 for more details.
> >> +#
> >> +# You should have received a copy of the GNU General Public License
> >> +# along with this program; if not, you can access it online at
> >> +# http://www.gnu.org/licenses/gpl-2.0.html.
> >> +#
> >> +# Copyright (C) Akira Yokosawa, 2016
> >> +#
> >> +# Authors: Akira Yokosawa <akiyks@gmail.com>
> >> +
> >> +my $line_now;
> >> +my $line_prev;
> >> +my $line_prev_prev;
> >> +my $in_figure = 0;
> >> +my $interval = 0;
> >> +my $line_num;
> >> +my $fig_line;
> >> +my $fig_line_num;
> >> +my $infile = $ARGV[0];
> >> +
> >> +$line_prev_prev = <>;
> >> +$line_prev = <>;
> >> +$line_now = <>;
> >> +$line_num = 3;
> >> +
> >> +while($line_now) {
> >> +    if ($in_figure == 1) {
> > 
> > Doesn't this need to be not-equal rather than equal?  Or is the fact
> > that I haven't written perl for 20 years becoming apparent?  ;-)
> 
> Ah, this should have been
> 
> +while($line_now) {
> +    if ($in_figure) {
> 
> Also, there remain unnecessary variables I used in a preliminary version.
> I'm sending a v2 of the patch. Hope it makes more sense.

OK, please color me confused.  Don't you want to list the occurrences
of \theverbbox that are -not- within a figure?

						Thanx, Paul

> >> +	if ($line_now =~ /\\theverbbox/) {
> >> +	    print "$infile:$fig_line_num:$fig_line";
> >> +	    $in_figure = 0;
> >> +	}
> >> +	$interval++;
> >> +    }
> >> +    if ($line_now =~ /\\begin\{figure\}/) {
> >> +	$in_figure = 1;
> >> +	$fig_line = $line_now;
> >> +	$fig_line_num = $line_num;
> >> +    }
> >> +    if ($interval > 3) {
> >> +	$in_figure = 0;
> >> +	$interval = 0;
> >> +    }
> >> +    $line_prev_prev = $line_prev;
> >> +    $line_prev = $line_now;
> >> +    $line_now = <>;
> >> +    $line_num++;
> >> +}
> >> -- 
> >> 1.9.1
> >>
> > 
> > 
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-12 23:28     ` Paul E. McKenney
@ 2016-09-13 12:09       ` Akira Yokosawa
  2016-09-13 14:08         ` Paul E. McKenney
  0 siblings, 1 reply; 8+ messages in thread
From: Akira Yokosawa @ 2016-09-13 12:09 UTC (permalink / raw)
  To: paulmck; +Cc: perfbook, Akira Yokosawa

On 2016/09/13 8:28, Paul E. McKenney wrote:
> On Tue, Sep 13, 2016 at 07:12:34AM +0900, Akira Yokosawa wrote:
>> On 2016/09/12 08:49:50 -0700, Paul E. McKenney wrote:
>>> On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
>>>> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
>>>> From: Akira Yokosawa <akiyks@gmail.com>
>>>> Date: Mon, 12 Sep 2016 23:39:22 +0900
>>>> Subject: [PATCH] Add scripts to check 'verbbox' env usage
>>>>
>>>> This commit adds scripts to search modification candidates
>>>> for enclosing "verbbox" environment within "figure" environment.
>>>>
>>>> At the top of perfbook directory, the command
>>>>
>>>> $ sh utilities/doverbboxcheck.sh
>>>>
>>>> will show \begin{figure} statements to be moved ahead of
>>>> "verbbox" environment.
>>>>
>>>> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
>>>> ---
>>>>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
>>>>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
>>>>  2 files changed, 95 insertions(+)
>>>>  create mode 100644 utilities/doverbboxcheck.sh
>>>>  create mode 100644 utilities/verbboxcheck.pl
>>>>
>>>> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
>>>> new file mode 100644
>>>> index 0000000..2801bf1
>>>> --- /dev/null
>>>> +++ b/utilities/doverbboxcheck.sh
>>>> @@ -0,0 +1,36 @@
>>>> +#!/bin/sh
>>>> +#
>>>> +# Apply verbboxcheck.pl for all .tex files
>>>> +#
>>>> +# This program is free software; you can redistribute it and/or modify
>>>> +# it under the terms of the GNU General Public License as published by
>>>> +# the Free Software Foundation; either version 2 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 for more details.
>>>> +#
>>>> +# You should have received a copy of the GNU General Public License
>>>> +# along with this program; if not, you can access it online at
>>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>>>> +#
>>>> +# Copyright (C) Akira Yokosawa, 2016
>>>> +#
>>>> +# Authors: Akira Yokosawa <akiyks@gmain.com>
>>>> +
>>>> +# check if companion script exists
>>>> +if ! test -e utilities/verbboxcheck.pl
>>>> +then
>>>> +	echo "utilities/verrboxcheck.pl not found."
>>>> +	exit 1
>>>> +fi
>>>> +texfiles=`find . -name '*.tex' -print`
>>>> +for i in $texfiles
>>>> +do
>>>> +	basename="${i%.tex}"
>>>> +#	echo $basename
>>>> +	perl ./utilities/verbboxcheck.pl $basename.tex
>>>> +done
>>>> +
>>>> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
>>>> new file mode 100644
>>>> index 0000000..976a41f
>>>> --- /dev/null
>>>> +++ b/utilities/verbboxcheck.pl
>>>> @@ -0,0 +1,59 @@
>>>> +#!/usr/bin/perl
>>>> +#
>>>> +# Check usage pattern of "verbbox" environment
>>>> +#
>>>> +# This program is free software; you can redistribute it and/or modify
>>>> +# it under the terms of the GNU General Public License as published by
>>>> +# the Free Software Foundation; either version 2 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 for more details.
>>>> +#
>>>> +# You should have received a copy of the GNU General Public License
>>>> +# along with this program; if not, you can access it online at
>>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>>>> +#
>>>> +# Copyright (C) Akira Yokosawa, 2016
>>>> +#
>>>> +# Authors: Akira Yokosawa <akiyks@gmail.com>
>>>> +
>>>> +my $line_now;
>>>> +my $line_prev;
>>>> +my $line_prev_prev;
>>>> +my $in_figure = 0;
>>>> +my $interval = 0;
>>>> +my $line_num;
>>>> +my $fig_line;
>>>> +my $fig_line_num;
>>>> +my $infile = $ARGV[0];
>>>> +
>>>> +$line_prev_prev = <>;
>>>> +$line_prev = <>;
>>>> +$line_now = <>;
>>>> +$line_num = 3;
>>>> +
>>>> +while($line_now) {
>>>> +    if ($in_figure == 1) {
>>>
>>> Doesn't this need to be not-equal rather than equal?  Or is the fact
>>> that I haven't written perl for 20 years becoming apparent?  ;-)
>>
>> Ah, this should have been
>>
>> +while($line_now) {
>> +    if ($in_figure) {
>>
>> Also, there remain unnecessary variables I used in a preliminary version.
>> I'm sending a v2 of the patch. Hope it makes more sense.
> 
> OK, please color me confused.  Don't you want to list the occurrences
> of \theverbbox that are -not- within a figure?

Well, I intentionally chose the \begin{figure} lines.
As you can see in the diff of commit 510b6afde7fb ("toyrcu: Enclose
'verbbox' within 'figure'"), we need to move the \begin{figure} lines.
By listing them, we can directly jump to a line to be moved in a
text editor.
Doesn't this make sense?
Maybe I need to rephrase the commit message and comment in the script
to explain the intention.

By the way, I made a typo in the commit message of 510b6afde7fb.

The first sentence reads

> Bare "verbbox" environment just after a section heading causes
> the "afterheading"-ness of the first paragraph.

This should have been

Bare "verbbox" environment just after a section heading causes
the "afterheading"-ness of the first paragraph to be lost.

If it isn't too late, can you amend the commit message?

                                         Thanks, Akira
> 
> 						Thanx, Paul
> 
>>>> +	if ($line_now =~ /\\theverbbox/) {
>>>> +	    print "$infile:$fig_line_num:$fig_line";
>>>> +	    $in_figure = 0;
>>>> +	}
>>>> +	$interval++;
>>>> +    }
>>>> +    if ($line_now =~ /\\begin\{figure\}/) {
>>>> +	$in_figure = 1;
>>>> +	$fig_line = $line_now;
>>>> +	$fig_line_num = $line_num;
>>>> +    }
>>>> +    if ($interval > 3) {
>>>> +	$in_figure = 0;
>>>> +	$interval = 0;
>>>> +    }
>>>> +    $line_prev_prev = $line_prev;
>>>> +    $line_prev = $line_now;
>>>> +    $line_now = <>;
>>>> +    $line_num++;
>>>> +}
>>>> -- 
>>>> 1.9.1
>>>>
>>>
>>>
>>
> 
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-13 12:09       ` Akira Yokosawa
@ 2016-09-13 14:08         ` Paul E. McKenney
  2016-09-13 15:16           ` Akira Yokosawa
  0 siblings, 1 reply; 8+ messages in thread
From: Paul E. McKenney @ 2016-09-13 14:08 UTC (permalink / raw)
  To: Akira Yokosawa; +Cc: perfbook

On Tue, Sep 13, 2016 at 09:09:36PM +0900, Akira Yokosawa wrote:
> On 2016/09/13 8:28, Paul E. McKenney wrote:
> > On Tue, Sep 13, 2016 at 07:12:34AM +0900, Akira Yokosawa wrote:
> >> On 2016/09/12 08:49:50 -0700, Paul E. McKenney wrote:
> >>> On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
> >>>> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
> >>>> From: Akira Yokosawa <akiyks@gmail.com>
> >>>> Date: Mon, 12 Sep 2016 23:39:22 +0900
> >>>> Subject: [PATCH] Add scripts to check 'verbbox' env usage
> >>>>
> >>>> This commit adds scripts to search modification candidates
> >>>> for enclosing "verbbox" environment within "figure" environment.
> >>>>
> >>>> At the top of perfbook directory, the command
> >>>>
> >>>> $ sh utilities/doverbboxcheck.sh
> >>>>
> >>>> will show \begin{figure} statements to be moved ahead of
> >>>> "verbbox" environment.
> >>>>
> >>>> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
> >>>> ---
> >>>>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
> >>>>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
> >>>>  2 files changed, 95 insertions(+)
> >>>>  create mode 100644 utilities/doverbboxcheck.sh
> >>>>  create mode 100644 utilities/verbboxcheck.pl
> >>>>
> >>>> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
> >>>> new file mode 100644
> >>>> index 0000000..2801bf1
> >>>> --- /dev/null
> >>>> +++ b/utilities/doverbboxcheck.sh
> >>>> @@ -0,0 +1,36 @@
> >>>> +#!/bin/sh
> >>>> +#
> >>>> +# Apply verbboxcheck.pl for all .tex files
> >>>> +#
> >>>> +# This program is free software; you can redistribute it and/or modify
> >>>> +# it under the terms of the GNU General Public License as published by
> >>>> +# the Free Software Foundation; either version 2 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 for more details.
> >>>> +#
> >>>> +# You should have received a copy of the GNU General Public License
> >>>> +# along with this program; if not, you can access it online at
> >>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
> >>>> +#
> >>>> +# Copyright (C) Akira Yokosawa, 2016
> >>>> +#
> >>>> +# Authors: Akira Yokosawa <akiyks@gmain.com>
> >>>> +
> >>>> +# check if companion script exists
> >>>> +if ! test -e utilities/verbboxcheck.pl
> >>>> +then
> >>>> +	echo "utilities/verrboxcheck.pl not found."
> >>>> +	exit 1
> >>>> +fi
> >>>> +texfiles=`find . -name '*.tex' -print`
> >>>> +for i in $texfiles
> >>>> +do
> >>>> +	basename="${i%.tex}"
> >>>> +#	echo $basename
> >>>> +	perl ./utilities/verbboxcheck.pl $basename.tex
> >>>> +done
> >>>> +
> >>>> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
> >>>> new file mode 100644
> >>>> index 0000000..976a41f
> >>>> --- /dev/null
> >>>> +++ b/utilities/verbboxcheck.pl
> >>>> @@ -0,0 +1,59 @@
> >>>> +#!/usr/bin/perl
> >>>> +#
> >>>> +# Check usage pattern of "verbbox" environment
> >>>> +#
> >>>> +# This program is free software; you can redistribute it and/or modify
> >>>> +# it under the terms of the GNU General Public License as published by
> >>>> +# the Free Software Foundation; either version 2 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 for more details.
> >>>> +#
> >>>> +# You should have received a copy of the GNU General Public License
> >>>> +# along with this program; if not, you can access it online at
> >>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
> >>>> +#
> >>>> +# Copyright (C) Akira Yokosawa, 2016
> >>>> +#
> >>>> +# Authors: Akira Yokosawa <akiyks@gmail.com>
> >>>> +
> >>>> +my $line_now;
> >>>> +my $line_prev;
> >>>> +my $line_prev_prev;
> >>>> +my $in_figure = 0;
> >>>> +my $interval = 0;
> >>>> +my $line_num;
> >>>> +my $fig_line;
> >>>> +my $fig_line_num;
> >>>> +my $infile = $ARGV[0];
> >>>> +
> >>>> +$line_prev_prev = <>;
> >>>> +$line_prev = <>;
> >>>> +$line_now = <>;
> >>>> +$line_num = 3;
> >>>> +
> >>>> +while($line_now) {
> >>>> +    if ($in_figure == 1) {
> >>>
> >>> Doesn't this need to be not-equal rather than equal?  Or is the fact
> >>> that I haven't written perl for 20 years becoming apparent?  ;-)
> >>
> >> Ah, this should have been
> >>
> >> +while($line_now) {
> >> +    if ($in_figure) {
> >>
> >> Also, there remain unnecessary variables I used in a preliminary version.
> >> I'm sending a v2 of the patch. Hope it makes more sense.
> > 
> > OK, please color me confused.  Don't you want to list the occurrences
> > of \theverbbox that are -not- within a figure?
> 
> Well, I intentionally chose the \begin{figure} lines.
> As you can see in the diff of commit 510b6afde7fb ("toyrcu: Enclose
> 'verbbox' within 'figure'"), we need to move the \begin{figure} lines.
> By listing them, we can directly jump to a line to be moved in a
> text editor.
> Doesn't this make sense?
> Maybe I need to rephrase the commit message and comment in the script
> to explain the intention.

You know, I am just going to assume that I am suffering from jet lag.
I pulled v2 of your patch, fixed the whitespace error, and pushed it out.

But if anyone complains about these scripts, I am sending them straight
to you.  ;-)

> By the way, I made a typo in the commit message of 510b6afde7fb.
> 
> The first sentence reads
> 
> > Bare "verbbox" environment just after a section heading causes
> > the "afterheading"-ness of the first paragraph.
> 
> This should have been
> 
> Bare "verbbox" environment just after a section heading causes
> the "afterheading"-ness of the first paragraph to be lost.
> 
> If it isn't too late, can you amend the commit message?

Done and pushed.  But yes, you got lucky.  I have been making changes
on another branch.  ;-)

								Thanx, Paul

>                                          Thanks, Akira
> > 
> > 						Thanx, Paul
> > 
> >>>> +	if ($line_now =~ /\\theverbbox/) {
> >>>> +	    print "$infile:$fig_line_num:$fig_line";
> >>>> +	    $in_figure = 0;
> >>>> +	}
> >>>> +	$interval++;
> >>>> +    }
> >>>> +    if ($line_now =~ /\\begin\{figure\}/) {
> >>>> +	$in_figure = 1;
> >>>> +	$fig_line = $line_now;
> >>>> +	$fig_line_num = $line_num;
> >>>> +    }
> >>>> +    if ($interval > 3) {
> >>>> +	$in_figure = 0;
> >>>> +	$interval = 0;
> >>>> +    }
> >>>> +    $line_prev_prev = $line_prev;
> >>>> +    $line_prev = $line_now;
> >>>> +    $line_now = <>;
> >>>> +    $line_num++;
> >>>> +}
> >>>> -- 
> >>>> 1.9.1
> >>>>
> >>>
> >>>
> >>
> > 
> > 
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] Add scripts to check 'verbbox' env usage
  2016-09-13 14:08         ` Paul E. McKenney
@ 2016-09-13 15:16           ` Akira Yokosawa
  0 siblings, 0 replies; 8+ messages in thread
From: Akira Yokosawa @ 2016-09-13 15:16 UTC (permalink / raw)
  To: paulmck; +Cc: perfbook, Akira Yokosawa

On 2016/09/13 23:08, Paul E. McKenney wrote:
> On Tue, Sep 13, 2016 at 09:09:36PM +0900, Akira Yokosawa wrote:
>> On 2016/09/13 8:28, Paul E. McKenney wrote:
>>> On Tue, Sep 13, 2016 at 07:12:34AM +0900, Akira Yokosawa wrote:
>>>> On 2016/09/12 08:49:50 -0700, Paul E. McKenney wrote:
>>>>> On Tue, Sep 13, 2016 at 12:08:11AM +0900, Akira Yokosawa wrote:
>>>>>> >From 177cdd60c2cfe8798547ad260bb821feeb896133 Mon Sep 17 00:00:00 2001
>>>>>> From: Akira Yokosawa <akiyks@gmail.com>
>>>>>> Date: Mon, 12 Sep 2016 23:39:22 +0900
>>>>>> Subject: [PATCH] Add scripts to check 'verbbox' env usage
>>>>>>
>>>>>> This commit adds scripts to search modification candidates
>>>>>> for enclosing "verbbox" environment within "figure" environment.
>>>>>>
>>>>>> At the top of perfbook directory, the command
>>>>>>
>>>>>> $ sh utilities/doverbboxcheck.sh
>>>>>>
>>>>>> will show \begin{figure} statements to be moved ahead of
>>>>>> "verbbox" environment.
>>>>>>
>>>>>> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
>>>>>> ---
>>>>>>  utilities/doverbboxcheck.sh | 36 +++++++++++++++++++++++++++
>>>>>>  utilities/verbboxcheck.pl   | 59 +++++++++++++++++++++++++++++++++++++++++++++
>>>>>>  2 files changed, 95 insertions(+)
>>>>>>  create mode 100644 utilities/doverbboxcheck.sh
>>>>>>  create mode 100644 utilities/verbboxcheck.pl
>>>>>>
>>>>>> diff --git a/utilities/doverbboxcheck.sh b/utilities/doverbboxcheck.sh
>>>>>> new file mode 100644
>>>>>> index 0000000..2801bf1
>>>>>> --- /dev/null
>>>>>> +++ b/utilities/doverbboxcheck.sh
>>>>>> @@ -0,0 +1,36 @@
>>>>>> +#!/bin/sh
>>>>>> +#
>>>>>> +# Apply verbboxcheck.pl for all .tex files
>>>>>> +#
>>>>>> +# This program is free software; you can redistribute it and/or modify
>>>>>> +# it under the terms of the GNU General Public License as published by
>>>>>> +# the Free Software Foundation; either version 2 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 for more details.
>>>>>> +#
>>>>>> +# You should have received a copy of the GNU General Public License
>>>>>> +# along with this program; if not, you can access it online at
>>>>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>>>>>> +#
>>>>>> +# Copyright (C) Akira Yokosawa, 2016
>>>>>> +#
>>>>>> +# Authors: Akira Yokosawa <akiyks@gmain.com>
>>>>>> +
>>>>>> +# check if companion script exists
>>>>>> +if ! test -e utilities/verbboxcheck.pl
>>>>>> +then
>>>>>> +	echo "utilities/verrboxcheck.pl not found."
>>>>>> +	exit 1
>>>>>> +fi
>>>>>> +texfiles=`find . -name '*.tex' -print`
>>>>>> +for i in $texfiles
>>>>>> +do
>>>>>> +	basename="${i%.tex}"
>>>>>> +#	echo $basename
>>>>>> +	perl ./utilities/verbboxcheck.pl $basename.tex
>>>>>> +done
>>>>>> +
>>>>>> diff --git a/utilities/verbboxcheck.pl b/utilities/verbboxcheck.pl
>>>>>> new file mode 100644
>>>>>> index 0000000..976a41f
>>>>>> --- /dev/null
>>>>>> +++ b/utilities/verbboxcheck.pl
>>>>>> @@ -0,0 +1,59 @@
>>>>>> +#!/usr/bin/perl
>>>>>> +#
>>>>>> +# Check usage pattern of "verbbox" environment
>>>>>> +#
>>>>>> +# This program is free software; you can redistribute it and/or modify
>>>>>> +# it under the terms of the GNU General Public License as published by
>>>>>> +# the Free Software Foundation; either version 2 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 for more details.
>>>>>> +#
>>>>>> +# You should have received a copy of the GNU General Public License
>>>>>> +# along with this program; if not, you can access it online at
>>>>>> +# http://www.gnu.org/licenses/gpl-2.0.html.
>>>>>> +#
>>>>>> +# Copyright (C) Akira Yokosawa, 2016
>>>>>> +#
>>>>>> +# Authors: Akira Yokosawa <akiyks@gmail.com>
>>>>>> +
>>>>>> +my $line_now;
>>>>>> +my $line_prev;
>>>>>> +my $line_prev_prev;
>>>>>> +my $in_figure = 0;
>>>>>> +my $interval = 0;
>>>>>> +my $line_num;
>>>>>> +my $fig_line;
>>>>>> +my $fig_line_num;
>>>>>> +my $infile = $ARGV[0];
>>>>>> +
>>>>>> +$line_prev_prev = <>;
>>>>>> +$line_prev = <>;
>>>>>> +$line_now = <>;
>>>>>> +$line_num = 3;
>>>>>> +
>>>>>> +while($line_now) {
>>>>>> +    if ($in_figure == 1) {
>>>>>
>>>>> Doesn't this need to be not-equal rather than equal?  Or is the fact
>>>>> that I haven't written perl for 20 years becoming apparent?  ;-)
>>>>
>>>> Ah, this should have been
>>>>
>>>> +while($line_now) {
>>>> +    if ($in_figure) {
>>>>
>>>> Also, there remain unnecessary variables I used in a preliminary version.
>>>> I'm sending a v2 of the patch. Hope it makes more sense.
>>>
>>> OK, please color me confused.  Don't you want to list the occurrences
>>> of \theverbbox that are -not- within a figure?
>>
>> Well, I intentionally chose the \begin{figure} lines.
>> As you can see in the diff of commit 510b6afde7fb ("toyrcu: Enclose
>> 'verbbox' within 'figure'"), we need to move the \begin{figure} lines.
>> By listing them, we can directly jump to a line to be moved in a
>> text editor.
>> Doesn't this make sense?
>> Maybe I need to rephrase the commit message and comment in the script
>> to explain the intention.
> 
> You know, I am just going to assume that I am suffering from jet lag.
> I pulled v2 of your patch, fixed the whitespace error, and pushed it out.
> 
> But if anyone complains about these scripts, I am sending them straight
> to you.  ;-)

Alright!
And I missed the whitespece error. My bad.

> 
>> By the way, I made a typo in the commit message of 510b6afde7fb.
>>
>> The first sentence reads
>>
>>> Bare "verbbox" environment just after a section heading causes
>>> the "afterheading"-ness of the first paragraph.
>>
>> This should have been
>>
>> Bare "verbbox" environment just after a section heading causes
>> the "afterheading"-ness of the first paragraph to be lost.
>>
>> If it isn't too late, can you amend the commit message?
> 
> Done and pushed.  But yes, you got lucky.  I have been making changes
> on another branch.  ;-)

Thank you so much.

And I'm sending a pull request of the other modification to enclose "verbbox"
withing "figure" env. It's somewhat large, but utilities/doverbboxcheck.sh
would be of your help I hope (as long as you trust the script...)

                                         Many thanks, Akira

> 
> 								Thanx, Paul
> 
>>                                          Thanks, Akira
>>>
>>> 						Thanx, Paul
>>>
>>>>>> +	if ($line_now =~ /\\theverbbox/) {
>>>>>> +	    print "$infile:$fig_line_num:$fig_line";
>>>>>> +	    $in_figure = 0;
>>>>>> +	}
>>>>>> +	$interval++;
>>>>>> +    }
>>>>>> +    if ($line_now =~ /\\begin\{figure\}/) {
>>>>>> +	$in_figure = 1;
>>>>>> +	$fig_line = $line_now;
>>>>>> +	$fig_line_num = $line_num;
>>>>>> +    }
>>>>>> +    if ($interval > 3) {
>>>>>> +	$in_figure = 0;
>>>>>> +	$interval = 0;
>>>>>> +    }
>>>>>> +    $line_prev_prev = $line_prev;
>>>>>> +    $line_prev = $line_now;
>>>>>> +    $line_now = <>;
>>>>>> +    $line_num++;
>>>>>> +}
>>>>>> -- 
>>>>>> 1.9.1
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>
> 
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-09-13 15:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-12 15:08 [PATCH] Add scripts to check 'verbbox' env usage Akira Yokosawa
2016-09-12 15:49 ` Paul E. McKenney
2016-09-12 22:12   ` Akira Yokosawa
2016-09-12 23:28     ` Paul E. McKenney
2016-09-13 12:09       ` Akira Yokosawa
2016-09-13 14:08         ` Paul E. McKenney
2016-09-13 15:16           ` Akira Yokosawa
2016-09-12 22:15 ` [PATCH v2] " Akira Yokosawa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.