Styling tabs with background image, or with stipples with different foreground color?

Frank Steiner <[email protected]>
Newsgroups gmane.emacs.help
Message-ID <[email protected]>
Hi,

what I'm trying to achieve is a tab style like in xemacs, see attached screenshot.

All tabs have a white line at the left and top and a black at the right and bottom
side. But the selected buffer (tab-line-tab-current) has no line at the bottom,
so there is no separator between the buffer and its tab, if both have the same
background color.
And the selected tab is a little larger with the text shifted upwards.

I've managed to reach all this using image displays for the left/right borders,
underlines with the matching colors for selected/inactive tabs and different
raise displays in the tab-line-tab-name-format-default function.

The problem is with the upper border color. Using overlines will show the overline
at the same height for selected and inactive tabs as the raise only shifts the
text but not its overline. And all tabs always have the same height, even
when I insert a space-display with height only for the selected tab.

I can reach differently positioned upper borders with stipples that create a
line at different heights. But those will share the foreground color of the
face, i.e. when the buffer name in the tab is black, the stipple line is also
black instead of white.

So I wonder:
a) Is there a way to use different faces only for the text string in the tabs
    and for the stipple to give them different foreground colors?

b) Or can I achieve different heights for selected and inactive tabs, so that
    the overlines are at different heights, too?

c) Or can I have adjust positions of the overlines (similar to adjusting
    the underline with :position, which doesn't exist for :overline)?

d) Or is it possible to use a background image for the tab elements? I tried
    with image/slice display, but those replace the buffer name instead of
    showing the slice above

I'm very thankful for any ideas :-)


cu,
Frank
tabs.png (image/png, 522 B) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.