* [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.