The fringe bitmaps are the actual bitmaps which represent the logical fringe indicators for truncated or continued lines, buffer boundaries, overlay arrows, etc. Each bitmap is represented by a symbol. These symbols are referred to by the variable fringe-indicator-alist
, which maps fringe indicators to bitmaps (see Fringe Indicators), and the variable fringe-cursor-alist
, which maps fringe cursors to bitmaps (see Fringe Cursors).
Lisp programs can also directly display a bitmap in the left or right fringe, by using a display
property for one of the characters appearing in the line (see Other Display Specs). Such a display specification has the form
(fringe bitmap [face])
fringe is either the symbol left-fringe
or right-fringe
. bitmap is a symbol identifying the bitmap to display. The optional face names a face whose foreground and background colors are to be used to display the bitmap, using the attributes of the fringe
face for colors that face didn’t specify. If face is omitted, that means to use the attributes of the default
face for the colors which the fringe
face didn’t specify. For predictable results that don’t depend on the attributes of the default
and fringe
faces, we recommend you never omit face, but always provide a specific face. In particular, if you want the bitmap to be always displayed in the fringe
face, use fringe
as face.
For instance, to display an arrow in the left fringe, using the warning
face, you could say something like:
(overlay-put (make-overlay (point) (point)) 'before-string (propertize "x" 'display `(left-fringe right-arrow warning)))
Here is a list of the standard fringe bitmaps defined in Emacs, and how they are currently used in Emacs (via fringe-indicator-alist
and fringe-cursor-alist
):
left-arrow
, right-arrow
Used to indicate truncated lines.
left-curly-arrow
, right-curly-arrow
Used to indicate continued lines.
right-triangle
, left-triangle
The former is used by overlay arrows. The latter is unused.
up-arrow
, down-arrow
bottom-left-angle
, bottom-right-angle
top-left-angle
, top-right-angle
left-bracket
, right-bracket
empty-line
Used to indicate buffer boundaries.
filled-rectangle
, hollow-rectangle
filled-square
, hollow-square
vertical-bar
, horizontal-bar
Used for different types of fringe cursors.
exclamation-mark
, question-mark
Not used by core Emacs features.
The next subsection describes how to define your own fringe bitmaps.
This function returns the fringe bitmaps of the display line containing position pos in window window. The return value has the form (left right ov)
, where left is the symbol for the fringe bitmap in the left fringe (or nil
if no bitmap), right is similar for the right fringe, and ov is non-nil
if there is an overlay arrow in the left fringe.
The value is nil
if pos is not visible in window. If window is nil
, that stands for the selected window. If pos is nil
, that stands for the value of point in window.
Copyright © 1990-1996, 1998-2019 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Fringe-Bitmaps.html