emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] feature/extend_face_id 8b5a55f 17/19: ; extend_face_id and


From: Jimmy Aguilar Mena
Subject: [Emacs-diffs] feature/extend_face_id 8b5a55f 17/19: ; extend_face_id and fill_column_indicator corrections
Date: Sun, 13 Oct 2019 18:15:04 -0400 (EDT)

branch: feature/extend_face_id
commit 8b5a55fb84bc2cc5da1048f88e36c48eeefd25c0
Author: Jimmy Aguilar Mena <address@hidden>
Commit: Jimmy Aguilar Mena <address@hidden>

    ; extend_face_id and fill_column_indicator corrections
    
    *etc/NEWS: Correction for extend face and add some comments in the
    code.
---
 etc/NEWS     |  7 ++++---
 src/xdisp.c  | 10 +++++++++-
 src/xfaces.c |  2 +-
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index e301af2..6614c56 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -385,10 +385,11 @@ simply, makes "foo" complete to both "barfoo" and 
"frodo".  Add 'flex'
 to 'completion-styles' or 'completion-category-overrides' to use it.
 
 +++
-** There is a new face attribute :extend to use the face attributes to
+** New face attribute ':extend' to control face extension at EOL.
+There is a new face attribute :extend to use the face attributes to
 extend after the end of the line until the end of the window.  Such
-:extend is set to nil by default in all faces except for `hl-line` and
-`region` because those extend until the end of the window by default.
+:extend is set to nil by default in all faces except for 'hl-line' and
+'region' because those extend until the end of the window by default.
 
 ** Connection-local variables
 
diff --git a/src/xdisp.c b/src/xdisp.c
index 45462c5..6c0b1f8 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -442,7 +442,7 @@ fill_column_indicator_column (struct it *it, int char_width)
                         ? BVAR (current_buffer, fill_column)
                         : Vdisplay_fill_column_indicator_column);
 
-      /* The stretch width needs to considet the latter
+      /* The stretch width needs to consider the latter
         added glyph in append_space_for_newline.  */
       if (RANGED_FIXNUMP (0, col, INT_MAX))
        {
@@ -21691,6 +21691,9 @@ extend_face_to_end_of_line (struct it *it)
              && indicator_column < it->last_visible_x)
             {
 
+             /* Here we substract char_width because we want the
+                column indicator in the column INDICATOR_COLUMN, not
+                after it.  */
              const int stretch_width =
                indicator_column - it->current_x - char_width;
 
@@ -21851,6 +21854,11 @@ extend_face_to_end_of_line (struct it *it)
                      default_face->id : face->id);
 
       /* Display fill-column indicator if needed.  */
+      /* We need to subtract 1 to the indicator_column here because we
+        will add the indicator IN the column indicator number, not
+        after it.  We compare the variable it->current_x before
+        producing the glyph.  When FRAME_WINDOW_P we substract
+        CHAR_WIDTH calculating STRETCH_WIDTH for the same reason.  */
       const int indicator_column =
        fill_column_indicator_column (it, 1) - 1;
       do
diff --git a/src/xfaces.c b/src/xfaces.c
index cc65527..5a741ae 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -2284,7 +2284,7 @@ filter_face_ref (Lisp_Object face_ref,
 
    ATTR_FILTER is the index of a parameter that conditions the merging
    for named faces (case 1) to only the face_ref where
-   lface[merge_face_ref] is non-nil. To merge unconditionally set this
+   lface[merge_face_ref] is non-nil.  To merge unconditionally set this
    value to 0.
 
    FACE_REF may be a single face specification or a list of such



reply via email to

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