[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] fill_column_indicator a99054d 3/3: Fixed fill-column-indic
From: |
Jimmy Aguilar Mena |
Subject: |
[Emacs-diffs] fill_column_indicator a99054d 3/3: Fixed fill-column-indicator for continuation lines |
Date: |
Tue, 2 Apr 2019 12:20:47 -0400 (EDT) |
branch: fill_column_indicator
commit a99054d690cdf00589c83d3fe9371206f0893be3
Author: Jimmy Aguilar Mena <address@hidden>
Commit: Jimmy Aguilar Mena <address@hidden>
Fixed fill-column-indicator for continuation lines
Grouped the test conditions in a macro to simplify
future modifications.
---
src/xdisp.c | 27 +++++++++++++++------------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/src/xdisp.c b/src/xdisp.c
index 2f69303..4ea4f3b 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -378,6 +378,13 @@ static Lisp_Object list_of_error;
&& (*BYTE_POS_ADDR (IT_BYTEPOS (*it)) == ' ' \
|| *BYTE_POS_ADDR (IT_BYTEPOS (*it)) == '\t')))) \
+/* Test all the conditions needed to print the fill column indicator. */
+#define FILL_COLUMN_INDICATOR_NEEDED(it) \
+ !NILP (Vdisplay_fill_column_indicator) \
+ && (it->continuation_lines_width == 0) \
+ && (!NILP (Vdisplay_fill_column_indicator_column)) \
+ && FIXNATP (Vdisplay_fill_column_indicator_character)
+
/* True means print newline to stdout before next mini-buffer message. */
bool noninteractive_need_newline;
@@ -20142,10 +20149,8 @@ append_space_for_newline (struct it *it, bool
default_face_p)
/* Corner case for when display-fill-column-indicator-mode
is active and the extra character should be added in the
same place than the line */
- if (!NILP (Vdisplay_fill_column_indicator)
- && (it->w->pseudo_window_p == 0)
- && (!NILP (Vdisplay_fill_column_indicator_column))
- && FIXNATP (Vdisplay_fill_column_indicator_character))
+ if ((it->w->pseudo_window_p == 0)
+ && FILL_COLUMN_INDICATOR_NEEDED(it))
{
int fill_column_indicator_column = -1;
@@ -20403,10 +20408,8 @@ extend_face_to_end_of_line (struct it *it)
/* Display fill column indicator if not in modeline or
toolbar and display fill column indicator mode is
active */
- if (!NILP (Vdisplay_fill_column_indicator)
- && (it->w->pseudo_window_p == 0)
- && (!NILP (Vdisplay_fill_column_indicator_column))
- && FIXNATP (Vdisplay_fill_column_indicator_character))
+ if ((it->w->pseudo_window_p == 0)
+ && FILL_COLUMN_INDICATOR_NEEDED(it))
{
int fill_column_indicator_column = -1;
@@ -20602,13 +20605,13 @@ extend_face_to_end_of_line (struct it *it)
else
it->face_id = face->id;
- /* Display fill-column-line if mode is active */
- if (!NILP (Vdisplay_fill_column_indicator)
- && (!NILP (Vdisplay_fill_column_indicator_column))
- && FIXNATP (Vdisplay_fill_column_indicator_character))
+ /* Display fill-column-line if needed. */
+ if (FILL_COLUMN_INDICATOR_NEEDED(it))
{
int fill_column_indicator_column = -1;
+ /* Vdisplay_fill_column_indicator_column accepts the special value t
+ to use the default fill-column variable. */
if (EQ (Vdisplay_fill_column_indicator_column, Qt)
&& FIXNATP (BVAR (current_buffer, fill_column)))
fill_column_indicator_column =