gbranden pushed a commit to branch master in repository groff. commit be30529153cabd9afb00ae6fcb9ff53acce55ee0 Author: G. Branden Robinson <g.branden.robin...@gmail.com> AuthorDate: Sat Aug 17 19:55:09 2024 -0500
[troff]: Slightly refactor. * src/roff/troff/input.cpp: Support construction of read-only registers from integers. (class readonly_text_register): Declare constructor taking `int` argument. (readonly_text_register::readonly_text_register): Add it. (main): Use it to initialize `.T` register. (init_registers): Use it to initialize `.A` register. (init_input_requests): Use it to initialize `.g` register and `.R` registers. --- ChangeLog | 12 ++++++++++++ src/roff/troff/input.cpp | 14 ++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index bd129251f..1fdf90661 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2024-08-17 G. Branden Robinson <g.branden.robin...@gmail.com> + + * src/roff/troff/input.cpp: Support construction of read-only + registers from integers. + (class readonly_text_register): Declare constructor taking `int` + argument. + (readonly_text_register::readonly_text_register): Add it. + (main): Use it to initialize `.T` register. + (init_registers): Use it to initialize `.A` register. + (init_input_requests): Use it to initialize `.g` register and + `.R` registers. + 2024-08-17 G. Branden Robinson <g.branden.robin...@gmail.com> * src/roff/troff/input.cpp: Slightly refactor. diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp index 99360f7cf..58c1a8dcc 100644 --- a/src/roff/troff/input.cpp +++ b/src/roff/troff/input.cpp @@ -7897,6 +7897,7 @@ class readonly_text_register : public reg { const char *s; public: readonly_text_register(const char *); + readonly_text_register(int); const char *get_string(); }; @@ -7904,6 +7905,11 @@ readonly_text_register::readonly_text_register(const char *p) : s(p) { } +readonly_text_register::readonly_text_register(int i) +{ + s = strdup(i_to_a(i)); +} + const char *readonly_text_register::get_string() { return s; @@ -8593,7 +8599,7 @@ int main(int argc, char **argv) init_column_requests(); #endif /* COLUMN */ init_node_requests(); - register_dictionary.define(".T", new readonly_text_register(tflag ? "1" : "0")); + register_dictionary.define(".T", new readonly_text_register(tflag)); init_registers(); init_reg_requests(); init_hyphenation_pattern_requests(); @@ -8657,7 +8663,7 @@ static void init_registers() set_register("yr", int(t->tm_year)); set_register("$$", getpid()); register_dictionary.define(".A", - new readonly_text_register(want_abstract_output ? "1" : "0")); + new readonly_text_register(want_abstract_output)); } /* @@ -8810,9 +8816,9 @@ void init_input_requests() register_dictionary.define(".c", new lineno_reg); register_dictionary.define(".color", new readonly_boolean_register(&want_color_output)); register_dictionary.define(".F", new filename_reg); - register_dictionary.define(".g", new readonly_text_register("1")); + register_dictionary.define(".g", new readonly_text_register(1)); register_dictionary.define(".H", new readonly_register(&hresolution)); - register_dictionary.define(".R", new readonly_text_register("10000")); + register_dictionary.define(".R", new readonly_text_register(10000)); register_dictionary.define(".U", new readonly_boolean_register(&want_unsafe_requests)); register_dictionary.define(".V", new readonly_register(&vresolution)); register_dictionary.define(".warn", new readonly_register(&warning_mask)); _______________________________________________ Groff-commit mailing list Groff-commit@gnu.org https://lists.gnu.org/mailman/listinfo/groff-commit