Blame doc/sidebar.awk

Packit Service f629e6
# sidebar.awk --- add support for sidebars, other stuff to gawk.texi
Packit Service f629e6
Packit Service f629e6
# Copyright (C) 2013, 2016 the Free Software Foundation, Inc.
Packit Service f629e6
# 
Packit Service f629e6
# This file is part of GAWK, the GNU implementation of the
Packit Service f629e6
# AWK Programming Language.
Packit Service f629e6
# 
Packit Service f629e6
# GAWK is free software; you can redistribute it and/or modify
Packit Service f629e6
# it under the terms of the GNU General Public License as published by
Packit Service f629e6
# the Free Software Foundation; either version 3 of the License, or
Packit Service f629e6
# (at your option) any later version.
Packit Service f629e6
# 
Packit Service f629e6
# GAWK is distributed in the hope that it will be useful,
Packit Service f629e6
# but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service f629e6
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit Service f629e6
# GNU General Public License for more details.
Packit Service f629e6
# 
Packit Service f629e6
# You should have received a copy of the GNU General Public License
Packit Service f629e6
# along with this program; if not, write to the Free Software
Packit Service f629e6
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
Packit Service f629e6
Packit Service f629e6
BEGIN {
Packit Service f629e6
	print "% ****************************************************"
Packit Service f629e6
	print "% * DO NOT MODIFY THIS FILE!!!!                      *"
Packit Service f629e6
	print "% * It was generated from gawktexi.in by sidebar.awk *"
Packit Service f629e6
	print "% * Edit gawktexi.in instead.                        *"
Packit Service f629e6
	print "% ****************************************************"
Packit Service f629e6
}
Packit Service f629e6
Packit Service f629e6
/^@sidebar/ {
Packit Service f629e6
	sub(/^@sidebar[ \t]+/, "", $0)
Packit Service f629e6
	title = $0
Packit Service f629e6
	body = ""
Packit Service f629e6
	collecting = 1
Packit Service f629e6
	next
Packit Service f629e6
}
Packit Service f629e6
Packit Service f629e6
/^@end[ \t]+sidebar[ \t]*$/ {
Packit Service f629e6
	collecting = 0
Packit Service f629e6
	printf "@cindex sidebar, %s\n", title
Packit Service f629e6
	printf "@ifdocbook\n"
Packit Service f629e6
		printf "@docbook\n"
Packit Service f629e6
		printf "<sidebar><title>%s</title>\n", title
Packit Service f629e6
		printf "@end docbook\n"
Packit Service f629e6
			print  body
Packit Service f629e6
		print ""
Packit Service f629e6
		printf "@docbook\n"
Packit Service f629e6
		printf "</sidebar>\n"
Packit Service f629e6
		printf "@end docbook\n"
Packit Service f629e6
	printf "@end ifdocbook\n\n"
Packit Service f629e6
Packit Service f629e6
	printf "@ifnotdocbook\n"
Packit Service f629e6
		printf "@cartouche\n"
Packit Service f629e6
		printf "@center @b{%s}\n\n", title
Packit Service f629e6
			print  body
Packit Service f629e6
		printf "@end cartouche\n"
Packit Service f629e6
	printf "@end ifnotdocbook\n"
Packit Service f629e6
	body = ""
Packit Service f629e6
	next
Packit Service f629e6
}
Packit Service f629e6
Packit Service f629e6
collecting == 1 {
Packit Service f629e6
	body = body RS $0
Packit Service f629e6
	next
Packit Service f629e6
}
Packit Service f629e6
Packit Service f629e6
{ print }