Oasis and 'render-markdown' #34
Replies: 1 comment 7 replies
-
|
This looks beautiful! I love what you've done here. The "fancy heading" design is really slick, too. I especially like how the slant count matches the heading levels; it makes the hierarchy obvious at a glance (while quietly teaching users the color key too). I also agree with using terminal colors here for tighter control and consistency. Thanks for sharing the setup code. I do want to recreate this locally so I can see it in context. I’ll take a look at your config helpers later. HeadingsFor the order of colors in headings, that's a good question. Headings represent hierarchy, so I think the colors should reflect/reinforce that too by "descending". Since Oasis as a pack spans the full rainbow, it may be easiest to just lean into that and follow ROYGBIV from top to bottom. Option A (my preference): ROYGBIV in order
Option B: 3 hues × 2 strengthsPick 3 anchor hues, then use base/bright as the pair. For example, using primary colors (RYB), we descend from the warmest colors to the coolest:
Either way keeps a clear “most important to least important” hierarchical progression. NormalNCNormalNC dimming is intentional, but I’m still not happy with it and could use a second opinion. The goal is simple: make inactive windows recede so the active buffer stays the focus. In my local config, I tried Alternatives I’m considering: slightly brighten inactive windows (e.g., |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Here is my first pass at tuning 'render-markdown' for Oasis. Below are two markdown files as an example.
I'm still debating about the order of colors for the headings. I also used terminal-based colors in Oasis palette as I wanted explicit control over which colors would be adjacent to each other. At first I tried syntax-based colors, but when switching between Oasis themes, I didn't like some of the adjacent colors.
Also, please keep in mind, this is not out of the box behavior for 'render-markdown'.
CONFIG: 'render-markdown'
I dynamically create several hl-groups based that 'render-markdown' requires to achieve the header effect you see in the screenshot. Rather than hardcode these into my current theme, I generate them based on the `@markup.heading.N` colors. There are a couple helper functions in here prefixed by `Config` which can be found in my neovim config repo on GitHub.
CONFIG: 'oasis'
p.s. This is the first time that I noticed Oasis dims non-active windows via
NormalNC. I just noticed it when switching back and forth between windows in the above screenshot. I guess I hadn't noticed while working on buffers with code as very little text in those defaults toNormal.Beta Was this translation helpful? Give feedback.
All reactions