Subject: bug#48901: [kisara.moe] Re: [kisara.moe] Re: bug#48901: [kisara.moe] 28.0.50; Support text-based fringe contents alongside bitmaps

From: Mohsin Kaleem <[email-masked]>
Date: Tue, 15 Jun 2021 23:10:33 +0100

Eli Zaretskii <[email-masked]> writes:

>> From: mohsin kaleem <[email-masked]>
>> Date: Mon, 07 Jun 2021 14:30:23 +0100
>> 
>> 
>> This is more a feature request than a bug-report. At the moment the
>> recommended way to show extra information about certain lines in a
>> buffer is the fringe. This is done by defining a fringe-bitmap and then
>> having that render onto the fringe, however this is a graphical
>> only solution and terminal frames don't support this. Some packages such
>> as flycheck let you work around this by rendering what you would've
>> rendered on the frame, onto the margin which supports rendering regular
>> strings (alongside any other string-properties such as faces) that can
>> be visible in both terminal and GUI frames.
>> However as a solution that isn't ideal, for one margins weren't designed
>> for this purpose and for another there doesn't seem to be a way to set
>> the background or other properties of a margin to make it resemble the
>> fringe (in my case I'd like the background of the margin to match
>> the fringe background but only for the left margin where I will show the
>> fringe indicators). There's also the issue with interference between
>> this representation and other packages such as olivetti that use the
>> margin to center text.
>> I'd like to recommend we support rendering both text and bitmaps onto
>> the fringe, rendering nothing (or perhaps a block element) if a package
>> tries to render a bitmap on a terminal frame.
>
> Sorry, I don't understand: you begin by saying that fringe bitmaps
> have a disadvantage for TTY frames, and end by requesting a different
> features with the same disadvantage?  Or what did I miss?

Dear Eli,

Apologies I seem to have misunderstood the usage or implementation of
fringes vs. margins.
In retrospect the distinction isn't all that important.
I've tried using the margin based approach for the past few days and
the only issue I still have left is that there's no-way to specify the
default face for the margin (something akin to the `fringe' face).
Ideally I'd like to be able to do so separately for the left and right
margins (as I really only intend to use one of them), but otherwise the
rest of the issues I raised in my original email can be disregarded.

What are your thoughts on having a dedicated face for the margin?

Thank you,

---
Mohsin K.