summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* +Unsaved drops a pane once it has closedGabriel Schneider2 days
| | | | | | The list kept a pane's Modified row after the pane was closed (discarded), so it named text there was no longer anything to lose of. A pane's closing now takes its row out. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* After a failed address, one that goes from it (., +, -) says there is noneGabriel Schneider2 days
| | | | | | addr kept the old address under a failed one, and an address written relative to it went from that old one. Such an address now fails with no address: the last one written to addr failed, until one that stands alone is written. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* DumpDir reads back absolute and without a trailing slashGabriel Schneider2 days
| | | | | | A relative DumpDir read back as written, relative, and a trailing / stayed. It now resolves against the directory pardes started in, as a Dump already did, and is shown cleaned. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A bash or fish under another name gets its prompt marksGabriel Schneider2 days
| | | | | | The shell's kind was read from its file name alone, so a renamed or differently linked bash got no marks and read busy for ever. A name that says nothing now resolves its links, then looks in the program for bash's or fish's own strings; a POSIX shell's name (sh, even when it is bash) is taken at its word. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Tty or Shell naming a file that is there but not executable says soGabriel Schneider2 days
| | | | | | It said no shell "x", not found, as for a name that is nowhere. A file that exists without its execute bit now says not a shell: x is not executable. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Symbols, Diagnostics and every language server list share their directory's ↵Gabriel Schneider2 days
| | | | | | | | one +Search Only Find and Grep reused the directory's +Search; a language server's list made another pane of the same name each time. Every origin named +Search now shares it, but a plain word's search, which keeps a list a pattern for n/N to walk between. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A pattern with a newline and an anchor mvzr would misread is refused EINVAL, ↵Gabriel Schneider2 days
| | | | | | | | as the doc says Its words named no malformed input, so 9ns read the refusal as EIO, and Edit's failed EIO directly. It now says bad regular expression: ..., and Edit's failure with those words is EINVAL too. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* addr takes a row's range, L:C-L2:C2 or L:C-C2, so a Recent, +Search or ↵Gabriel Schneider2 days
| | | | | | | | Jumplist row pastes in The rows spell a range L:C-L2:C2 (inclusive), which addr read as L:C then back L2 lines. After an L:C, a - and a number is now that range, through its last character; the docs set both spellings side by side. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A look at a corrupt image fails with an err rather than open a blank paneGabriel Schneider2 days
| | | | | | An image stb_image could not read opened as an empty image pane, the look succeeding. The bytes' header is now checked at the look (stbi_info_from_memory), and one that is no image it reads fails the look, look: <path>: not an image pardes can read, making no pane. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A PDF's body reads the text layer of the page it showsGabriel Schneider2 days
| | | | | | The body of a PDF pane read as empty. It now reads MuPDF's text extraction of the page shown, the text search and n/N already use, read-only (a write is refused, as round 22's body refusal made it). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The workspace tag's Restore word names the last dump, and the dump a Restore ↵Gabriel Schneider2 days
| | | | | | | | came from Once the workspace tag was edited, its own text kept the Restore <path> of the dump at that time, stale after the next Dump; and a Restore dropped the path altogether (the new session had no last dump). A new dump now swaps the old path in the tag's own text, and a Restore points the word at the dump it read. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Two opens writing one body are separate undo steps, however they interleaveGabriel Schneider2 days
| | | | | | The join mark a write left was the pane's, so another open's write joined the first open's step. Writing opens of body, data and xdata now get an open record, the mark names the open that set it, and another open's write starts its own step (the pane's one history: each turn the opens take is a step). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Back or Forward over a closed file deleted since skips it and goes on, saying soGabriel Schneider2 days
| | | | | | A jumplist entry for a closed file no longer on disk tried to reopen it, failed as a look, and left the step stuck there. Its entries now go, the message row says <path>: deleted, skipped, and the same step is taken over what is left. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A name cut across writes on one open is one name, applied onceGabriel Schneider2 days
| | | | | | Each write to name was taken as a whole name, so a name a client wrote in two pieces renamed the pane twice, the first time to half a name. name's writes are now held per open, as exec's and ctl's lines are, until the newline or the close. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A Theme hint drops whole names to fit, never cutting one mid-wordGabriel Schneider2 days
| | | | | | The names were written into a fixed room until it ran out, the last one cut, and the click's form ran past the 128 bytes a 9P error carries. Each name now goes in whole or not at all, and both forms are sized to fit. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A clamped Recent range ends at a line's last character, never swallowing its ↵Gabriel Schneider2 days
| | | | | | | | newline A range past the end of a file that had shrunk was clamped to the empty line after its final newline and to one past a line's last character, so the selection took the newline in. Its ends now clamp to the last line and to its last character, as addr's L:C does. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A look miss said again is its err record counted, as any repeated err isGabriel Schneider2 days
| | | | | | Look's miss pushed its err record plain, so a script retrying one look filled the log with the same line, where other errs are counted (x2). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Callers and Callees on a .zig file say the language server does not answer themGabriel Schneider2 days
| | | | | | The in-process ZLS answers no call hierarchy, and no other backend speaks .zig, so the question went nowhere and came back empty, as if nothing called the function. A question no backend answers, or a server that advertises no call or type hierarchy, now answers @none with why, which the core says. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A language server question that finds nothing, cannot be answered or has no ↵Gabriel Schneider2 days
| | | | | | | | room fails, and so does a write to an image's or PDF's body Callers or Callees with nothing found, Hover or Lspwhy with no room for its pane, and a question asked of no file's pane said nothing, the 9P write succeeding; a body write to an image or PDF pane went nowhere. A write that asks a language server now waits for its answer (turn.lsp_answers), and what fails there -- nothing found, no answer, a backend's @none why, a placement with no room (ENOSPC) -- fails the write and logs its err. No diagnostics is said, not failed. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Recent goes on across a Restore, and is kept after itGabriel Schneider2 days
| | | | | | A Restore makes a new session, which never loaded the kept list, and saveRecent gives up until it has: Recent was empty after a Restore and nothing opened afterwards was kept. The new session now takes the old one's list (a boot from a dump reads the kept file). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Merge: 9P round 21 + Afterglow removed + symmetric focus dimGabriel Schneider2 days
|\
| * A focus change dims and brightens on the same spring, both waysGabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | The pane focus left dimmed on its lift spring while the one it reached undimmed in a single frame, a pop the user could read as a flash. Now the focused pane fades back on the same spring (its body's text only: its tag and a selection are focus indicators no effect may alter), so a focus change is symmetric; Motion off snaps both. Measured on lapis with InactiveDim 35: the biggest frame-to-frame step of either half went from 3.4 levels in one frame to 1.5 (smooth) and 1.6 (bouncy), a ramp both ways.
| * Afterglow (G14) is removedGabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | The user, looking at the lapis showcase: "one of the animations is like a flashing on the whole pane or something, that is really bad, just remove it". Every changed cell glowing meant a pane whose whole text changed (a file opened, a +Search refilled, a terminal's output) lit up at once: replacing a pane's text took its mean brightness from 38 to 70 and back over 250 ms. Gone like Ripple and Glitch: the builtin, the setting, its Chrome fx bit, the GUI's diff state and decor, the test, and the docs, which keep the user's words.
* | A builtin or setting this build lacks is refused GUI-only, from an exec tooGabriel Schneider2 days
| | | | | | | | | | | | On a terminal, Fonts written to an exec was no builtin there, so it ran as a shell command and ended exit 127; ctl said unknown control message. Both now say Fonts is GUI-only, invalid here (a builtin another platform's build has, not in this build). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | Theme takes a name in any case, and a miss names its nearest themesGabriel Schneider2 days
| | | | | | | | | | | | Names were case-sensitive, and a miss listed only the first letter's themes that fitted 40 bytes, 4 of the many d ones. It now lists every theme sharing the first letter when they fit the 128 bytes an Rerror carries, else the nearest by a plain likeness score (shared prefix, the name inside, its letters in order). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A Dump into a DumpDir that is no directory says so; the doc says a missing ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | last directory is made DumpDir /dev/null said no such directory though it is there, and the doc claimed a missing DumpDir always fails, where its last component is made at the Dump. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | Recent keeps only files on disk, and its cap never drops an open oneGabriel Schneider2 days
| | | | | | | | | | | | A renamed scratch never saved and a /virtual/ pane were recorded as recent files, and at 200 the oldest entry went even when that file was open. Opens, renames and closes now record a path only when it is a file on this host, and the cap drops the oldest closed entry. A name with a newline is not written to the kept list, where it would read back as two. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | get's refusal over unsaved text logs its unsaved record, as the other ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | refusals do Exit, Restore, Del and Delcol log unsaved <serial> <name> before their err; get logged only the err. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A list pane opened from a terminal that has not said its directory yet lands ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | in the session's ThemeSel (Themes) in an init file ran at a terminal whose shell had not reported its cwd, so +Themes opened as /+Themes. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | The panes present at boot are the log's first records, before what an init ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | file said The boot announce ran after the init file, so its msg (ThemeSel: renamed to Themes) came before new 1. A msg or path record said while the log is still empty now announces the panes first. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A builtin's Verbose announcement is the message row's alone, never loggedGabriel Schneider2 days
| | | | | | | | | | | | With Verbose on by default, /log filled with msg - DumpDir, msg 4 Grep and the like, with machinery to take an announcement back out when its builtin failed or said something itself. A msg record is now only something said; the take-back machinery goes with it. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | /recent shows a name as /index does, a newline in it escapedGabriel Schneider2 days
| | | | | | | | | | | | It printed paths raw, so a name holding a newline read as two rows. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A pty/ctl exec that cannot start its shell keeps the one runningGabriel Schneider2 days
| | | | | | | | | | | | Each host closed the running shell before it forked the new one, so an exec whose shell failed left the pane with none and later runs answered error shell gone. A shell not there is now refused up front, and every host starts the new shell first, replacing the old only once the close-on-exec pipe says it ran; a failure there is only said (restartFailed). Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A script whose interpreter is not there is told apart from a missing shell, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | and Tty refuses it up front Tty's up-front check found the script and let it through, so the pane was made, its exec failed ENOENT, and the log read new, msg shell: shell not found, del, then the err. The check now reads a script's #! line and refuses it, interpreter /no/such/interp not found, and an exec that fails ENOENT on a file that is there says the same. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A look at a ./ or ../ name that is not there names the file, not the pane's ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | directory Any relative name that opened nothing was blamed on the pane's directory (look: .../work/many: no such directory) though it exists; the directory is named only when it is gone. A plain name is still looked for as text, its miss logged as any look's. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A Find or Grep that finds nothing empties its directory's +SearchGabriel Schneider2 days
| | | | | | | | | | | | It failed with no match but left the last search's rows in the +Search, where they read as this one's. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A repeated identical search reads back the +Search it left as it wasGabriel Schneider2 days
| | | | | | | | | | | | When a Find or Grep found exactly what its +Search already held, the pane was kept but not marked as the one the search touched, so the exec read back the pane it ran in. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | A directory's +Search is found by its directory, the pane that ran the ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | search included Find and Grep passed over the pane they ran in when looking for the +Search to fill, so a Grep written to a +Search's own exec made a second one, and the two swapped roles on each run after. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* | The writes of one open of data, body or xdata are one undo stepGabriel Schneider2 days
| | | | | | | | | | | | 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]>
* | One reopen of a closed file is that file's pane in every jumplist entryGabriel Schneider2 days
| | | | | | | | | | | | 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]>
* | A remembered place is clamped to the file as it is now, its selection's two ↵Gabriel Schneider2 days
|/ | | | | | | | 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]>
*-. Merge: 9P rounds 18-20 + Recent + renames + render G11-G14, tty track, ↵Gabriel Schneider2 days
|\ \ | | | | | | | | | cursor + faithful themes
| | * Doom One, as close to the original as pardes draws: doom_one, doom_one_lightGabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * Ayu, as close to the original as pardes draws: ayu_dark, ayu_mirage, ayu_lightGabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
| | * Nord, as close to the original as pardes draws: nordGabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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, as close to the original as pardes draws: zenbones_light, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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, as close to the original as pardes draws: seoul256_dark_233, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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, as close to the original as pardes draws: catppuccin_latte, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
| | * Rosé Pine, as close to the original as pardes draws: rose_pine, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * Tokyo Night, as close to the original as pardes draws: tokyonight_night, ↵Gabriel Schneider2 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).