emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] fill_column_indicator 7a5f426 3/9: Fixed fill-column-indic


From: Jimmy Aguilar Mena
Subject: [Emacs-diffs] fill_column_indicator 7a5f426 3/9: Fixed fill-column-indicator for continuation lines
Date: Tue, 9 Apr 2019 09:02:45 -0400 (EDT)

branch: fill_column_indicator
commit 7a5f426fe28d2595f26f2e489621ec80e3d10601
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 =



reply via email to

[Prev in Thread] Current Thread [Next in Thread]