Thomas Jensen
a60d74eb02
Apply patch by Salvatore Bonaccorso to fix FTBFS on GNU/kFreeBSD and GNU/Hurd
2015-01-11 22:23:25 +01:00
Thomas Jensen
0a58a24763
Apply patch by Jakub Hrozek to eliminate a compilation warning on Fedora
2015-01-10 22:35:08 +01:00
Mike Meyer
1a2cf93965
Allow user to add flags to CFLAGS and LDFLAGS
...
To build on Mac OS X: `make CFLAGS_ADDTL=-m32 LDFLAGS_ADDTL=-m32`
2014-10-20 16:32:53 -04:00
Thomas Jensen
f6c6a175b0
Updated error message format in getopt.c for win32 test case compatibility
2014-10-09 23:37:45 +02:00
Thomas Jensen
001eaeeb57
Consolidated separated Makefiles for Unix and Win32 into one
2014-10-07 23:57:44 +02:00
Thomas Jensen
2dccdbcc0d
Moved boxes sources from RCS to git
2014-08-27 22:41:48 +02:00
Thomas Jensen
92a5770124
Added support for --help and -? options, which do the same as -h
...
(This feature was requested by Raphael Wimmer).
2006-08-28 15:53:46 +00:00
Thomas Jensen
b80e352569
Undo of previous version
...
Added include string.h and stdlib.h, removed all manual extern declarations
2006-07-23 16:28:13 +00:00
Thomas Jensen
4274b625b2
Undo of previous version
...
Added include string.h and removed manual extern declarations for strncpy()
2006-07-23 16:15:55 +00:00
Thomas Jensen
cff897f7d6
Removed unsigned modifier from a pointer declaration in order to clear a warning
...
which appeared on some Linuxes (reported by Andreas Heiduk)
2006-07-23 16:11:39 +00:00
Thomas Jensen
c37a33617f
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
2006-07-22 19:40:40 +00:00
Thomas Jensen
b83ec23f56
Fix: Renamed yylineno to tjlineno to enable compilation on certain
...
flexes (reported by Andreas Heiduk)
2006-07-22 19:30:55 +00:00
Thomas Jensen
3089111594
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
2006-07-22 19:27:15 +00:00
Thomas Jensen
0803e5ca0a
Applied patch by Christoph Dreyer to support unexpansion of leading tabs
...
Added ability to retain existing tabs
2006-07-22 19:19:26 +00:00
Thomas Jensen
0a06325655
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
2006-07-22 19:15:52 +00:00
Thomas Jensen
6f11b40d19
Changed expand_tabs_into() signature in order to support advanced tab handling
...
Added tabbify_indent()
2006-07-22 19:11:07 +00:00
Thomas Jensen
c925545c13
The file boxes.h is now managed by the top level Makefile only
...
Added rcslocks target to check lock status
Small usability enhancements
2006-07-22 19:07:21 +00:00
Thomas Jensen
03685e42c1
Small usability enhancements
2006-07-22 19:04:30 +00:00
Thomas Jensen
148ebfb4c3
Several small changes which may help clear some warnings on Debian
2006-07-22 19:02:24 +00:00
Thomas Jensen
3d99016b51
Added extern declaration of strncpy() to myregsub(), hoping this will clear some warnings on Debian
2006-07-22 19:01:10 +00:00
Thomas Jensen
38a62dec74
Added target rcslocks
2006-07-12 21:28:38 +00:00
Thomas Jensen
f8df42aa6a
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
2006-07-12 05:49:50 +00:00
Thomas Jensen
9eaecc9b3e
Updated email and web addresses in comment header
...
Added new member 'mend' to opt_t (for option -m, mend box)
2006-07-12 05:44:12 +00:00
Thomas Jensen
b37c06c874
Updated email and web addresses in comment header
2006-07-12 05:41:52 +00:00
Thomas Jensen
21594c1f50
Updated email and web addresses in comment header
...
Added trim_only flag to output_input() function, used for box mending
2006-07-12 05:28:58 +00:00
Thomas Jensen
3f8bdab8f2
Updated email and web addresses in comment header
2006-07-12 05:25:27 +00:00
Thomas Jensen
40a1bb3487
Updated world wide web link in comment header
2006-07-12 05:20:26 +00:00
Thomas Jensen
74288d1d4a
Removed -traditional flag from CFLAGS definition
...
Updated email and web addresses
2006-07-08 08:47:58 +00:00
Thomas Jensen
dab5f12459
Applied patch by Andreas Heiduk to facilitate compilation with
...
present-day flexes
2006-07-07 07:24:17 +00:00
Thomas Jensen
9eed60977d
Added cld member to command line option struct (-c option)
2000-04-01 18:28:18 +00:00
Thomas Jensen
07d7260497
Added -c option (simple comment definition)
2000-04-01 18:27:17 +00:00
Thomas Jensen
06eac718d2
Minor change to make boxes compile on DEC/OSF, too (S_ISDIR)
2000-03-21 14:26:31 +00:00
Thomas Jensen
55d74f3c38
Added Makefile.Win32 and misc/* to snap generation commands
2000-03-17 23:51:43 +00:00
Thomas Jensen
4d48f2c8ef
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).
2000-03-17 23:44:26 +00:00
Thomas Jensen
980a056d33
Added vim autocommand to set syntax highlighting to C
2000-03-17 23:43:13 +00:00
Thomas Jensen
555f640f56
Moved config.h into ORIG_HDRCL group, so it appears in the change log Web
...
page
1999-11-08 10:55:13 +00:00
Thomas Jensen
85d76ebb6a
Bugfix: For non-empty left box sides, spaces belonging to "empty" shape
...
lines were not properly removed in some cases
1999-11-08 10:51:41 +00:00
Thomas Jensen
3f2f687128
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
1999-11-07 17:46:26 +00:00
Thomas Jensen
532bd941b3
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
1999-09-10 19:21:05 +00:00
Thomas Jensen
a5119027eb
Added concat_strings() function prototype from Joe Zbiciak's patches
1999-08-31 15:38:42 +00:00
Thomas Jensen
fc2a00f0dc
Applied Joe Zbiciak's patches to remove all snprintf()s and variants
...
Replaced snprintf() calls with calls to concat_strings() in the process
1999-08-31 15:37:01 +00:00
Thomas Jensen
b84e9ed503
Applied Joe Zbiciak's patches to remove all snprintf()s and variants
...
Added concat_strings() function and changed yyerror() in the process
1999-08-31 15:35:13 +00:00
Thomas Jensen
2535f9f8f5
Bugfix: Changed empty #elif to #else (thanks Tommy Williams)
...
Port to i386/FreeBSD by Tommy Williams
1999-08-25 13:38:37 +00:00
Thomas Jensen
d3a64d0677
Removed const from 2nd parameter of justify_line() function
1999-08-22 11:36:45 +00:00
Thomas Jensen
70ba492f26
Bugfix: no-input-check must take place before indentation computation
1999-08-22 11:34:46 +00:00
Thomas Jensen
21ad76c0af
Renamed file from boxes.h to boxes.h.in
...
VERSION and GLOBALCONF values are now put in by top level Makefile
1999-08-21 23:37:23 +00:00
Thomas Jensen
fcba4e3d7b
boxes.h is now generated from boxes.h.in by top level Makefile
...
Added -Wall -W to CFLAGS and removed .c.o rule
1999-08-21 23:35:44 +00:00
Thomas Jensen
97c7109f5d
Added usage of system-wide config file (GLOBALCONF from boxes.h)
...
Moved config file selection code into it own function (get_config_file())
1999-08-21 23:33:03 +00:00
Thomas Jensen
72d3fb1b54
Removed case insensitivity option (-i) from flex call. Now done in lexer.l.
1999-08-21 16:10:41 +00:00
Thomas Jensen
ca9ff78bff
Removed newline check from empty_line() function
1999-08-21 16:09:33 +00:00
Thomas Jensen
a275847b4f
Bugfix: justify_line() still didn't work right. It should now. (This time I
...
discovered that indentmode=="text" was confusing it. Arghh!)
1999-08-21 16:04:24 +00:00
Thomas Jensen
2d293cb89d
Bugfix: When matching vertical side shape lines, ignore empty shape lines
1999-08-21 16:03:31 +00:00
Thomas Jensen
0f2a1703ce
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
1999-08-21 15:55:42 +00:00
Thomas Jensen
52120808f5
Removed check for empty sample block, which is also done in lexer.l
1999-08-21 15:53:58 +00:00
Thomas Jensen
f180fca44c
Moved contents of YY_USER_INIT definition into a separate function which
...
is now called by YY_USER_INIT (better readability)
1999-08-20 19:51:12 +00:00
Thomas Jensen
0e8079c81c
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.
1999-08-18 18:23:41 +00:00
Thomas Jensen
f6c4f01f4e
Added Linux defines. Now compiles nicely on (my) Linux.
1999-08-18 18:23:06 +00:00
Thomas Jensen
a6d4809f08
Added LEX_SDELIM macro (valid string delimiter characters)
...
Added prototype for chg_strdelims()
1999-08-18 15:42:46 +00:00
Thomas Jensen
f5b5d4572a
Added %options never-interactive and caseless
...
Added code for DELIMITER statements
Rewrote string rules to deal with delimiter statements
1999-08-18 15:40:10 +00:00
Thomas Jensen
52816696e6
Added new tokens YCHGDEL and YDELWORD
...
Added code for DELIMITER statements
1999-08-18 15:38:44 +00:00
Thomas Jensen
3a59866e97
Bugfix: justify_line() still didn't work right. It should now. (Man, I got
...
a strong sense of dja vu! Weird ...)
1999-08-18 15:37:09 +00:00
Thomas Jensen
721c4c4e55
Bugfix: justify_line() still didn't work right. It should now.
1999-08-16 18:30:32 +00:00
Thomas Jensen
2fa54261ea
Added output of total number of designs for -l
1999-08-16 18:29:39 +00:00
Thomas Jensen
2a629b4075
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.
1999-08-16 16:29:25 +00:00
Thomas Jensen
291158afc2
Implemented new SAMPLE block syntax
...
Replaced states SAMPLE1 and SAMPLE2 with new state SAMPLE - this is now
much simpler code
1999-08-16 16:28:03 +00:00
Thomas Jensen
83cafeab4f
Incremented beta version number to 5
...
Added maxshapeheight member to design_t struct
1999-08-14 19:31:23 +00:00
Thomas Jensen
e86c17d62d
Added GNU GPL disclaimer
1999-08-14 19:30:01 +00:00
Thomas Jensen
8c15ac84ed
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)
1999-08-14 19:19:25 +00:00
Thomas Jensen
de25edcfc0
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
1999-08-14 19:11:53 +00:00
Thomas Jensen
4deed5e8f5
Added genshape(), freeshape(), and findshape() prototypes
...
Added on_side() prototype back again
Added isdeepempty() prototype
Changed first parameter of empty_side() prototype
1999-08-14 19:08:34 +00:00
Thomas Jensen
64ed11f10c
Added GNU GPL disclaimer
...
Added yylex() declaration to please compiler
1999-08-14 19:06:26 +00:00
Thomas Jensen
b0ba6c4baf
Given regexp stuff its own Makefile in regexp.
...
Major Makefile overhaul, maily implementation of new directory structure
and consolidation of file macros
Use more GNU make features
1999-08-13 23:55:03 +00:00
Thomas Jensen
13154120e5
Bugfix: cut&paste error in in strisyes() and strisno(). Thanks Warren Seltzer
1999-08-13 23:54:24 +00:00
Thomas Jensen
ce8c0a295e
Initial revision
1999-08-13 20:56:09 +00:00
Thomas Jensen
d8e0a00674
Removed functions iscorner(), on_side(), shapecmp(), both_on_side(), and
...
shape_distance() - nobody was using them anyway.
1999-07-23 16:38:02 +00:00
Thomas Jensen
995355b81e
Added GNU GPL disclaimer
...
Removed prototypes of iscorner(), on_side(), shapecmp(), both_on_side(),
and shape_distance() - nobody was using those anyway.
1999-07-23 16:36:33 +00:00
Thomas Jensen
315d02d9d7
Added GNU GPL disclaimer
1999-07-23 16:16:40 +00:00
Thomas Jensen
affdb49a66
Added quickinfo mode to list_styles(). Called with -l and -d together.
1999-07-23 16:15:48 +00:00
Thomas Jensen
ad568aee53
Added computation of height of highest shape in design (maxshapeheight)
...
Options -l and -d together now call quickinfo mode -> parse only 1 design
1999-07-23 16:14:17 +00:00
Thomas Jensen
cc8471f243
Added GNU GPL disclaimer
...
Added include config.h
1999-07-22 12:28:25 +00:00
Thomas Jensen
c1b40f4cb6
Added GNU GPL disclaimer
...
Renamed parser.h include to lexer.h (same file)
Added include config.h
1999-07-22 12:27:16 +00:00
Thomas Jensen
8c5e619934
Initial revision
1999-07-22 12:26:10 +00:00
Thomas Jensen
6725de9617
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
1999-07-22 12:21:14 +00:00
Thomas Jensen
657bcd2d5f
Bugfix: Empty box sides were still counted when -s was specified (so
...
-s x5 would get you only three lines).
1999-07-21 16:53:17 +00:00
Thomas Jensen
c31bfcbb9d
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).
1999-07-21 16:50:48 +00:00
Thomas Jensen
171a21b198
Added GNU GPL disclaimer
...
Does not kill leading/trailing blank lines anymore when !opt.killblank
Added include config.h
1999-07-20 18:57:16 +00:00
Thomas Jensen
80846a69d1
Added GNU GPL disclaimer
...
Removed include boxes.h
Added prototypes for strisyes() and strisno()
1999-07-20 18:56:15 +00:00
Thomas Jensen
7101272dfa
Added GNU GPL disclaimer
...
Added functions strisyes() and strisno()
Added config.h and shape.h include statements
1999-07-20 18:55:20 +00:00
Thomas Jensen
f0c4f546d6
Bugfix: REPLACE "^" with "a" caused a hangup. Now automatically declaring
...
matches which have a length of zero to be of scope "once".
1999-07-20 18:51:41 +00:00
Thomas Jensen
3a6fef29c6
Added GNU GPL disclaimer
...
Now evaluating date command from SNAPFILE only once
Changed order of files in snapshot archive (who cares)
1999-07-20 18:49:58 +00:00
Thomas Jensen
6a4a46ffdd
Added GNU GPL disclaimer
...
Updated beta version number :-)
Added killblank member to global options
1999-07-20 18:48:46 +00:00
Thomas Jensen
0d0c2325b7
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.
1999-07-20 18:45:29 +00:00
Thomas Jensen
e081e6d3af
Removed --yacc option from bison call
...
Added logpage target to generate the chronologically sorted global change
log in HTML format. This requires a Perl script (create_changelog.pl).
Added config.h to dependencies and stuff
Removed special targets for yacc and lex files. Thanks to Andreas Heiduk,
it is now possible to compile all files with -W -Wall and no extra defines.
Moved regexp library to a subdirectory regexp
Some modifications on the source file macros which now differentiate
between files which are listed in the HTML change log and files which aren't.
1999-07-12 18:28:53 +00:00
Thomas Jensen
c761f463e0
Added include "config.h" to top of file
1999-07-12 18:16:36 +00:00
Thomas Jensen
f0ad8c73dc
Renamed file from parser.h to lexer.h
1999-07-03 16:12:19 +00:00
Thomas Jensen
3baafb88f2
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
1999-07-02 11:58:15 +00:00
Thomas Jensen
dcaccc130c
Some minor changes to please compiler
...
Communication of speed mode to lexer
Bugfix: Forgot to check for opt.l before calling YYACCEPT
1999-07-02 11:54:52 +00:00
Thomas Jensen
bc4f97a31b
Added parser.h header file for lexer-parser communication
...
Moved from yacc to GNU "bison --yacc"
No longer linking with flex library
Activated -Wall -W for parser.y
Removed -DYY_NO_UNPUT from lexer compilation (now done via file option)
1999-07-02 11:50:35 +00:00
Thomas Jensen
66e1c2b429
Initial revision
1999-07-02 11:47:11 +00:00
Thomas Jensen
529c3f1f65
Added [lcr] "shorthand" to -a option
1999-06-30 12:37:25 +00:00