maint: refactor common expand(1) and unexpand(1) code
commitff2178bf30e3eda566cc1d1670768c6d6694a8ac
authorAssaf Gordon <assafgordon@gmail.com>
Sat, 25 Jun 2016 01:48:29 +0000 (24 21:48 -0400)
committerPádraig Brady <P@draigBrady.com>
Tue, 9 Aug 2016 10:31:00 +0000 (9 11:31 +0100)
treee8e7c34c1250f671ca3b700799e96b428348138a
parent1c17f61ef993a5ee5fb0d3bc47b7b25782ae386c
maint: refactor common expand(1) and unexpand(1) code

* src/expand.c, src/unexpand.c: Move global variables from here...
* src/expand-common.h, src/expand-common.c: ... to here.
* src/expand.c, src/unexpand.c: (parse_tab_stops, validate_tab_stops,
next_file): Move identical functions to new module.
(add_tab_stop): Move to new module, including additional code from
'unexpand' (keeping max_column_width) which will have no effect in when
used in 'expand'. Refactor common next-column calculation code
into a new function 'get_next_tab_column'.
* src/local.mk: (src_expand_SOURCES, src_unexpand_SOURCES): Add
'expand-common.c'; (noinst_HEADERS): Add 'expand-common.h'.
* po/POTFILES.in: Add 'expand-common.c'.
* tests/misc/expand.pl: Add more tests.
* tests/misc/unexpand.pl: Likewise.
* TODO: Move conclusions to above test after investigation.
TODO
po/POTFILES.in
src/expand-common.c [new file with mode: 0644]
src/expand-common.h [new file with mode: 0644]
src/expand.c
src/local.mk
src/unexpand.c
tests/misc/expand.pl
tests/misc/unexpand.pl