gbranden pushed a commit to branch master
in repository groff.
commit cdc9319600f58887d2c44993b60ede004438610b
Author: G. Branden Robinson <[email protected]>
AuthorDate: Wed Dec 17 15:50:00 2025 -0600
src/roff/troff/input.cpp: Slightly refactor.
* src/roff/troff/input.cpp: Add new `const` globals
`default_control_char` and `default_no_break_control_char`.
(assign_control_character): Use `default_control_char` instead of
a `.` character literal.
(assign_no_break_control_character): Use
`default_no_break_control_char` instead of a `'` character literal.
---
ChangeLog | 10 ++++++++++
src/roff/troff/input.cpp | 20 +++++++++++++-------
2 files changed, 23 insertions(+), 7 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 02a9ec565..8926c99b2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2025-12-17 G. Branden Robinson <[email protected]>
+
+ * src/roff/troff/input.cpp: Add new `const` globals
+ `default_control_char` and `default_no_break_control_char`.
+ (assign_control_character): Use `default_control_char` instead of
+ a `.` character literal.
+ (assign_no_break_control_character): Use
+ `default_no_break_control_char` instead of a `'` character
+ literal.
+
2025-12-17 G. Branden Robinson <[email protected]>
* src/roff/troff/input.cpp (assign_escape_character): Rename
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index 8705e530e..f9bd1a5fb 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -192,6 +192,9 @@ void chop_macro(); // declare to avoid friend name
injection
static const unsigned char default_escape_char = (unsigned char)('\\');
static unsigned char escape_char = default_escape_char;
+static const unsigned char default_control_char = (unsigned char)('.');
+static const unsigned char default_no_break_control_char
+ = (unsigned char)('\'');
static void assign_escape_character_request()
{
@@ -263,7 +266,7 @@ void assign_control_character()
cc = tok.ch();
}
else
- cc = '.';
+ cc = default_control_char;
bool do_nothing = false;
char already_ec[] = "the escape character is already";
char already_nbcc[] = "the no-break control character is already";
@@ -282,9 +285,10 @@ void assign_control_character()
is_invalid ? "cannot select invalid control character, and"
: "", already_message, input_char_description(cc));
else if (is_invalid) {
- error("cannot select %1 as control character; using '.'",
- tok.description());
- assignment_worked = curenv->set_control_character('.');
+ error("cannot select %1 as control character; using '%2'",
+ tok.description(), char(default_control_char));
+ assignment_worked
+ = curenv->set_control_character(default_control_char);
}
else
assignment_worked = curenv->set_control_character(cc);
@@ -303,7 +307,7 @@ void assign_no_break_control_character()
nbcc = tok.ch();
}
else
- nbcc = '\'';
+ nbcc = default_no_break_control_char;
bool do_nothing = false;
char already_ec[] = "the escape character is already";
char already_cc[] = "the (breaking) control character is already";
@@ -324,8 +328,10 @@ void assign_no_break_control_character()
: "", already_message, input_char_description(nbcc));
else if (is_invalid) {
error("cannot select %1 as no-break control character;"
- " using \"\'\"", tok.description());
- assignment_worked = curenv->set_no_break_control_character('\'');
+ " using \"%2\"", tok.description(),
+ default_no_break_control_char);
+ assignment_worked
+ = curenv->set_no_break_control_character(default_no_break_control_char);
}
else
assignment_worked = curenv->set_no_break_control_character(nbcc);
_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit