patch 7.4.2049
Problem: There is no way to get a list of the error lists.
Solution: Add ":chistory" and ":lhistory".
diff --git a/src/message.c b/src/message.c
index 9541528..72cd79e 100644
--- a/src/message.c
+++ b/src/message.c
@@ -313,9 +313,25 @@
len += n;
}
- /* Set the middle and copy the last part. */
- if (e + 3 < buflen)
+
+ if (i <= e + 3)
{
+ /* text fits without truncating */
+ if (s != buf)
+ {
+ len = STRLEN(s);
+ if (len >= buflen)
+ len = buflen - 1;
+ len = len - e + 1;
+ if (len < 1)
+ buf[e - 1] = NUL;
+ else
+ mch_memmove(buf + e, s + e, len);
+ }
+ }
+ else if (e + 3 < buflen)
+ {
+ /* set the middle and copy the last part */
mch_memmove(buf + e, "...", (size_t)3);
len = (int)STRLEN(s + i) + 1;
if (len >= buflen - e - 3)
@@ -325,7 +341,8 @@
}
else
{
- buf[e - 1] = NUL; /* make sure it is truncated */
+ /* can't fit in the "...", just truncate it */
+ buf[e - 1] = NUL;
}
}