Remove obsolete revision histories from source file headers

This commit is contained in:
Thomas Jensen 2015-01-11 23:15:48 +01:00
parent 793be8322c
commit 90f967adb3
14 changed files with 30 additions and 753 deletions

View File

@ -2,13 +2,11 @@
* File: boxes.c
* Date created: March 18, 1999 (Thursday, 15:09h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: boxes.c,v 1.39 2006/08/28 15:53:46 tsjensen Exp $
* Language: ANSI C
* Platforms: sunos5/sparc, for now
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Filter to draw boxes around input text (and remove it).
*
* Remarks: o This program is free software; you can redistribute it
* License: o 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
@ -41,191 +39,6 @@
* And again, changing this would pretty much mean a total
* rewrite.
*
* Revision History:
*
* $Log: boxes.c,v $
* Revision 1.39 2006/08/28 15:53:46 tsjensen
* Added support for --help and -? options, which do the same as -h
* (This feature was requested by Raphael Wimmer).
*
* Revision 1.38 2006/07/22 19:40:40 tsjensen
* Applied patch by Christoph Dreyer to support unexpansion of leading tabs
* Added ability to retain leading tabs in their original positions
* Mending a box with -m now implies -k false
*
* Revision 1.37 2006/07/12 05:49:50 tsjensen
* Updated email and web addresses in comment header etc.
* Applied patch by Elmar Loos that adds -m option for mending a box
* Changed a few more things to make the box mending patch work in
* connection with all the other boxes options
*
* Revision 1.36 2000-04-01 10:27:17-08 tsjensen
* Added -c option (simple comment definition)
*
* Revision 1.35 2000/03/21 14:26:31 tsjensen
* Minor change to make boxes compile on DEC/OSF, too (S_ISDIR)
*
* Revision 1.34 2000/03/17 23:44:26 tsjensen
* Port to Win32 platform based on patches by Ron Aaron
* Changes only affect Win32 version. Win32 behavior differs from the UNIX
* platforms in the way the config file is searched and the config file
* name (boxes.cfg).
*
* Revision 1.33 1999/09/10 19:21:05 tsjensen
* Eliminated use of PATH_MAX in order to ease porting
* Restructured infile/outfile code to eliminate need for access() function
* and improve readability
* Added file type check before reading config file. boxes used to generate
* a weird error message if the config file is a directory
*
* Revision 1.32 1999/08/22 11:34:46 tsjensen
* Bugfix: no-input-check must take place before indentation computation
*
* Revision 1.31 1999/08/21 23:33:03 tsjensen
* Added usage of system-wide config file (GLOBALCONF from boxes.h)
* Moved config file selection code into it own function (get_config_file())
*
* Revision 1.30 1999/08/21 15:55:42 tsjensen
* Updated usage information
* Updated quickinfo (-l -d) with killblank default value
* Made indentation computation into a function of its own (get_indent())
* Bugfix: REVERSION code may change indentation -> recompute if necessary
*
* Revision 1.29 1999/08/16 18:29:39 tsjensen
* Added output of total number of designs for -l
*
* Revision 1.28 1999/07/23 16:15:48 tsjensen
* Added quickinfo mode to list_styles(). Called with -l and -d together.
*
* Revision 1.27 1999/07/21 16:53:17 tsjensen
* Bugfix: Empty box sides were still counted when -s was specified (so
* -s x5 would get you only three lines).
*
* Revision 1.26 1999/07/20 18:45:29 tsjensen
* Added GNU GPL disclaimer
* Added -k option (kill leading/trailing blank lines on removal yes/no)
* Bugfix: REPLACE and indentation conflict. Now applying regexp substitutions
* only after indentation was already handled.
*
* Revision 1.25 1999/07/12 18:16:36 tsjensen
* Added include "config.h" to top of file
*
* Revision 1.24 1999/06/30 12:37:25 tsjensen
* Added [lcr] "shorthand" to -a option
*
* Revision 1.23 1999/06/30 12:16:38 tsjensen
* Removed entire select_design stuff, because the parser now returns much
* smaller data structures. The first design pointed to by designs is always
* the one we need (except for ops on *all* designs).
* The first design in config file is now default design (no DEF_DESIGN anymore).
*
* Revision 1.22 1999/06/28 12:19:29 tsjensen
* Moved parser init and cleanup from main() to parser.y
* Some further cleanup in main()
*
* Revision 1.21 1999/06/25 18:46:39 tsjensen
* Bugfix: Mixed up SW and NE in padding calculation (tricky, that one)
* Added indent mode command line option for grammar overrides
* Moved empty_side() to shape.c after small change in signature
* Added text-in-block justification (j) to alignment option (-a)
*
* Revision 1.20 1999/06/23 19:17:27 tsjensen
* Removed snprintf() and vsnprintf() prototypes (why were they in anyway?)
* along with stdarg.h include
* Exported input global data and empty_side() function
* Declared non-exported functions static
* Moved horiz_precalc(), vert_precalc(), horiz_assemble(), vert_assemble(),
* horiz_generate(), vert_generate(), generate_box() and output_box() to a
* new file generate.c
* Moved best_match(), hmm(), detect_horiz(), detect_design(), remove_box()
* and output_input() to a new file remove.c
*
* Revision 1.19 1999/06/23 12:31:26 tsjensen
* Improvements on design detection (could still be better though)
* Moved iscorner(), on_side(), isempty(), shapecmp(), both_on_side(),
* shape_distance(), empty_side(), highest(), and widest() as well as
* some data structures and macros related to shapes to new file shape.c
*
* Revision 1.18 1999/06/22 12:03:33 tsjensen
* DEBUGging is now activated in boxes.h
* Moved MAX_TABSTOP, LINE_MAX macros and struct opt_t to boxes.h
* Moved BMAX, strrstr(), btrim(), yyerror(), expand_tabs_into(),
* regerror(), empty_line() to a new file tools.c, added #include tools.h
* Some cleanup in main()
* Declared style_sort() helper function static
* Renamed strrstr() to my_strnrstr() (now defined in tools.c)
* Default design is now defined by DEF_DESIGN macro
* Changed select_design(), because default design value now set in process_commandline()
* Bugfix: segfaulted if shape was bigger than input when detecting design
* Bugfix: Padding was not removed when box was removed
* Bugfix: Forgot null byte when removing west box side
*
* Revision 1.17 1999/06/20 14:20:29 tsjensen
* Added code for padding handling (-p)
* Added BMAX macro (returns maximum of two values)
*
* Revision 1.16 1999/06/17 19:07:06 tsjensen
* Moved line_t to boxes.h
* empty_line() now also considers \r and \n whitespace
* Added empty_side() function
* Added handling of empty box sides in output_box()
*
* Revision 1.15 1999/06/15 12:07:39 tsjensen
* Removed a stray debug message
* Move apply_substitutions() regexp handling function up in file
* Use apply_substitutions() in read_input() routine also
* Moved "extern int yyparse()" prototype to start of file
*
* Revision 1.14 1999/06/14 12:08:49 tsjensen
* Bugfix: best_match() box side detection used numw instead of nume
* Added apply_substitutions() routine for central regexp handling
* Added regexp reversion code for box removal
* Unified use of current_re[pv]rule
* Added a few comments and debugging code
*
* Revision 1.13 1999/06/13 15:28:31 tsjensen
* Some error message clean-up
* Regular expression substitutions on input text only if *drawing* a box,
* not if the box is to be removed (requires other substitutions, todo).
* Added code for box design auto-detection when removing a box.
*
* Revision 1.12 1999/06/04 18:13:26 tsjensen
* Don't adjust indentation after removing a box unless something was
* removed on the west side
* East Padding made dynamic, i.e. dependant on the east side size
*
* Revision 1.11 1999/06/03 19:24:14 tsjensen
* A few fixes related to box removal (as expected)
*
* Revision 1.10 1999/06/03 18:54:05 tsjensen
* Lots of fixes
* Added remove box functionality (-r), which remains to be tested
*
* Revision 1.9 1999/04/09 13:33:24 tsjensen
* Removed code related to OFFSET blocks (obsolete)
*
* Revision 1.8 1999/04/04 16:09:01 tsjensen
* Added code for specification of indentation handling of input
* Added regular expression substitutions
* Some minor fixes
*
* Revision 1.7 1999/04/02 18:42:44 tsjensen
* Added infile/outfile parameter code (pasted from tal, more or less)
* Added code to remove trailing spaces from output lines
*
* Revision 1.6 1999/04/01 17:26:18 tsjensen
* Some bug fixes
* Added size option (-s)
* Added Alignment Option (-a)
* It seems actually usable for drawing boxes :-)
*
* Revision 1.4 1999/03/30 13:30:19 tsjensen
* Added minimum width/height for a design. Fixed screwed tiny boxes.
* Bugfix: Did not handle zero input.
*
* Revision 1.1 1999/03/18 15:09:17 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -2,12 +2,11 @@
* File: boxes.h
* Date created: March 18, 1999 (Thursday, 15:09h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: boxes.h.in,v 1.22 2006/07/22 19:15:52 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Project-wide globals and data structures
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -20,93 +19,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: boxes.h.in,v $
* Revision 1.22 2006/07/22 19:15:52 tsjensen
* Fix: Renamed yylineno to tjlineno to enable compilation on certain
* flexes (reported by Andreas Heiduk)
* Added tabexp to opt_t
* Added tabpos and tabpos_len to line_t for advanced tab handling
*
* Revision 1.21 2006/07/12 05:44:12 tsjensen
* Updated email and web addresses in comment header
* Added new member 'mend' to opt_t (for option -m, mend box)
*
* Revision 1.20 2000-04-01 10:28:18-08 tsjensen
* Added cld member to command line option struct (-c option)
*
* Revision 1.19 2000/03/17 23:43:13 tsjensen
* Added vim autocommand to set syntax highlighting to C
*
* Revision 1.18 1999/08/21 23:37:23 tsjensen
* Renamed file from boxes.h to boxes.h.in
* VERSION and GLOBALCONF values are now put in by top level Makefile
*
* Revision 1.17 1999/08/14 19:31:23 tsjensen
* Incremented beta version number to 5
* Added maxshapeheight member to design_t struct
*
* Revision 1.16 1999/07/20 18:48:46 tsjensen
* Added GNU GPL disclaimer
* Updated beta version number :-)
* Added killblank member to global options
*
* Revision 1.15 1999/06/30 12:19:12 tsjensen
* Removed DEF_DESIGN macro, because it now defaults to first design
* Removed some porting code, hoping for autoconf future
* Added PARSER_DEBUG and LEXER_DEBUG macros
*
* Revision 1.14 1999/06/25 18:51:04 tsjensen
* Removed empty_side() prototype (now in shape.h)
* Added indentmode and justify members to command line options struct
*
* Revision 1.13 1999/06/23 19:21:15 tsjensen
* Now exporting anz_designs, input, and empty_side()
* Added #include regexp.h back
*
* Revision 1.12 1999/06/23 12:33:49 tsjensen
* Moved some data structures and macros related to shapes to shape.h
* Added #ifdef DEBUG around __TJ() macro for convenience
*
* Revision 1.11 1999/06/22 12:01:24 tsjensen
* Added DEF_DESIGN (default design name)
* Added opt_t and opt global variable from boxes.c
* Moved BFREE macro and yyerror() and empty_line() prototypes to tools.h
* Added LINE_MAX and MAX_TABSTOP macros from boxes.c
* Added #define DEBUG and REGEXP_DEBUG. This will centrally activate
* debugging.
*
* Revision 1.10 1999/06/20 14:19:31 tsjensen
* Added padding member to design struct
*
* Revision 1.9 1999/06/17 19:08:50 tsjensen
* Removed #pragma ident "string"
* Changed VERSION to 1.0 beta
* Added line_t and empty_line() prototype
*
* Revision 1.8 1999/06/14 12:11:54 tsjensen
* Added struct members for regexp reversion code
* Renamed current_reprule to current_rule, now used for both directions
*
* Revision 1.6 1999/04/09 13:32:55 tsjensen
* Removed code related to OFFSET blocks (obsolete)
*
* Revision 1.5 1999/04/04 16:10:51 tsjensen
* Added some flags to design structure
* Move default settings here from boxes.c
*
* Revision 1.4 1999/03/31 17:34:43 tsjensen
* ... still programming ...
* Added minwidth and minheight to design structure
*
* Revision 1.3 1999/03/30 09:36:58 tsjensen
* ... still programming ...
* It drew a correct box for the first time!
*
* Revision 1.1 1999/03/18 15:09:34 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 20:10h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: generate.c,v 1.11 2006/07/22 19:21:13 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Box generation, i.e. the drawing of boxes
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,51 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: generate.c,v $
* Revision 1.11 2006/07/22 19:21:13 tsjensen
* Applied patch by Christoph Dreyer to support unexpansion of leading tabs
* Added ability to retain existing tabs
*
* Revision 1.10 2006/07/12 05:42:28 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.9 1999-08-31 08:37:01-07 tsjensen
* Applied Joe Zbiciak's patches to remove all snprintf()s and variants
* Replaced snprintf() calls with calls to concat_strings() in the process
*
* Revision 1.8 1999/08/22 11:36:45 tsjensen
* Removed const from 2nd parameter of justify_line() function
*
* Revision 1.7 1999/08/21 16:04:24 tsjensen
* Bugfix: justify_line() still didn't work right. It should now. (This time I
* discovered that indentmode=="text" was confusing it. Arghh!)
*
* Revision 1.6 1999/08/18 15:37:09 tsjensen
* Bugfix: justify_line() still didn't work right. It should now. (Man, I got
* a strong sense of déja vu! Weird ...)
*
* Revision 1.5 1999/08/16 18:30:32 tsjensen
* Bugfix: justify_line() still didn't work right. It should now.
*
* Revision 1.4 1999/07/21 16:50:48 tsjensen
* Added GNU GPL disclaimer
* Bugfix: When doing the line justification in output_box(), the padding
* was counted as part of the modifyable inner part of the box instead of
* the fixed box itself, which resulted in strange bugs (tricky one).
*
* Revision 1.3 1999/06/25 18:42:50 tsjensen
* Added justify_line() function for alignment of lines inside the text block
* Cleaned up hfill calculation in output_box()
* Changed parameters of empty_side() calls to comply with new signature
*
* Revision 1.2 1999/06/23 19:23:55 tsjensen
* Added output_box() from boxes.c
*
* Revision 1.1 1999/06/23 18:52:54 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 20:12h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: generate.h,v 1.4 2006/07/12 05:41:52 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Box generation, i.e. the drawing of boxes
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,21 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: generate.h,v $
* Revision 1.4 2006/07/12 05:41:52 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.3 1999-08-14 12:30:01-07 tsjensen
* Added GNU GPL disclaimer
*
* Revision 1.2 1999/06/25 18:45:12 tsjensen
* Added output_box() function
*
* Revision 1.1 1999/06/23 18:53:03 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: July 01, 1999 (Thursday, 13:43h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: lexer.h,v 1.5 2006/07/12 05:33:12 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Export symbols used by the parser files only
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,26 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: lexer.h,v $
* Revision 1.5 2006/07/12 05:33:12 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.4 1999-08-18 08:42:46-07 tsjensen
* Added LEX_SDELIM macro (valid string delimiter characters)
* Added prototype for chg_strdelims()
*
* Revision 1.3 1999/08/14 19:06:26 tsjensen
* Added GNU GPL disclaimer
* Added yylex() declaration to please compiler
*
* Revision 1.2 1999/07/03 16:12:19 tsjensen
* Renamed file from parser.h to lexer.h
*
* Revision 1.1 1999/07/02 11:47:11 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,11 +3,11 @@
* File: lexer.l
* Date created: March 15, 1999 (Monday, 17:16h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: lexer.l,v 1.19 2006/07/22 19:31:25 tsjensen Exp $
* Language: lex (ANSI C)
* Web Site: http://boxes.thomasjensen.com/
* Purpose: flex lexical analyzer for boxes configuration files
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -19,86 +19,10 @@
* License along with this program; if not, write to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
* - We don't use the yylineno %option. It is not only inefficient,
*
* Remarks: - We don't use the yylineno %option. It is not only inefficient,
* but also doesn't work. :-| *doh*
*
* Revision History:
*
* $Log: lexer.l,v $
* Revision 1.19 2006/07/22 19:31:25 tsjensen
* Fix: Renamed yylineno to tjlineno to enable compilation on certain
* flexes (reported by Andreas Heiduk)
*
* Revision 1.18 2006/07/07 07:24:17 tsjensen
* Applied patch by Andreas Heiduk to facilitate compilation with
* present-day flexes
*
* Revision 1.17 1999/08/20 19:51:12 tsjensen
* Moved contents of YY_USER_INIT definition into a separate function which
* is now called by YY_USER_INIT (better readability)
*
* Revision 1.16 1999/08/18 18:23:41 tsjensen
* Declared yyerrcnt to be static
* Added YY_USER_INIT macro to set the input buffer size to the config file
* size (plus a bit). This is supposed to be a workaround for the REJECT
* problem.
*
* Revision 1.15 1999/08/18 15:40:10 tsjensen
* Added %options never-interactive and caseless
* Added code for DELIMITER statements
* Rewrote string rules to deal with delimiter statements
*
* Revision 1.14 1999/08/16 16:28:03 tsjensen
* Implemented new SAMPLE block syntax
* Replaced states SAMPLE1 and SAMPLE2 with new state SAMPLE - this is now
* much simpler code
*
* Revision 1.13 1999/07/22 12:21:14 tsjensen
* Added GNU GPL disclaimer
* Renamed y.tab.h include to parser.h (same file)
* Renamed parser.h include to lexer.h (same file)
* Added config.h include
*
* Revision 1.12 1999/07/02 11:58:15 tsjensen
* Added begin_speedmode() which is called by parser.y
* Added state SPEEDMODE for fast skipping of designs
* Introduced definitions for PWORD, PBOX, and PWHITE (whitespace)
* Added %options nounput and noyywrap for easier compilation/linking
*
* Revision 1.11 1999/06/28 18:37:38 tsjensen
* Replaced DEBUG macro with LEXER_DEBUG, which is now activated in boxes.h
* New tokens to, with, global, once
* Added LEX_MAX_WARN macro to limit number of lex errors printed per design
* Replaced exit()s with return YUNREC where errors are not fatal
*
* Revision 1.10 1999/06/28 12:17:46 tsjensen
* Added tokens YBOX and YEND (thus, BOX and END are no longer YKEYWORDs)
* Added #define FILE_LEXER_L around #include boxes.h to please compiler
*
* Revision 1.9 1999/06/22 12:00:05 tsjensen
* Added #undef DEBUG, because DEBUGging is now activated in boxes.h
* Added #include tools.h
*
* Revision 1.8 1999/06/20 14:17:58 tsjensen
* Added "padding" keyword and recognition of numbers (YNUMBER)
*
* Revision 1.7 1999/06/17 19:05:46 tsjensen
* Bugfix: Sample block analysis didn't handle empty blocks
*
* Revision 1.6 1999/06/14 12:13:41 tsjensen
* Added Reverse pattern
*
* Revision 1.4 1999/04/09 13:31:13 tsjensen
* Removed all code related to OFFSET blocks (obsolete)
*
* Revision 1.3 1999/04/04 16:11:39 tsjensen
* Added indent keyword
* Added Replace token
* Some fiddling which will hopefully fix a line counting bug
*
* Revision 1.1 1999/03/18 15:09:48 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* File: parser.y
* Date created: March 16, 1999 (Tuesday, 17:17h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: parser.y,v 1.25 2006/07/23 16:11:39 tsjensen Exp $
* Language: GNU bison (ANSI C)
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Yacc parser for boxes configuration files
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,115 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: parser.y,v $
* Revision 1.25 2006/07/23 16:11:39 tsjensen
* Removed unsigned modifier from a pointer declaration in order to clear a warning
* which appeared on some Linuxes (reported by Andreas Heiduk)
*
* Revision 1.24 2006/07/22 19:30:55 tsjensen
* Fix: Renamed yylineno to tjlineno to enable compilation on certain
* flexes (reported by Andreas Heiduk)
*
* Revision 1.23 2006/07/12 05:31:25 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.22 1999-08-21 08:53:58-07 tsjensen
* Removed check for empty sample block, which is also done in lexer.l
*
* Revision 1.21 1999/08/18 15:38:44 tsjensen
* Added new tokens YCHGDEL and YDELWORD
* Added code for DELIMITER statements
*
* Revision 1.20 1999/08/16 16:29:25 tsjensen
* Changed SAMPLE block syntax to get rid of all the quoting sh*t in SAMPLE
* blocks. Samples now look authentic even in the config file. Very simple now.
* Added new token YENDSAMPLE in the process.
*
* Revision 1.19 1999/08/14 19:19:25 tsjensen
* Added anz_shapespec variable to count non-deepempty user-specified shapes
* (must at least be 1)
* Moved yylex declaration to lexer.h, where it belongs
* Bugfix: bison and yacc seem to differ in the way action code is treated
* which is associated with an error token. Since bison calls the action
* routine whenever a token is skipped while recovering, added skipping
* variable to ensure that only one "skipping to next design" message is
* printed. That was not necessary before. %-/
* Removed existence check from corner_check() routine (obsolete).
* Added code to generate required shapes which were not specified by the user
* Clean-up in shape_def rule (use freeshape() and some more)
*
* Revision 1.18 1999/07/23 16:14:17 tsjensen
* Added computation of height of highest shape in design (maxshapeheight)
* Options -l and -d together now call quickinfo mode -> parse only 1 design
*
* Revision 1.17 1999/07/22 12:27:16 tsjensen
* Added GNU GPL disclaimer
* Renamed parser.h include to lexer.h (same file)
* Added include config.h
*
* Revision 1.16 1999/07/02 11:54:52 tsjensen
* Some minor changes to please compiler
* Communication of speed mode to lexer
* Bugfix: Forgot to check for opt.l before calling YYACCEPT
*
* Revision 1.15 1999/06/30 12:13:47 tsjensen
* Now parsing only those designs which will be needed later on
* Checks formerly done in boxes.c now done here (no valid designs etc.)
*
* Revision 1.14 1999/06/28 18:32:51 tsjensen
* Unified appearance of error messages, which are now all based on yyerror()
* Eliminated duplicate code by introducing intermediate rules
* New tokens YTO, YWITH, and YRXPFLAG to reduce strcasecmp() usage
* New token YUNREC for integration of lexer into error handling
* Some code restructuring and rule renaming for better consistency
* Added out-of-memory-checks to many strdup()s and such
*
* Revision 1.13 1999/06/28 12:15:47 tsjensen
* Added error handling. Now skips to next design on error.
* Replaced DEBUG macro with PARSER_DEBUG, which is now activated in boxes.h
* Added rule first_rule, which performs init and cleanup formerly done in main()
* Introduced symbols YBOX and YEND
*
* Revision 1.12 1999/06/22 12:01:01 tsjensen
* Added #undef DEBUG, because DEBUGging is now activated in boxes.h
* Added #include tools.h
*
* Revision 1.11 1999/06/20 14:18:51 tsjensen
* Adden YPADDING and YNUMBER tokens plus code for padding blocks
*
* Revision 1.10 1999/06/17 19:04:45 tsjensen
* Added detection of empty sample blocks (we don't want that)
* Added detection of duplicate sample blocks
*
* Revision 1.9 1999/06/14 12:13:01 tsjensen
* Added YREVERSE token
* Added code for regexp reversion
*
* Revision 1.7 1999/04/09 13:31:54 tsjensen
* Added checks for duplicate design names
* Added checks for valid design names (no extended ASCII or ctrl chars)
* Removed all code related to OFFSET blocks (obsolete)
*
* Revision 1.6 1999/04/04 16:07:53 tsjensen
* Enforced use of PROJECT macro
* Added "indent" directive to grammar
* Added "replace" directive to grammar
*
* Revision 1.5 1999/03/30 13:29:50 tsjensen
* Added computation of minimum width/height of each design.
*
* Revision 1.4 1999/03/30 09:37:51 tsjensen
* It drew a correct box for the first time!
*
* Revision 1.3 1999/03/24 17:29:12 tsjensen
* Added detection of empty shapes ("") which are now cleared (+warning)
* Changed rcs string to #ident directive
*
* Revision 1.1 1999/03/18 15:10:06 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,11 +3,10 @@
* Date created: Copyright (c) 1986 by University of Toronto.
* Author: Henry Spencer.
* Extensions and modifications by Thomas Jensen
* Version: $Id: regsub.c,v 1.7 2006/07/23 16:15:55 tsjensen Exp $
* Language: K&R C (traditional)
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Perform substitutions after a regexp match
* Remarks: - Not derived from licensed software.
* License: - Not derived from licensed software.
* - Permission is granted to anyone to use this
* software for any purpose on any computer system,
* and to redistribute it freely, subject to the
@ -21,32 +20,6 @@
* 3. Altered versions must be plainly marked as such,
* and must not be misrepresented as being the
* original software.
* Revision History:
*
* $Log: regsub.c,v $
* Revision 1.7 2006/07/23 16:15:55 tsjensen
* Undo of previous version
* Added include string.h and removed manual extern declarations for strncpy()
*
* Revision 1.6 2006/07/22 19:01:10 tsjensen
* Added extern declaration of strncpy() to myregsub(), hoping this will clear some warnings on Debian
*
* Revision 1.5 2006/07/12 05:20:26 tsjensen
* Updated world wide web link in comment header
*
* Revision 1.4 1999-07-20 11:51:41-07 tsjensen
* Bugfix: REPLACE "^" with "a" caused a hangup. Now automatically declaring
* matches which have a length of zero to be of scope "once".
*
* Revision 1.3 1999/04/12 18:13:57 tsjensen
* Added missing '$' to rcs id string, changed from #ident to char
*
* Revision 1.2 1999/04/05 19:39:27 tsjensen
* Hopefully fixed a potential buffer overrun problem in regsub()
*
* Revision 1.1 1999/04/04 16:14:46 tsjensen
* Initial revision
*
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 20:59h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: remove.c,v 1.8 2006/07/22 19:19:26 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Box removal, i.e. the deletion of boxes
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,41 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: remove.c,v $
* Revision 1.8 2006/07/22 19:19:26 tsjensen
* Applied patch by Christoph Dreyer to support unexpansion of leading tabs
* Added ability to retain existing tabs
*
* Revision 1.7 2006/07/12 05:28:58 tsjensen
* Updated email and web addresses in comment header
* Added trim_only flag to output_input() function, used for box mending
*
* Revision 1.6 1999-11-08 02:51:41-08 tsjensen
* Bugfix: For non-empty left box sides, spaces belonging to "empty" shape
* lines were not properly removed in some cases
*
* Revision 1.5 1999/11/07 17:46:26 tsjensen
* Bugfix: Horizontal box parts were not correctly detected if the west box
* side was empty (reported: Tobias Buchal)
* Bugfix: boxes could hang in detect_horiz() due to goeast/west confusion
*
* Revision 1.4 1999/08/21 16:03:31 tsjensen
* Bugfix: When matching vertical side shape lines, ignore empty shape lines
*
* Revision 1.3 1999/07/20 18:57:16 tsjensen
* Added GNU GPL disclaimer
* Does not kill leading/trailing blank lines anymore when !opt.killblank
* Added include config.h
*
* Revision 1.2 1999/06/25 18:45:33 tsjensen
* Added initialization of mmok to please compiler
* Changed parameters of empty_side() calls to comply with new signature
*
* Revision 1.1 1999/06/23 19:14:53 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 21:00h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: remove.h,v 1.3 2006/07/12 05:28:31 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Box removal, i.e. the deletion of boxes
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,18 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: remove.h,v $
* Revision 1.3 2006/07/12 05:28:31 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.2 1999-07-23 09:16:40-07 tsjensen
* Added GNU GPL disclaimer
*
* Revision 1.1 1999/06/23 19:15:00 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 13:39h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: shape.c,v 1.6 2006/07/12 05:27:29 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Shape handling and information functions
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,32 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: shape.c,v $
* Revision 1.6 2006/07/12 05:27:29 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.5 1999-08-14 12:11:53-07 tsjensen
* Added findshape(), genshape(), freeshape(), and isdeepempty() functions
* Added on_side() back in with a few changes
* Changed empty_side() to use isdeepempty() -> much simpler code
*
* Revision 1.4 1999/07/23 16:38:02 tsjensen
* Removed functions iscorner(), on_side(), shapecmp(), both_on_side(), and
* shape_distance() - nobody was using them anyway.
*
* Revision 1.3 1999/07/22 12:28:25 tsjensen
* Added GNU GPL disclaimer
* Added include config.h
*
* Revision 1.2 1999/06/25 18:52:28 tsjensen
* Added empty_side() function from boxes.c
* Removed #include regexp.h
*
* Revision 1.1 1999/06/23 12:26:59 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,12 +3,11 @@
* Project Main: boxes.c
* Date created: June 23, 1999 (Wednesday, 13:45h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: shape.h,v 1.5 2006/07/12 05:27:59 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Shape handling and information functions
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -21,29 +20,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: shape.h,v $
* Revision 1.5 2006/07/12 05:27:59 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.4 1999-08-14 12:08:34-07 tsjensen
* Added genshape(), freeshape(), and findshape() prototypes
* Added on_side() prototype back again
* Added isdeepempty() prototype
* Changed first parameter of empty_side() prototype
*
* Revision 1.3 1999/07/23 16:36:33 tsjensen
* Added GNU GPL disclaimer
* Removed prototypes of iscorner(), on_side(), shapecmp(), both_on_side(),
* and shape_distance() - nobody was using those anyway.
*
* Revision 1.2 1999/06/25 18:52:59 tsjensen
* Added empty_side() prototype
*
* Revision 1.1 1999/06/23 12:27:06 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,13 +3,12 @@
* Project Main: boxes.c
* Date created: June 20, 1999 (Sunday, 16:51h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: tools.c,v 1.7 2006/07/22 19:27:15 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Provide tool functions for error reporting and some
* string handling
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -22,34 +21,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: tools.c,v $
* Revision 1.7 2006/07/22 19:27:15 tsjensen
* Changed expand_tabs_into() so that it records the original tab positions in a line
* Added tabbify_indent() to restore original leading tabs after box processing
*
* Revision 1.6 2006/07/12 05:25:47 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.5 1999-08-31 08:35:13-07 tsjensen
* Applied Joe Zbiciak's patches to remove all snprintf()s and variants
* Added concat_strings() function and changed yyerror() in the process
*
* Revision 1.4 1999/08/21 16:09:33 tsjensen
* Removed newline check from empty_line() function
*
* Revision 1.3 1999/08/13 23:54:24 tsjensen
* Bugfix: cut&paste error in in strisyes() and strisno(). Thanks Warren Seltzer
*
* Revision 1.2 1999/07/20 18:55:20 tsjensen
* Added GNU GPL disclaimer
* Added functions strisyes() and strisno()
* Added config.h and shape.h include statements
*
* Revision 1.1 1999/06/23 11:19:30 tsjensen
* Initial revision
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/

View File

@ -3,13 +3,12 @@
* Project Main: boxes.c
* Date created: June 20, 1999 (Sunday, 16:57h)
* Author: Copyright (C) 1999 Thomas Jensen <boxes@thomasjensen.com>
* Version: $Id: tools.h,v 1.5 2006/07/22 19:11:07 tsjensen Exp $
* Language: ANSI C
* World Wide Web: http://boxes.thomasjensen.com/
* Web Site: http://boxes.thomasjensen.com/
* Purpose: Tool functions for error reporting and some string
* handling and other needful things
*
* Remarks: o This program is free software; you can redistribute it and/or
* License: o 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.
@ -22,28 +21,6 @@
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
* Revision History:
*
* $Log: tools.h,v $
* Revision 1.5 2006/07/22 19:11:07 tsjensen
* Changed expand_tabs_into() signature in order to support advanced tab handling
* Added tabbify_indent()
*
* Revision 1.4 2006/07/12 05:25:27 tsjensen
* Updated email and web addresses in comment header
*
* Revision 1.3 1999-08-31 08:38:42-07 tsjensen
* Added concat_strings() function prototype from Joe Zbiciak's patches
*
* Revision 1.2 1999/07/20 18:56:15 tsjensen
* Added GNU GPL disclaimer
* Removed include boxes.h
* Added prototypes for strisyes() and strisno()
*
* Revision 1.1 1999/06/23 11:19:59 tsjensen
* Initial revision
*
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/