git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 2/7] Documentation: modernize cat-texi.perl

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Jan 21, 2017, 21:59 UTC
Message-ID
<20170121215912.246691-3-sandals@crustytoothpaste.net>
In-Reply-To
<20170121215912.246691-1-sandals@crustytoothpaste.net>

Good style for Perl includes using the strict and warnings pragmas, and preferring lexical file handles over bareword file handles. Using lexical file handles necessitates being explicit when $_ is printed, so that Perl does not get confused and instead print the glob ref.

The benefit of this modernization is that a formerly obscured bug is now visible, which will be fixed in a followup patch.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 Documentation/cat-texi.perl | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/Documentation/cat-texi.perl b/Documentation/cat-texi.perl
index b1fe52e8b..1bc84d3c7 100755
--- a/Documentation/cat-texi.perl
+++ b/Documentation/cat-texi.perl
@@ -1,9 +1,12 @@
 #!/usr/bin/perl -w
 
+use strict;
+use warnings;
+
 my @menu = ();
 my $output = $ARGV[0];
 
-open TMP, '>', "$output.tmp";
+open my $tmp, '>', "$output.tmp";
 
 while (<STDIN>) {
 	next if (/^\\input texinfo/../\@node Top/);
@@ -13,9 +16,9 @@ while (<STDIN>) {
 	}
 	s/\(\@pxref\{\[(URLS|REMOTES)\]}\)//;
 	s/\@anchor\{[^{}]*\}//g;
-	print TMP;
+	print $tmp $_;
 }
-close TMP;
+close $tmp;
 
 printf '\input texinfo
 @setfilename gitman.info
@@ -34,10 +37,10 @@ for (@menu) {
 	print "* ${_}::\n";
 }
 print "\@end menu\n";
-open TMP, '<', "$output.tmp";
-while (<TMP>) {
+open $tmp, '<', "$output.tmp";
+while (<$tmp>) {
 	print;
 }
-close TMP;
+close $tmp;
 print "\@bye\n";
 unlink "$output.tmp";
Previous: brian m. carlsonNext: brian m. carlson
Message 3 of 9 in “Macro for Asciidoctor support”
  1. 0/7 Macro for Asciidoctor supportbrian m. carlson, Jan 21, 2017
  2. 3/7 Documentation: remove unneeded argument in cat-texi.perlbrian m. carlson, Jan 21, 2017
  3. 2/7 Documentation: modernize cat-texi.perlbrian m. carlson, Jan 21, 2017
  4. 1/7 Documentation: fix warning in cat-texi.perlbrian m. carlson, Jan 21, 2017
  5. 4/7 Documentation: sort sources for gitman.texibrian m. carlson, Jan 21, 2017
  6. 7/7 Makefile: add a knob to enable the use of Asciidoctorbrian m. carlson, Jan 21, 2017
  7. 5/7 Documentation: add XSLT to fix DocBook for Texinfobrian m. carlson, Jan 21, 2017
  8. 6/7 Documentation: move dblatex arguments into variablebrian m. carlson, Jan 21, 2017
  9. Øyvind A. HolmJan 22, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.