Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

nugu/termux.nu

Raw
use nugu.nu

# Match WezTerm's Nugu mapping, using only Termux-supported properties.
export def theme [mode: string] {
    let p = (match $mode {
        dark => (nugu dark)
        light => (nugu light)
        _ => { error make {msg: "Expected dark or light"} }
    } | get palette)

    let colors = [
        $p.content.backdrop
        $p.error
        $p.content.focus
        $p.warning
        $p.content.important_local
        $p.content.accent
        $p.info
        $p.content.normal
        $p.content.minor
        $p.error
        $p.ui.focus
        $p.warning
        $p.content.important_global
        $p.ui.accent
        $p.ui.important_local
        $p.ui.important_global
        # Nugu semantic extras, indexed 16-22.
        $p.debug
        $p.ui.normal
        $p.ui.backdrop
        $p.ui.minor
        $p.ui.focus
        $p.ui.unfocus
        $p.content.unfocus
    ]

    [
        "# Generated by nugu/termux.nu. Do not edit."
        $"foreground=($p.content.normal)"
        $"background=($p.content.backdrop)"
        $"cursor=($p.ui.accent)"
        ...($colors | enumerate | each {|c| $"color($c.index)=($c.item)" })
        ""
    ] | str join (char nl)
}