| Commit message (Collapse) | Author | Age |
| ... | |
| | |
| |
| |
| |
| |
| | |
bash line-buffers its stdout, so printf 'x\ny\nz\n' > data arrives as three writes and took three Undos. A write now leaves the join mark a truncation already left, so the next write on the file joins its step until the open is released; a truncation and any other edit start a step of their own.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| | |
A Back that reopened a file updated only the entry it stepped onto; another entry for the same file stayed closed, and stepping onto it re-looked the file, found it already active and returned without moving, so Forward (or Back) did nothing.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
ends kept
A Recent row or a jumplist entry for a line the file no longer has failed the look; now it opens at the last line. The selection's anchor is remembered too, so a reopen restores both ends where they fit, and Recent and Jumplist share the (closed) marker.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| |/
|
|
|
|
|
| |
The rename turned `MissingThemeSelection` into `MissingThemesection`; the
theme section is what the test misses.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| |\ \
| | |
| | |
| | | |
cursor + faithful themes
|
| | | |
| | |
| | |
| | |
| | |
| | | |
theme.snap and themesel.snap step past orchard_black into acme and lapis
(now with the current themes) and across the first ported sections; their
step names say where each lands, and only these two goldens are re-recorded.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Every colour is the original's own, cited file:line in each theme file.
Sources:
repo; https://github.com/doomemacs/themes; ~/05-genizah/doomemacs-themes; a59202912ad55014e53a685eee6cd94130bdd4fd
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
doom_one: focused tag ground #1d2026 -> #40444b: 1.05:1 off the unfocused #21242b, pardes needs 1.5:1 on a dark page
doom_one: unfocused tag text #5b6268 -> #868b8f: 2.51:1 on #21242b, tag text needs 4.5:1 to be read and run
doom_one: rules between panes #191b20 -> #4a4d55: 1.23:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
doom_one: scroll thumb #3f444a -> #44494f: 1.42:1 on its track #282c34
doom_one_light: focused tag ground #e7e7e7 -> #c8c8c9: 1.06:1 off the unfocused #e1e1e1, pardes needs 1.25:1 on a light page
doom_one_light: unfocused tag text #a190a7 -> #6a5f6e: 2.27:1 on #e1e1e1, tag text needs 4.5:1 to be read and run
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Every colour is the original's own, cited file:line in each theme file.
Sources:
palette (themes/*.yaml, generated src/generated/*.ts); https://github.com/ayu-theme/ayu-colors; ~/05-genizah/ayu-colors; b0fd979a1ddf050101b43311fa598a1a9c5f1bbc
VS Code port (roles, terminal colours); https://github.com/ayu-theme/vscode-ayu; ~/05-genizah/vscode-ayu; d676974ebb245fa5a7ae4444027f72801017f1b6
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
ayu_dark: focused tag ground #10141c -> #33363b: 1.03:1 off the unfocused #0d1017, pardes needs 1.5:1 on a dark page
ayu_dark: unfocused tag text #5a6378 -> #747c8e: 3.16:1 on #0d1017, tag text needs 4.5:1 to be read and run
ayu_dark: rules between panes #1b1f29 -> #393b42: 1.12:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
ayu_dark: scroll thumb #2e3441 -> #313743: 1.48:1 on its track #10141c
ayu_mirage: focused tag ground #242936 -> #3f434c: 1.07:1 off the unfocused #1f2430, pardes needs 1.5:1 on a dark page
ayu_mirage: unfocused tag text #707a8c -> #848d9c: 3.58:1 on #1f2430, tag text needs 4.5:1 to be read and run
ayu_mirage: rules between panes #171b24 -> #46494d: 1.19:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
ayu_light: focused tag ground #fcfcfc -> #dcddde: 1.03:1 off the unfocused #f8f9fa, pardes needs 1.25:1 on a light page
ayu_light: unfocused tag text #828e9f -> #68727f: 3.15:1 on #f8f9fa, tag text needs 4.5:1 to be read and run
ayu_light: rules between panes #eaedef -> #c5c9cb: 1.15:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Every colour is the original's own, cited file:line in each theme file.
Sources:
palette; https://github.com/nordtheme/nord; ~/05-genizah/nord; 1cef71605416a222e57225b544540ce0fcec18d4
vim port (roles, terminal colours); https://github.com/nordtheme/vim; ~/05-genizah/nord-vim; f13f5dfbb784deddbc1d8195f34dfd9ec73e2295
VS Code port (reference only, see notes); https://github.com/nordtheme/visual-studio-code; ~/05-genizah/nord-visual-studio-code; 8ead09822c02d0d49d0f764104505e5a34d3689f
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
nord: focused tag ground #4c566a -> #525d72: 1.36:1 off the unfocused #3b4252, pardes needs 1.5:1 on a dark page
nord: focused tag text #88c0d0 -> #bcdce5: 3.31:1 on #525d72, tag text needs 4.5:1
nord: rules between panes #434c5e -> #4c5566: 1.45:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
nord: scroll thumb #4c566a -> #60697c: 1.17:1 on its track #434c5e
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
zenbones_dark, neobones_light, neobones_dark, vimbones, forestbones_light, forestbones_dark, nordbones, rosebones_light, rosebones_dark, tokyobones_light, tokyobones_dark, seoulbones_light, seoulbones_dark, duckbones, zenburned, zenwritten_light, zenwritten_dark, kanagawabones
Every colour is the original's own, cited file:line in each theme file.
Sources:
repo; https://github.com/zenbones-theme/zenbones.nvim; ~/05-genizah/zenbones.nvim; 8304d8df9b823ff11e103afa62f38c39f534abe6
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
zenbones_light: focused tag ground #d6cdc9 -> #cfc3bf: 1.15:1 off the unfocused #e1dcd9, pardes needs 1.25:1 on a light page
zenbones_light: unfocused tag text #596a76 -> #52626d: 4.12:1 on #e1dcd9, tag text needs 4.5:1 to be read and run
zenbones_light: focused grip #bbaba3 -> #ac9d96: 1.29:1 on the focused tag #cfc3bf
zenbones_dark: focused tag ground #352f2d -> #473f3d: 1.18:1 off the unfocused #272321, pardes needs 1.5:1 on a dark page
zenbones_dark: focused grip #59514d -> #635b58: 1.32:1 on the focused tag #473f3d
neobones_light: focused tag ground #c2cfc4 -> #bac6bc: 1.16:1 off the unfocused #d0ded2, pardes needs 1.25:1 on a light page
neobones_light: focused grip #a3aea4 -> #96a097: 1.30:1 on the focused tag #bac6bc
neobones_dark: focused tag ground #20303a -> #2e4350: 1.15:1 off the unfocused #18252d, pardes needs 1.5:1 on a dark page
neobones_dark: focused grip #3b5362 -> #4b616f: 1.28:1 on the focused tag #2e4350
vimbones: focused tag ground #d1d1b0 -> #c7c7a8: 1.15:1 off the unfocused #dfdfbc, pardes needs 1.25:1 on a light page
vimbones: unfocused tag text #686868 -> #606060: 4.09:1 on #dfdfbc, tag text needs 4.5:1 to be read and run
vimbones: focused grip #b0b093 -> #a2a287: 1.28:1 on the focused tag #c7c7a8
forestbones_light: focused tag ground #e3d191 -> #ddca87: 1.18:1 off the unfocused #f3e2aa, pardes needs 1.25:1 on a light page
forestbones_light: unfocused tag text #758690 -> #59666d: 2.92:1 on #f3e2aa, tag text needs 4.5:1 to be read and run
forestbones_light: focused tag text #4f5b62 -> #4c575e: 4.28:1 on #ddca87, tag text needs 4.5:1
forestbones_light: focused grip #c0b079 -> #b1a26f: 1.32:1 on the focused tag #ddca87
forestbones_dark: focused tag ground #3e4850 -> #505a64: 1.15:1 off the unfocused #353f46, pardes needs 1.5:1 on a dark page
forestbones_dark: focused grip #596873 -> #6a7781: 1.22:1 on the focused tag #505a64
nordbones: focused tag ground #414959 -> #515b6e: 1.15:1 off the unfocused #39404e, pardes needs 1.5:1 on a dark page
nordbones: focused grip #5e687e -> #6e778b: 1.22:1 on the focused tag #515b6e
rosebones_light: focused tag ground #ecd0a9 -> #e9c89a: 1.18:1 off the unfocused #f3e3cf, pardes needs 1.25:1 on a light page
rosebones_light: unfocused tag text #ae6966 -> #8f5654: 3.33:1 on #f3e3cf, tag text needs 4.5:1 to be read and run
rosebones_light: focused grip #ceaf7e -> #bea174: 1.31:1 on the focused tag #e9c89a
rosebones_dark: focused tag ground #312e43 -> #423e59: 1.19:1 off the unfocused #242232, pardes needs 1.5:1 on a dark page
rosebones_dark: focused grip #534e6f -> #5d5978: 1.30:1 on the focused tag #423e59
tokyobones_light: focused tag ground #b9bbc3 -> #b1b3bc: 1.16:1 off the unfocused #c8c9cf, pardes needs 1.25:1 on a light page
tokyobones_light: unfocused tag text #5f6b9b -> #4a5379: 3.13:1 on #c8c9cf, tag text needs 4.5:1 to be read and run
tokyobones_light: focused grip #9b9da9 -> #8f909b: 1.29:1 on the focused tag #b1b3bc
tokyobones_dark: focused tag ground #303142 -> #404157: 1.19:1 off the unfocused #242532, pardes needs 1.5:1 on a dark page
tokyobones_dark: focused grip #51536d -> #5b5d76: 1.33:1 on the focused tag #404157
seoulbones_light: focused tag ground #c4c4c4 -> #bdbdbd: 1.18:1 off the unfocused #d4d4d4, pardes needs 1.25:1 on a light page
seoulbones_light: unfocused tag text #818181 -> #5a5a5a: 2.63:1 on #d4d4d4, tag text needs 4.5:1 to be read and run
seoulbones_light: focused tag text #555555 -> #4b4b4b: 3.97:1 on #bdbdbd, tag text needs 4.5:1
seoulbones_light: focused grip #a6a6a6 -> #999999: 1.30:1 on the focused tag #bdbdbd
seoulbones_dark: focused tag ground #5e5e5e -> #727272: 1.15:1 off the unfocused #555555, pardes needs 1.5:1 on a dark page
seoulbones_dark: focused tag text #dddddd -> #f8f8f8: 3.54:1 on #727272, tag text needs 4.5:1
seoulbones_dark: focused grip #797979 -> #919191: 1.11:1 on the focused tag #727272
seoulbones_dark: scroll thumb #a0a0a0 -> #a1a1a1: 1.49:1 on its track #818181
duckbones: focused tag ground #232738 -> #353b51: 1.13:1 off the unfocused #1a1d2b, pardes needs 1.5:1 on a dark page
duckbones: focused grip #444a67 -> #4f5570: 1.28:1 on the focused tag #353b51
zenburned: focused tag ground #555555 -> #646464: 1.21:1 off the unfocused #494949, pardes needs 1.5:1 on a dark page
zenburned: focused grip #6f6f6f -> #838383: 1.18:1 on the focused tag #646464
zenwritten_light: focused tag ground #cfcfcf -> #c5c5c5: 1.15:1 off the unfocused #dddddd, pardes needs 1.25:1 on a light page
zenwritten_light: unfocused tag text #686868 -> #606060: 4.10:1 on #dddddd, tag text needs 4.5:1 to be read and run
zenwritten_light: focused grip #aeaeae -> #a0a0a0: 1.29:1 on the focused tag #c5c5c5
zenwritten_dark: focused tag ground #303030 -> #414141: 1.18:1 off the unfocused #242424, pardes needs 1.5:1 on a dark page
zenwritten_dark: focused grip #525252 -> #5c5c5c: 1.31:1 on the focused tag #414141
kanagawabones: focused tag ground #363644 -> #444456: 1.21:1 off the unfocused #292934, pardes needs 1.5:1 on a dark page
kanagawabones: focused grip #565668 -> #606071: 1.33:1 on the focused tag #444456
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
seoul256_dark_234, seoul256_dark_235, seoul256_dark_236, seoul256_dark_237, seoul256_dark_238, seoul256_dark_239, seoul256_light_252, seoul256_light_253, seoul256_light_254, seoul256_light_255, seoul256_light_256
Every colour is the original's own, cited file:line in each theme file.
Sources:
repo; https://github.com/junegunn/seoul256.vim; ~/05-genizah/seoul256.vim; 0357ff3e44faab66c98bc98dfc89c834e37012da
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
seoul256_dark_233: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_dark_233: focused grip #007173 -> #006a6c: 1.40:1 on the focused tag #9a7372
seoul256_dark_233: rules between panes #000000 -> #3d3d3d: 1.17:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_234: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_dark_234: focused grip #007173 -> #006a6c: 1.40:1 on the focused tag #9a7372
seoul256_dark_234: rules between panes #060606 -> #4a4a4a: 1.32:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_235: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_dark_235: focused grip #007173 -> #006a6c: 1.40:1 on the focused tag #9a7372
seoul256_dark_235: rules between panes #171717 -> #515151: 1.40:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_236: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_dark_236: focused grip #007173 -> #006a6c: 1.40:1 on the focused tag #9a7372
seoul256_dark_236: rules between panes #252525 -> #5f5f5f: 1.46:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_237: focused tag ground #9a7372 -> #9d7473: 1.50:1 off the unfocused #616161, pardes needs 1.5:1 on a dark page
seoul256_dark_237: focused tag text #dfdebd -> #12120f: 2.96:1 on #9d7473, tag text needs 4.5:1
seoul256_dark_237: focused grip #007173 -> #006c6e: 1.43:1 on the focused tag #9d7473
seoul256_dark_237: rules between panes #333233 -> #6b6b6b: 1.46:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_238: focused tag ground #9a7372 -> #b97877: 1.29:1 off the unfocused #6b6b6b, pardes needs 1.5:1 on a dark page
seoul256_dark_238: unfocused tag text #dfdebd -> #eeeddb: 3.89:1 on #6b6b6b, tag text needs 4.5:1 to be read and run
seoul256_dark_238: focused tag text #dfdebd -> #1f1f1a: 2.55:1 on #b97877, tag text needs 4.5:1
seoul256_dark_238: rules between panes #3f3f3f -> #767676: 1.43:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_dark_239: focused tag ground #9a7372 -> #ac8f86: 1.11:1 off the unfocused #757575, pardes needs 1.5:1 on a dark page
seoul256_dark_239: unfocused tag text #dfdebd -> #fdfdfb: 3.36:1 on #757575, tag text needs 4.5:1 to be read and run
seoul256_dark_239: focused tag text #dfdebd -> #2d2c26: 2.18:1 on #ac8f86, tag text needs 4.5:1
seoul256_dark_239: rules between panes #4b4b4b -> #848484: 1.41:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_light_252: unfocused tag text #565656 -> #545454: 4.39:1 on #c8c8c8, tag text needs 4.5:1 to be read and run
seoul256_light_252: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_light_252: focused grip #719899 -> #4b6465: 1.31:1 on the focused tag #9a7372
seoul256_light_252: rules between panes #bfbfbf -> #acacac: 1.30:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_light_253: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_light_253: focused grip #719899 -> #4b6465: 1.31:1 on the focused tag #9a7372
seoul256_light_253: rules between panes #c8c8c8 -> #b3b3b3: 1.28:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_light_254: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_light_254: focused grip #719899 -> #4b6465: 1.31:1 on the focused tag #9a7372
seoul256_light_254: rules between panes #d1d0d1 -> #b8b8b8: 1.27:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_light_255: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_light_255: focused grip #719899 -> #4b6465: 1.31:1 on the focused tag #9a7372
seoul256_light_255: rules between panes #d9d9d9 -> #bfbfbf: 1.25:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
seoul256_light_256: focused tag text #dfdebd -> #12120f: 3.02:1 on #9a7372, tag text needs 4.5:1
seoul256_light_256: focused grip #719899 -> #4b6465: 1.31:1 on the focused tag #9a7372
seoul256_light_256: rules between panes #e1e1e1 -> #cacaca: 1.31:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
catppuccin_frappe, catppuccin_macchiato, catppuccin_mocha
Every colour is the original's own, cited file:line in each theme file.
Sources:
palette; https://github.com/catppuccin/palette; ~/05-genizah/catppuccin-palette; 07d02aa110ef9eb7e7427afca5c73ba9cf7f8ebd
neovim port (highlight mapping, terminal colours, lualine); https://github.com/catppuccin/nvim; ~/05-genizah/catppuccin-nvim; edefef779ab08ce1a4a404713e3012b0d202bd35
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
catppuccin_latte: focused tag ground #e6e9ef -> #cdd0da: 1.00:1 off the unfocused #e6e9ef, pardes needs 1.25:1 on a light page
catppuccin_latte: unfocused tag text #bcc0cc -> #66686e: 1.49:1 on #e6e9ef, tag text needs 4.5:1 to be read and run
catppuccin_latte: rules between panes #dce0e8 -> #bcc0cc: 1.17:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
catppuccin_frappe: focused tag ground #292c3c -> #454a5d: 1.00:1 off the unfocused #292c3c, pardes needs 1.5:1 on a dark page
catppuccin_frappe: unfocused tag text #51576d -> #9093a2: 1.93:1 on #292c3c, tag text needs 4.5:1 to be read and run
catppuccin_frappe: rules between panes #232634 -> #51566a: 1.22:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
catppuccin_macchiato: focused tag ground #1e2030 -> #3d4053: 1.00:1 off the unfocused #1e2030, pardes needs 1.5:1 on a dark page
catppuccin_macchiato: unfocused tag text #494d64 -> #878a99: 1.94:1 on #1e2030, tag text needs 4.5:1 to be read and run
catppuccin_macchiato: rules between panes #181926 -> #46495c: 1.18:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
catppuccin_mocha: focused tag ground #181825 -> #393a4a: 1.00:1 off the unfocused #181825, pardes needs 1.5:1 on a dark page
catppuccin_mocha: unfocused tag text #45475a -> #81828f: 1.92:1 on #181825, tag text needs 4.5:1 to be read and run
catppuccin_mocha: rules between panes #11111b -> #3e404f: 1.14:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
rose_pine_moon, rose_pine_dawn
Every colour is the original's own, cited file:line in each theme file.
Sources:
palette; https://github.com/rose-pine/palette; ~/05-genizah/rose-pine-palette; 92af52b465ab6e47437aca223c9b8d3009a2023b
neovim port (highlight mapping, terminal colours, lualine); https://github.com/rose-pine/neovim; ~/05-genizah/rose-pine-neovim; ff483051a47e27d84bdef47703538df1ed9f4a47
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
rose_pine: focused tag ground #1f1d2e -> #3c3a4e: 1.02:1 off the unfocused #1d1b2a, pardes needs 1.5:1 on a dark page
rose_pine: unfocused tag text #6e6a86 -> #858299: 3.27:1 on #1d1b2a, tag text needs 4.5:1 to be read and run
rose_pine: focused tag text #908caa -> #a8a5bd: 3.42:1 on #3c3a4e, tag text needs 4.5:1
rose_pine_moon: focused tag ground #2a273f -> #45415b: 1.03:1 off the unfocused #27253b, pardes needs 1.5:1 on a dark page
rose_pine_moon: unfocused tag text #6e6a86 -> #918ea3: 2.88:1 on #27253b, tag text needs 4.5:1 to be read and run
rose_pine_moon: focused tag text #908caa -> #b1afc4: 3.02:1 on #45415b, tag text needs 4.5:1
rose_pine_dawn: focused tag ground #fffaf3 -> #e2ddde: 1.02:1 off the unfocused #fdf8f1, pardes needs 1.25:1 on a light page
rose_pine_dawn: unfocused tag text #9893a5 -> #74707d: 2.82:1 on #fdf8f1, tag text needs 4.5:1 to be read and run
rose_pine_dawn: focused tag text #797593 -> #615e76: 3.27:1 on #e2ddde, tag text needs 4.5:1
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
tokyonight_storm, tokyonight_moon, tokyonight_day
Every colour is the original's own, cited file:line in each theme file.
Sources:
repo; https://github.com/folke/tokyonight.nvim; ~/05-genizah/tokyonight.nvim; cdc07ac78467a233fd62c493de29a17e0cf2b2b6
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
tokyonight_night: focused tag ground #16161e -> #363846: 1.00:1 off the unfocused #16161e, pardes needs 1.5:1 on a dark page
tokyonight_night: unfocused tag text #3b4261 -> #7e8297: 1.83:1 on #16161e, tag text needs 4.5:1 to be read and run
tokyonight_night: rules between panes #15161e -> #3b3e4d: 1.05:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
tokyonight_storm: focused tag ground #1f2335 -> #3d4258: 1.00:1 off the unfocused #1f2335, pardes needs 1.5:1 on a dark page
tokyonight_storm: unfocused tag text #3b4261 -> #858a9d: 1.58:1 on #1f2335, tag text needs 4.5:1 to be read and run
tokyonight_storm: rules between panes #1d202f -> #44495f: 1.11:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
tokyonight_storm: scroll thumb #3b4261 -> #404767: 1.42:1 on its track #272b3f
tokyonight_moon: focused tag ground #1e2030 -> #3a3e56: 1.00:1 off the unfocused #1e2030, pardes needs 1.5:1 on a dark page
tokyonight_moon: unfocused tag text #3b4261 -> #858a9d: 1.64:1 on #1e2030, tag text needs 4.5:1 to be read and run
tokyonight_moon: focused tag text #828bb8 -> #a3a9ca: 3.16:1 on #3a3e56, tag text needs 4.5:1
tokyonight_moon: rules between panes #1b1d2b -> #414557: 1.09:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
tokyonight_moon: scroll thumb #3b4261 -> #3e4564: 1.46:1 on its track #27293a
tokyonight_day: focused tag ground #d0d5e3 -> #b5bdd7: 1.00:1 off the unfocused #d0d5e3, pardes needs 1.25:1 on a light page
tokyonight_day: unfocused tag text #a8aecb -> #575a6a: 1.49:1 on #d0d5e3, tag text needs 4.5:1 to be read and run
tokyonight_day: focused tag text #6172b0 -> #404b74: 2.47:1 on #b5bdd7, tag text needs 4.5:1
tokyonight_day: scroll thumb #a8aecb -> #9fa8ca: 1.41:1 on its track #c8cfe1
keyword is Neovim's tree-sitter @keyword (c.purple, groups/treesitter.lua:36),
which is what pardes's tree-sitter keywords are, not vim's regex Keyword (cyan).
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
monokai_pro_classic, monokai_pro_machine, monokai_pro_octagon, monokai_pro_ristretto, monokai_pro_spectrum, monokai_pro_light, monokai_pro_light_sun
Every colour is the original's own, cited file:line in each theme file.
Sources:
Monokai Pro for VS Code 2.0.15, published by Wimer Hazenberg (Monokai), verified on Open VSX; https://open-vsx.org/api/monokai/theme-monokai-pro-vscode/2.0.15/file/monokai.theme-monokai-pro-vscode-2.0.15.vsix; ~/05-genizah/monokai-pro-vscode/vsix/extension/themes
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
monokai_pro: focused tag ground #2d2a2e -> #4f4637: 1.00:1 off the unfocused #2d2a2e, pardes needs 1.5:1 on a dark page
monokai_pro: rules between panes #221f22 -> #4e4b4d: 1.15:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro: scroll thumb #434044 -> #4a484b: 1.39:1 on its track #2d2a2e
monokai_pro_classic: focused tag ground #272822 -> #46452f: 1.00:1 off the unfocused #272822, pardes needs 1.5:1 on a dark page
monokai_pro_classic: rules between panes #1d1e19 -> #4a4b44: 1.13:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_classic: scroll thumb #3e3f38 -> #46473f: 1.40:1 on its track #272822
monokai_pro_machine: focused tag ground #273136 -> #4a4f40: 1.00:1 off the unfocused #273136, pardes needs 1.5:1 on a dark page
monokai_pro_machine: unfocused tag text #8b9798 -> #8d999a: 4.42:1 on #273136, tag text needs 4.5:1 to be read and run
monokai_pro_machine: rules between panes #1d2528 -> #485152: 1.17:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_machine: scroll thumb #3d474b -> #444e52: 1.39:1 on its track #273136
monokai_pro_octagon: focused tag ground #282a3a -> #4a4642: 1.00:1 off the unfocused #282a3a, pardes needs 1.5:1 on a dark page
monokai_pro_octagon: unfocused tag text #888d94 -> #8d9298: 4.24:1 on #282a3a, tag text needs 4.5:1 to be read and run
monokai_pro_octagon: rules between panes #1e1f2b -> #4b4d57: 1.15:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_octagon: scroll thumb #3d3f4e -> #444655: 1.36:1 on its track #282a3a
monokai_pro_ristretto: focused tag ground #2c2525 -> #514332: 1.00:1 off the unfocused #2c2525, pardes needs 1.5:1 on a dark page
monokai_pro_ristretto: unfocused tag text #948a8b -> #968c8d: 4.48:1 on #2c2525, tag text needs 4.5:1 to be read and run
monokai_pro_ristretto: rules between panes #211c1c -> #4d4747: 1.12:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_ristretto: scroll thumb #433b3b -> #4b4242: 1.38:1 on its track #2c2525
monokai_pro_spectrum: focused tag ground #222222 -> #45412d: 1.00:1 off the unfocused #222222, pardes needs 1.5:1 on a dark page
monokai_pro_spectrum: rules between panes #191919 -> #454447: 1.11:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_spectrum: scroll thumb #39383a -> #413f42: 1.36:1 on its track #222222
monokai_pro_light: focused tag ground #faf4f2 -> #f5d1d9: 1.00:1 off the unfocused #faf4f2, pardes needs 1.25:1 on a light page
monokai_pro_light: unfocused tag text #918c8e -> #716d6f: 3.04:1 on #faf4f2, tag text needs 4.5:1 to be read and run
monokai_pro_light: focused tag text #e14775 -> #a73557: 2.80:1 on #f5d1d9, tag text needs 4.5:1
monokai_pro_light: rules between panes #ede7e5 -> #c6c0c0: 1.12:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_light: scroll thumb #e5e0de -> #cec9c8: 1.20:1 on its track #faf4f2
monokai_pro_light_sun: focused tag ground #f8efe7 -> #f0cdcf: 1.00:1 off the unfocused #f8efe7, pardes needs 1.25:1 on a light page
monokai_pro_light_sun: unfocused tag text #92898a -> #726b6c: 3.00:1 on #f8efe7, tag text needs 4.5:1 to be read and run
monokai_pro_light_sun: focused tag text #ce4770 -> #9d3655: 3.01:1 on #f0cdcf, tag text needs 4.5:1
monokai_pro_light_sun: rules between panes #eee5de -> #c7bebb: 1.09:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
monokai_pro_light_sun: scroll thumb #e4dbd5 -> #cac1be: 1.20:1 on its track #f8efe7
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Every colour is the original's own, cited file:line in each theme file.
Sources:
Sublime Text 2.0.2's Monokai.tmTheme (Wimer Hazenberg), from 'Color Scheme - Default.sublime-package'; https://download.sublimetext.com/Sublime%20Text%202.0.2%20x64.tar.bz2; ~/05-genizah/sublime-text-2-color-schemes/Monokai.tmTheme
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
monokai: focused tag ground #49483e -> #59584f: 1.19:1 off the unfocused #3e3d32, pardes needs 1.5:1 on a dark page
monokai: rules between panes #3b3a32 -> #4a4941: 1.30:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
alucard
Every colour is the original's own, cited file:line in each theme file.
Sources:
official palette (Dracula, Alucard); https://github.com/dracula/dracula-theme; ~/05-genizah/dracula-theme; 1e04a4b768302fa2de37d09cc7b8087eabcd3ed8
official VS Code port: roles, UI, ANSI, Soft transform; https://github.com/dracula/visual-studio-code; ~/05-genizah/dracula-visual-studio-code; a08a206f2c8420ba3c05f0e8d01d43b2f933fdf8
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
dracula: focused tag ground #282a36 -> #41434d: 1.11:1 off the unfocused #21222c, pardes needs 1.5:1 on a dark page
dracula: unfocused tag text #6272a4 -> #7b89b3: 3.36:1 on #21222c, tag text needs 4.5:1 to be read and run
dracula_soft: focused tag ground #282a36 -> #454751: 1.05:1 off the unfocused #272727, pardes needs 1.5:1 on a dark page
dracula_soft: unfocused tag text #7b7f8b -> #8b8e99: 3.74:1 on #272727, tag text needs 4.5:1 to be read and run
alucard: unfocused tag text #6c664b -> #5d5841: 3.75:1 on #cfcfde, tag text needs 4.5:1 to be read and run
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
solarized_light
Every colour is the original's own, cited file:line in each theme file.
Sources:
canonical palette and ANSI map; https://github.com/altercation/solarized; ~/05-genizah/solarized; 62f656a02f93c5190a8753159e34b385588d5ff3
the author's vim port for roles; ~/05-genizah/solarized/vim-colors-solarized/colors/solarized.vim
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
solarized_dark: unfocused tag text #073642 -> #01090b: 2.92:1 on #657b83, tag text needs 4.5:1 to be read and run
solarized_dark: focused grip #268bd2 -> #2483c5: 1.38:1 on the focused tag #93a1a1
solarized_light: unfocused tag text #eee8d5 -> #2b2a26: 2.58:1 on #839496, tag text needs 4.5:1 to be read and run
solarized_light: focused tag text #eee8d5 -> #f0ebda: 4.39:1 on #586e75, tag text needs 4.5:1
solarized_light: focused grip #268bd2 -> #2f90d4: 1.46:1 on the focused tag #586e75
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Every colour is the original's own, cited file:line in each theme file.
Sources:
VS Code 1.130.0 built-in theme; /usr/share/code/resources/app/extensions/theme-defaults/themes/dark_plus.json (includes ./dark_vs.json)
VS Code source for workbench defaults; https://github.com/microsoft/vscode; ~/05-genizah/vscode; 1b6a188127eeaf9194f945eb6eb89a657e93c54c (tag 1.130.0)
Chrome moved to meet pardes's floors (text, syntax, ANSI untouched):
dark_plus: unfocused tag ground #2d2d2d -> #3c3c3c: 1.21:1 off the focused one (the page, kept), pardes needs 1.5:1 on a dark page
dark_plus: unfocused tag text #969696 -> #a7a7a7: 3.73:1 on #3c3c3c, tag text needs 4.5:1 to be read and run
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
as legacy, a section per ported family
The picker's headings come from colors.theme_groups instead of one split at
native_theme_count, so acme (current, matched to plan9port acme's source)
no longer sits under a legacy heading. Ring order follows the sections:
the fifteen pardes palettes, acme, lapis, the faithful ports a family at a
time, then helix and dark, then the imports. An imported theme whose name a
port takes gets _helix, as zed's carry _zed.
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the new one
G3's springs now keep the cursor's place in its pane: a pane that moves in
the layout carries them, and the quad is drawn through the pane's presented
box (its transition track), so through a slide, zoom or drag the cursor
rides with the text, and with no transition it lands with it. A focus change,
to another pane or into a column's or the workspace's tag, glides from where
the cursor was drawn to the new place instead of snapping, unclamped while it
crosses. While panes move the cursor is drawn as the overlay quad instead of
vanishing (golden 18-mid-transition re-recorded for that: the only change is
the quad, gliding into the new column's tag).
Lapis: a tag plaque starts flush against its grip's button, the scroll gap
between them part of the plaque, so grip and plaque read as one piece, on
pane and column rows alike; below the button's row the grip keeps its band.
Themes without plaques are unchanged (their grip band and tag band are one
colour, no sliver).
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
chain
shader_build.zig takes the Shadertoy compile out of the GUI's Post: the
process that holds the core compiles each chain file behind the prefix on a
thread, watches its directory (file_watch's new shader slots), and on a
change reads and hashes each file, compiling only one whose bytes moved. A
failed compile keeps the last good SPIR-V and is said once; the same bytes
are never compiled or reported twice. A file is read with std, not fs.zig's
readFile, whose turn hand-off a worker thread does not hold.
A detached session compiles for its frontends and sends them the chain
(wire post: each pass's scene and level or the file's SPIR-V, and
ShaderAnimation) on attach and on every change, so an attached GUI runs the
same passes, levels and animation as a local one while still reading no disk
and running no program. The attached GUI describes its frames to the chain
from the session's chrome and redraws an animating chain on its own.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A column's plaque now starts at its grip's end, where the pane plaque under
it starts, and every plaque in a column ends at the same x, far enough short
of the next column's rule that no shadow meets it. Where tag bands meet (the
workspace's over the columns', a column's over its first pane's), the upper
box runs down to the ruled edge with no shadow down, and the lower box lays
its top frame over that edge, so there is one line between them, not two
frames and a gap.
|
| | |
| |
| |
| |
| |
| |
| | |
The curtain's glyph slide becomes a wipe: the new grid behind a head that
crosses the pane, the old ahead, and between them two columns whose colours
step from the old ground to the new in OKLab (CharSource.edge). Only the
head's columns change from frame to frame.
|
| | |
| |
| |
| |
| |
| |
| | |
ThumbFlash (off by default) brightens a body's scroll thumb toward the ink
when its view moves and fades it back over 250 ms, truecolor only. The tty
present path now clears shell_continuous once before its effects and each
effect only raises it, so the trail and the flash no longer mask each other.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ChipShadow on|off (off; the tty shell's, §9.2 T1): each notice chip casts
a shadow one cell right and one down inside its own pane's body: on a
blank cell a half block (▌ right, ▀ below, ▘ at the corner) in a colour
35% darker than the ground (OKLab), so the shadow is half a cell thick;
under text the ground itself darkened. Never the cursor's cell, a
selection, a tag or another chip; truecolor terminals only.
Tests: the shadow lies right of or below the chip, never in it; nothing
with it off or without truecolor. Snapshots unchanged. Feel review:
.scratch/render/tty/shadow/.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
animation.dissolveRevealed (the tty compositor's dissolve and the pointer
mapping that follows it) swaps each changed cell once at its place in a
4x4 Bayer matrix, shifted by the pane's serial so two panes differ,
instead of at a hashed noise threshold: the new content comes in as an
even patterned screen (§9.2 T4). Endpoints stay exact.
Tests: a 4x4 block reveals exactly t x 16 cells at t = 1/4, 1/2, 3/4.
Snapshots unchanged. Feel review: .scratch/render/tty/dissolve/ (the
matrix over two real frames; the recorded session's pane did not
animate, noted in docs/effects.md).
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
JumpTrail on|off (off; the tty shell's, §9.2 T2): a jump of three cells or
more leaves three to five cells of trail behind the cursor along its path,
their ground mixed toward the text's colour in OKLab (most beside the
cursor), fading out over 120 ms. Truecolor terminals only (vaxis's answer,
or COLORTERM truecolor/24bit); never the cursor's own cell, a selection or
anything outside the focused pane's body; none under Motion off. It rides
the continuous path (Pardes.shell_continuous) while it lasts; a few cells
of output a frame. docs/effects.md opens the terminal track with the audit
under decision 2 (keep and polish, remove nothing).
Tests: a ten-cell jump lights 3 to 5 cells behind the cursor on its row,
gone by 120 ms; a one-cell step and a terminal without truecolor light
none. Feel review: .scratch/render/tty/trail/ (a real tty session replayed
through pyte at 60 fps).
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Afterglow on|off (off, a pixel shell's; Chrome.fx bit 4): the GUI keeps
the grid it last drew and when each cell changed; a body cell whose text
changed glows in the theme's accent, at most 18% and under the text's
contrast floor, fading with an ease-out over 250 ms, one flat rectangle a
run of cells that changed together; never a tag or a grip, the cursor or a
selection; a scrolled body (its first line moved) starts over rather than
lighting up whole. On the continuous path while anything glows.
Tests: three changed cells glow as a run of two (the cursor's left out),
gone by 250 ms, a scroll lights nothing. Gates as before; goldens
byte-identical. Feel review: .scratch/render/afterglow/.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Parallax on|off (off, a pixel shell's; Chrome.fx bit 3). A body region
carries its first line (Region.line, a file's scroll or a terminal's grid
offset; the wire's region record grows a u32). The GUI offsets each
body's page dots by a quarter of its line in rows, and of G6's glide
offset while one runs, so the pattern drifts with the text and settles
with it; the cell shader reads it from the instance's serial slot, whose
per-cell dissolve noise G7 left unused (the dead noise code goes).
Tests: a scrolled body tells its line; the shift handed to the shader is
a quarter of it within the dots' period. Measured in a capture: four lines
move the dots 13 px (140 px / 4 mod 22). Gates as before, goldens
byte-identical. Feel review: .scratch/render/parallax/.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
test/gui_golden.py hashed a scene once two captures 400 ms apart agreed;
on a loaded machine a slow frame agreed with itself before the scene's
change landed and every later hash moved up a scene. A test window now
writes a status file into its capture directory each loop step (gui.zig
writeTestStatus: step, frames captured, idle — nothing owes a frame,
nothing moves, nothing waits on the core's clock), and the harness waits
for an idle step two past the one current when it asks: a 9P write has
been served by then, so the frame is the scene's. Two things kept a
window from ever going idle, both fixed:
- Look-hover re-armed forever: resting on a word with nothing to open, the
hover wait ran its two frames, found nothing, cancelled, and the next
present's pointer refresh started it again: a frame every other frame
for as long as the pointer rested there, live too (CPU). The place last
refused is remembered (Pardes.look_hover_refused) until the pointer
moves off it.
- The virtual clock moved only on a wait that timed out, so a steady
trickle of events held it still; it now moves to the core's wake too
when an event cut the wait short and nothing owes a frame.
Captures go to a directory of their own, outside the session's (a file
written there every frame is a change in the directory its panes look
at). All 17 goldens match the file as recorded at oooopqyv; eight runs,
five alongside a ReleaseFast build and three with all 16 cores saturated
(load 13-19), were byte-identical, 14 s a run unloaded (was ~30).
Tests: the resting pointer lets the core go idle.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Occlusion on|off (off, a pixel shell's; Chrome.fx bit 2 — the glow bits
field is now `fx`): four soft strips cast from just outside each pane body
inward, clipped to the body and round a cursor, black pre-warped to
linear light, 2% at most (§9.1) and under the lift's contrast ceiling,
in the pane's own group.
Tests: the shade stays inside the body, off the cursor, at most 2%.
Gates as G11. Feel review: .scratch/render/occlusion/ (with an x40 diff).
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
HoverGlow on|off (off, a pixel shell's; Chrome.glows bit 1, SelectionGlow
bit 0 now that there are two): under the word a look-hover would open (its
cells in the affordance's tint) a strip three logical pixels tall along
its foot, blurred by one, in the theme's accent, at most 22% and under
the text's contrast floor, fading in over 80 ms; kept to the bodies and
split round a cursor. glowBlocks serves G9 and G11. The strip is cast from
a row away so addSoft's caster cut-out misses it.
Tests: the glow comes up by 90 ms and never falls on the cursor's cell.
Gates as G10 (a loaded machine shifted the GUI goldens a scene once; a
rerun matched 01-08). Feel review: .scratch/render/hover/.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Exit's refusal (and Restore's, Del's, Delcol's, get's) put its full text
on a notice that went: a long list of names, gone before it was read. The
list now goes into one +Unsaved pane, filled again by each refusal, a row
a pane (`<name>: Modified`) and the `Exit again to discard` line; the
notice is short, `3 unsaved panes — Exit again to discard`. The 9P
`unsaved` records and the write's err are as they were.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
files and dumps
The user asked for the plainer words. Every use is renamed: the
builtins, leader paths, /commands, the docs and tutor, tests, and the
themesel golden, re-recorded. An init file's ThemeSel or FontSel runs
the new word and says `ThemeSel: renamed to Themes`, as ColumnTags is
said; a dump naming an output pane by the old word restores it.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
closed file reopens it
A file closed by accident, its path forgotten, could not be found again:
the jumplist dropped closed panes. Every file opened (a look, a Save of a
scratch, a Restore, a rename) goes first in a list of 200, kept once, its
dot noted when it closes, kept across sessions in $XDG_STATE_HOME/pardes/
recent. `Recent` (SPC f r) shows it in a reused +Recent, each row
`path:line:col open|closed` a look reopens; /recent reads `open|closed
<path>`. The jumplist keeps a closed file's entries, +Jumps marks them
`(closed)`, and Back to one opens the file at its place. acme has no
such thing; its dump and Load are the nearest.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Placement halved the tallest pane or refused, so 11 panes filled 48 rows
that hold 16 at their tag and two rows each: the refusal did not match
the documented arithmetic. When no pane can be halved but the minimums
with the new pane's fit, the column's rows are shared out again; and a
refused pane's removal leaves no pane under its minimum.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Each Grep with a new pattern opened another +Search, until the column
refused panes. Find and Grep now reuse their directory's one, as acme
reuses +Errors, and the exec reads back the pane it filled; a plain
word's LookWord list search keeps a pane a pattern as before.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
in the log, data reads to the end
The skill said --detach forks and $! was not the editor's pid; it is, and
/status agrees. A line written with no newline runs at the close, after
the write is answered, so its failure is in the log alone: end lines
with their newline. And `cat data` reads from the address to the end of
the text, as acme's does; xdata is the range.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
are ENOENT, a GUI-only setting EINVAL
A Dump into a DumpDir not there failed EIO `file not found`; `no shell
"x"` read as EIO through a mount; and a GUI-only setting on a terminal,
EINVAL in the reply, had no word 9ns reads as EINVAL. Each says so in the
words that give its errno: `no such directory`, `not found`, `invalid
here`.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
`bad event syntax` said nothing of which: now it says a report record
(I D i d) is not written back, a range ends before it starts, or what a
record looks like when the line is not one.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
on a text
Round 20 reported a malformed address on a terminal answering otherwise;
it answers `bad address syntax` here, as on a text pane, and this holds it.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
refused before running is
Failures of a builtin through a ctl quoted the line after the builtin's
own words, which already named it (`Mount dead /x: dial failed: no answer
"Mount dead /x"`), while the same failure through exec did not. A line
that ran says why in its own words everywhere now; only a line refused
as no message at all quotes it, as Plan 9's cmderror does.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
newline
With `\n` for a newline and `\xNN` for a bad byte, a name holding a
backslash and an n read back as one holding a newline. Names in /index,
the log and a terminal's tag now double their own backslashes; and a
terminal's directory with a newline no longer breaks its tag.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
answers
A shell whose exec failed (a script's missing interpreter) was reported
started: Tty and pty/ctl exec succeeded, then the pane died. The child now
reports a failed chdir or exec through a close-on-exec pipe the parent
reads before acknowledging the shell; the host's spawn fails with the
reason (`shell not found`, ENOENT), which fails the waiting write. A Tty
whose first shell never ran leaves no pane; a terminal restarted by
pty/ctl exec keeps its pane.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
a new one is
The guard that keeps a shell from taking this process's directory before
its chdir lasted only until the first shell spoke; a shell started again
in the same pane (pty/ctl exec) was asked with the old shell's word still
standing. A spawn resets it. fs.py's naming test restarts one too.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
says so
A NUL written into a tag went into the dump, which the host then could
not write, and Dump said nothing: a success that wrote nothing. Tag
writes, the workspace's, a column's and a pane's, refuse control
characters but tab and newline, DEL, C1 and bytes not UTF-8, EINVAL; and
Dump reports any failure of its own instead of swallowing it.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A pane named `/virtual` gave Grep the root `/`, which swallowed every
other pane's directory and ran out of walk before any file: every Grep
missed. Grep passes over panes of the served tree. And `.` from a pane
whose directory was gone resolved to the served tree's root (/virtual/),
or through the jump list to another pane's directory: a dot path is the
looking pane's own, and gone it fails, `look: <dir>: no such directory`.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
words are
Edit was let through the pane-word check (the root's ctl takes it at the
active pane), so `Edit ,d` written to a tag no pane owns wiped the pane
with the keyboard. Every pane-scope word a tag does not hold is refused
there now, Edit included; a test enumerates them all.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|