feat: initialize Nocal terminal calendar

This commit is contained in:
2026-07-17 21:24:06 +01:00
commit 22c6399056
37 changed files with 6146 additions and 0 deletions

43
docs/HYPRLAND.md Normal file
View File

@@ -0,0 +1,43 @@
# Hyprland integration
The installed `nocal-hyprland` launcher chooses Kitty, foot, WezTerm, or
Alacritty and gives its Wayland window the dedicated `nocal` class/app-id. Set
`NOCAL_TERMINAL` to an executable path to override that order.
Hyprland 0.55 moved its configuration from hyprlang to Lua. Add this to
`~/.config/hypr/hyprland.lua` for a large, centered calendar on `SUPER+C`:
```lua
hl.bind("SUPER + C", hl.dsp.exec_cmd("nocal-hyprland"), {
description = "Open calendar"
})
hl.window_rule({
name = "nocal-calendar",
match = { class = "nocal" },
float = true,
center = true,
size = { "monitor_w*0.82", "monitor_h*0.82" },
persistent_size = true,
no_dim = true,
})
```
For Hyprland 0.54 and older hyprlang configurations, the equivalent is:
```ini
bind = SUPER, C, exec, nocal-hyprland
windowrule = float, class:^(nocal)$
windowrule = center, class:^(nocal)$
windowrule = size 82% 82%, class:^(nocal)$
windowrule = persistentsize, class:^(nocal)$
windowrule = nodim, class:^(nocal)$
```
Nocal deliberately does not request a particular opacity or color. Configure
those on the terminal and Nocal will inherit them; the application uses default
foreground/background plus the ANSI semantic palette.
The syntax above follows the current official [Hyprland bind documentation]
(https://wiki.hypr.land/Configuring/Basics/Binds/) and [window-rule
documentation](https://wiki.hypr.land/Configuring/Basics/Window-Rules/).