[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64535: 30.0.50; Spurious newlines in `prin1` output
From: |
Stefan Monnier |
Subject: |
bug#64535: 30.0.50; Spurious newlines in `prin1` output |
Date: |
Sat, 08 Jul 2023 15:19:13 -0400 |
Package: Emacs
Version: 30.0.50
`prin1` never inserts newlines unless they're within strings (and that
can be controlled with `print-escape-newlines`), right? Right?
Nope: it does insert newlines inside char-table when reaching the 3rd
level of subtables. This was done to work around the long lines problem
in redisplay (bug#2866), but it's far from the only case where `prin1`
can emit a long line, and we've significantly improved our handling of
long lines.
Can we get rid of this quirk now, please?
Stefan
diff --git a/src/print.c b/src/print.c
index 5c95aeb9a20..aae998692fb 100644
--- a/src/print.c
+++ b/src/print.c
@@ -2544,11 +2544,6 @@ print_object (Lisp_Object obj, Lisp_Object printcharfun,
bool escapeflag)
}
case PVEC_SUB_CHAR_TABLE:
{
- /* Make each lowest sub_char_table start a new line.
- Otherwise we'll make a line extremely long, which
- results in slow redisplay. */
- if (XSUB_CHAR_TABLE (obj)->depth == 3)
- printchar ('\n', printcharfun);
print_c_string ("#^^[", printcharfun);
int n = sprintf (buf, "%d %d",
XSUB_CHAR_TABLE (obj)->depth,
- bug#64535: 30.0.50; Spurious newlines in `prin1` output,
Stefan Monnier <=