Releases: emilien-jegou/oyui
v0.2.1
Github release x86 target was broken in 0.1.0 & 0.2.0. This commit fixes the issue.
related Issue: #14
added 3 new targets in github releases:
- aarch64-unknown-linux-gnu
- x86_64-apple-darwin
- aarch64-apple-darwin
Built via joseluisq/rust-linux-darwin-builder
Build
- Add aarch & darwin target to github releases —
b22d4c1by emilien-jegou
v0.2.0
This version is focused on fixing accessibility issues and strengthening themes customizations.
Breaking changes
- Removed the
theme::get()action. - Default theme changed from "weywot" to "ansi"
- +/- icons are no longer dimmed by default in tree view
- Default gradients got changed
To get closer to 0.1.0 appearance add this to your config:
theme::set("weywot");
theme::file_staged_highlight::set(LineHighlightMode::Gradient(0.08));
theme::file_staged_highlight_opacity::set(0.3);
theme::file_change_highlight::set(LineHighlightMode::Gradient(0.2));
theme::tree_progressive_change_dim::set(true);Theming
Ansi theming
The default theme now follow the terminal colors, it doesn't come with syntax
builtin, but you got a new action to pick only the syntax from the
embedded theme you like.
| Action | Theme overwrite | Syntax overwrite |
|---|---|---|
theme::set |
✅ | ✅ |
theme::syntax |
❌ | ✅ |
In your config.rn:
pub fn config() {
// This theme is the new default but you can enable it manually.
theme::set("ansi");
theme::syntax("weywot"); // pick only syntax highlighting from "weywot" theme.
}Path prefix
Added support for loading external themes via a path: prefix. e.g.:
theme::set("quaoar"); // classic builtin
theme::set("path:/tmp/aura-dark.tmTheme"); // with custom file
theme::syntax("path:/tmp/aura-dark.tmTheme"); // works with syntax command too!Color parsing
Improved color value parsing, including better support for color extraction,
notably from the TextMate theme.
Here is a full demo of all supported color formats:
theme::bg::set("theme:fg"); // get ref to theme fg
theme::bg::set("red"); // ansi red (term color)
theme::bg::set("ansi:9");
theme::bg::set("ansi256:129");
theme::bg::set("tm:accent"); // from TextMate syntax file
theme::bg::set("rgb(41,41,41)");
theme::bg::set("#f4f4f4");new is_dark action
theme::is_dark main purpose is conditional rendering depending on terminal
color scheme. It works by examining the luminance of the ansi background color.
The following config become possible:
pub fn config() {
theme::set("ansi");
if theme::is_dark() {
theme::syntax("quaoar");
} else {
theme::syntax("dayfox");
}new confirm window
A new confirmation window was added, and can be enable in your config (disabled by default).

To enable it:
global::confirm_merge_window_enabled::set(true);Display tab and trailing chars
Properly display dot characters for tabs and trailing spaces.
theme::char_tab_fg::set("red");
theme::char_tab::set("❘");
theme::char_trailing_space_fg::set("red");
theme::char_trailing_space::set("༞");New actions to change char scroll character
theme::char_scroll_fg::set("red");
theme::char_scroll_both::set("↔");
theme::char_scroll_left::set("↤");
theme::char_scroll_right::set("↦");Feat
- Theme ansi detection and tmTheme loading —
4d4e2c4by emilien-jegou - oyui-rune-actions: Simplify handler creation —
dc39cbaby emilien-jegou - Improve OSC theme parsing —
7d5f546by emilien-jegou - New theme actions (theme::syntax & theme::is_dark) —
e6af5c5by emilien-jegou - Diff between files —
2f03d6eby emilien-jegou - Display trailing whitespace and tabs —
49c493aby emilien-jegou - Reinstate merge confirm window —
f590ed9by emilien-jegou
Refactor
- Concurrent hashmap and shared event receivers —
539a9d4by emilien-jegou - Allow empty action handlers —
935c3ccby emilien-jegou
Chore
- Add licenses files to crates root —
357f49fby emilien-jegou
Fix
- Unescessary padding on separator —
0948c9fby emilien-jegou - Regression on line toggling behaviour —
e0a77bcby emilien-jegou - Broken capitalized keybinds —
8ffa90eby emilien-jegou - Allow empty merge —
4c4334fby emilien-jegou
