-
-
Notifications
You must be signed in to change notification settings - Fork 664
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create custom lists of adjectives and nouns for generating session names #2122
Conversation
Thank you for your efforts, but I don't see the way to customize the words, which are just written in the code |
Hey @khs26 - I'm happy to see a code contribution from you! I have a suggestion: what do you think of approaching this as a black-list instead? We could black list specific words (racial slurs, curses, etc.) or specific combinations that might be problematic (as demonstrated in one of the linked issues). I suggest this for several reasons:
What say you? Otherwise, to your questions:
|
I had a bit of time and thought I'd nose around in the code a bit. :) Things are looking good!
No worries about licensing - I just chose a bunch of words that I thought were either strictly positive or neutral in tone, I didn't take them from
Ack.
Unsure - when I look at |
Currently, there are 1124 adjectives, 981 nouns in the |
Why not just remove the names and leave it to the user? |
Because "annoying elevator" is much easier for Humans to remember than But you can totally remove this behavior with something like |
@imsnif Thanks for the suggestion! I normally set my session name to the complete work path so it can become quite long. I guess what I'm really looking for is to not have the session name show at all. |
@pergamomo - alright. You can open a separate issue for that though if you like (if there isn't one already?) - but let's not derail this PR please :) |
Hey @khs26 - no pressure, but just for transparency - would you still like to see through the blacklist implementation we spoke about above? |
Just wondering if there are anything blocking this PR from being merged? If the issue is word list length, the names package is MIT-licensed so I reckon we can just prune negative words from that package's list and have a credit on top? |
Also wondering the same, and bumping this since this has come up a few times again recently. In my opinion maintaining a blacklist would be more complicated. |
I think at this point unless @khs26 will quickly disagree, it is safe to assume this is up for grabs. I think in one of the issues someone linked a 3rd party sanitizer, maybe that would be the best course of action? Honestly though, let's get this done. @tlinford - could you see to this getting into main in one way or another? |
Just adding that I too would like for this to be landed. |
This PR is better than the sanitizer that I mentioned or the word list that I recommended from CMU. Zellij doesn't need millions of sessions so using a small list of word pairs is helpful and since most of the adjectives are positive and the rest are neutral (maybe with the exception of "rusty" but I'll count that one as positive given the context lol) and the nouns are all animals or inanimate objects that have no (as far as I'm aware) alternative interpretations. |
But I would also be happy to just have the CMU denylist from here if there's some hold up on this PR for what ever reason: https://www.cs.cmu.edu/~biglou/resources/ |
…g session names (zellij-org#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]>
* WIP: add exaple of permission ui * feat: add request permission ui * feat: add caching permission in memory * feat: add permission check * feat: add file caching * fix: changes request * feat(ui): new status bar mode (#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR #2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * style(fmt): rustfmt * touch up ui * fix: don't save permission data in memory * feat: load cached permission * test: add example test (WIP) * fix: issue event are always denied * test: update snapshot * apply formatting * refactor: update default cache function * test: add more new test * apply formatting * Revert "apply formatting" This reverts commit a4e9370. * apply format * fix: update cache path * apply format * fix: cache path * fix: update log level * test for github workflow * Revert "test for github workflow" This reverts commit 01eff3b. * refactor: permission cache * fix(test): permission grant/deny race condition * style(fmt): rustfmt * style(fmt): rustfmt * configure permissions * permission denied test * snapshot * add ui for small plugins * style(fmt): rustfmt * some cleanups --------- Co-authored-by: Aram Drevekenin <[email protected]> Co-authored-by: har7an <[email protected]> Co-authored-by: Kyle Sutherland-Cash <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: Thomas Linford <[email protected]>
* add necessary actions in server and utils * update * move all logic relevant to local default config directories to utils::home * add debug statements for pane geom * add tests; print resulting kdl * fix dumping custom layouts from setup; start fixing algorithm for simplest layout possible * fix: fixed persistence code and tests to support flexible layouts * fix(tab-bar,compact-bar): tab switching with mouse sometimes not working (#2587) * tab-bar: fix clicks sometimes not registering Caching the click position wasn't working across multiple plugin instances. Also a couple of refactors: - move the code with the tab switching logic inside update - avoid rendering when calling switch_tab_to, since it will happen anyway afterwards * same fix for compact-bar * docs(changelog): plugins tab switching with mouse fix * feat(ui): new status bar mode (#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR #2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * fix(terminal): properly handle resizes in alternate screen (#2654) * docs(changelog): focus glitches * feat(plugins): utility functions to find active pane and tab (#2652) * docs(changelog): plugin api utility functions * feat(ui): break pane to new tab and move panes between tabs (#2664) * prototype * some tests * break out floating pane * break out plugin panes * add keybind and fix some minor issues * remove cli * move pane to left/right tab * update ui * adjust ui * style(fmt): rustfmt * style(comment): remove commented code * update snapshots * docs(changelog): break pane to new tab * fix(performance): plug memory leak (#2675) * docs(changelog): plug memory leak * feat(plugins): use protocol buffers for serializing across the wasm boundary (#2686) * work * almost done with command protobuffers * done translating command data structures * mid transferring of every command to protobuff command * transferred plugin_command.rs, now moving on to shim.rs * plugin command working with protobufs * protobuffers in update * protobuf event tests * various TODOs and comments * fix zellij-tile * clean up prost deps * remove version mismatch error * fix panic * some cleanups * clean up event protobuffers * clean up command protobuffers * clean up various protobufs * refactor protobufs * update comments * some transformation fixes * use protobufs for workers * style(fmt): rustfmt * style(fmt): rustfmt * chore(build): add protoc * chore(build): authenticate protoc * docs(changelog): protobuffers * feat: add plugin permission system (#2624) * WIP: add exaple of permission ui * feat: add request permission ui * feat: add caching permission in memory * feat: add permission check * feat: add file caching * fix: changes request * feat(ui): new status bar mode (#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR #2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * style(fmt): rustfmt * touch up ui * fix: don't save permission data in memory * feat: load cached permission * test: add example test (WIP) * fix: issue event are always denied * test: update snapshot * apply formatting * refactor: update default cache function * test: add more new test * apply formatting * Revert "apply formatting" This reverts commit a4e9370. * apply format * fix: update cache path * apply format * fix: cache path * fix: update log level * test for github workflow * Revert "test for github workflow" This reverts commit 01eff3b. * refactor: permission cache * fix(test): permission grant/deny race condition * style(fmt): rustfmt * style(fmt): rustfmt * configure permissions * permission denied test * snapshot * add ui for small plugins * style(fmt): rustfmt * some cleanups --------- Co-authored-by: Aram Drevekenin <[email protected]> Co-authored-by: har7an <[email protected]> Co-authored-by: Kyle Sutherland-Cash <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): permission system * feat(sessions): add a session manager to switch between sessions, tabs and panes and create new ones (#2721) * write/read session metadata to disk for all sessions * switch session client side * fix tests * various adjustments * fix full screen focus bug in tiled panes * fix tests * fix permission sorting issue * cleanups * add session manager * fix tests * various cleanups * style(fmt): rustfmt * clear screen before switching sessions * I hate you clippy * truncate controls line to width * version session cache * attempt to fix plugin tests * style(fmt): rustfmt * another attempt to fix the tests in the ci * docs(changelog): session manager * fix(ux): various ui/ux fixes (#2722) * force plugin render on permission request response * clear warnings * Revert "feat(ui): new status bar mode (#2619)" This reverts commit 27763d2. * adjust status bar help * fix colors in session manager and shortcut in status-bar * adjust keybindings * docs(changelog): update ux fixes * feat(plugins): optionally move plugin to focused tab (#2725) * feat(plugins): move_to_focused_tab attribute for LaunchOrFocusPlugin * style(fmt): rustfmt * docs(changelog): move plugin to focused tab * fix(keybinds): add 'floating' and 'name' to the Run command keybinding (#2726) * fix(keybinds): add 'floating' and 'name' to the Run command keybinding * style(fmt): rustfmt * docs(changelog): keybind run floating pane * fix(plugins): make sure configuration is also part of the plugin keys (#2727) * fix(plugins): make sure configuration is also part of the plugin keys * no thanks clippy * docs(changelog): fix plugin configuration uniqueness * fix(plugins): remove protobuf duplications (#2729) * fix(plugins): remove protobuf duplications * style(fmt): rustfmt * Update CHANGELOG.md * fix(plugins): various ui fixes (#2731) * Update CHANGELOG.md * fix(panes): refocus pane properly on tab change (#2734) * fix(panes): stacked panes focus bug * style(fmt): rustfmt * docs(changelog): stacked pane focus glitch * xtask/pipeline: Fix publish task (#2711) * xtask/pipeline: Fix publish task which was previously stuck in an infinite loop after successfully publishing a crate. The error originated in the code only checking for error conditions but not breaking out of the inner infinite loop in case of success. * xtask: Improve publish failure UX by offering the user more actions to choose from when an error occured. * utils/assets: Add generated prost files to assets to make sure they're available at build time and are picked up by all components. It seems we hit some strange bug with the build script where, when running `cargo publish --dry-run` the build script **is not** run before regularly compiling zellij-utils. This shouldn't happen according to the docs, but I cannot explain what's causing it. So we're using this as a workaround for now to make a smooth release. * xtask: Prevent accidental git commit deletion when dry-running a publish. * utils: Add comments to protobuf-related code to explain why these changes were performed. The comments all include a link to an issue comment explaining the situation in greater detail. * xtask: Build protobuf definitions when building any part of the project, similar to how we build the plugins when required. This should ensure that all crates built through `cargo xtask` (which is the officially supported build method) will receive up-to-date protobuf definitions. * chore(release): v0.38.0 * chore(version): bump development version * refactor(server): remove unnecessary mut (#2735) * docs(changelog): refactor server * chore(repo): update build instructions * fix(status-bar): add break tab hints (#2748) * fix(status-bar): add break tab hints * fix(tests): update snapshot to new hints * Update CHANGELOG.md * fix(reconnect): do not clear terminal state when entering alternate screen (#2750) * debug * refactor(reconnect): articular reconnection logic * docs(changelog): fix glitches on windows terminal * fix(grid): memory leak with unfocused tabs (#2745) * use hashset instead of vec for changed lines avoid output buffer growring indefinitely if tab does not get rendered * tidy up - improve hashset -> vec conversion - remove now unnecessary dedup * use copied instead of cloned on iter * docs(changelog): grid memory leak fix * fix(input): block input thread for newtiledpane and newfloatingpane as well (#2757) * docs(changelog): input action new pane fix * chore(version): adjust version for release * chore(release): v0.38.1 * chore(version): bump development version * fix(terminal): wrap lines when adding characters in alternate screen (#2789) * docs(changelog): line wrap bug * chore(version): bump version for patch release * chore(release): v0.38.2 * chore(version): bump development version * fix(utils): validate session name (#2607) * fix(utils): validate session name * cargo fmt * refactor: assign constant values to variables * refactor: move operations unrealted to the condition --------- Co-authored-by: Jae-Heon Ji <[email protected]> * docs(changelog): fix validate session name * merge conflict fix * feat(panes): in place run (#2795) * prototype * fix tests * add to all the things except plugins * add in-place to plugin commands * fix launch-or-focus should_float and in place behavior * various cleanups * style(fmt): rustfmt * docs * bring in commands to dumped layout * tidy up data structures * bring in plugins to dumped layout * fix tests * style(fmt): rustfmt * chore: rename file (#2803) Signed-off-by: AlixBernard <[email protected]> * bring in floating panes * bring in stacked panes * style(fmt): rustfmt * bring in new_tab_template * bring in swap layouts * bring in edit panes, command panes and cwds * consolidate CWD common prefixes when possible * filter out default shell * style(fmt): rustfmt * handle scrollback editor panes properly * handle in place panes properly * bring in pane names * style(fmt): rustfmt * style(fmt): rustfmt * dump layout action to terminal * log session layout to HD periodically * resurrect dead sessions by attaching to them * delete dead sessions * style(fmt): rustfmt * start command panes as suspended by default * style(fmt): rustfmt * respect tab/pane focus * improve dump performance * hide_floating_panes in layout and resurrection * show resurrectable sessions in zellij ls and include timestamps * style(fmt): rustfmt * allow disabling session serialization in config * style(fmt): rustfmt * fix e2e tests * add e2e test * style(fmt): rustfmt * style(fmt): rustfmt * serialize and restore pane viewport * fix e2e tests and add new one * style(fmt): rustfmt * cleanups * cleanups * more cleanups * refactor: move stuff around * fix e2e tests * style(fmt): rustfmt * style(fmt): handle compilation warnings * add tests for new layout properties * fix current session name indication * style(fmt): rustfmt * adjust default config * some cleanups * go away clippy --------- Signed-off-by: AlixBernard <[email protected]> Co-authored-by: alekspickle <[email protected]> Co-authored-by: Example Name <[email protected]> Co-authored-by: Oleks Gnatovskyi <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: har7an <[email protected]> Co-authored-by: Kyle Sutherland-Cash <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: Nacho114 <[email protected]> Co-authored-by: Jae-Heon Ji <[email protected]> Co-authored-by: Orhun Parmaksız <[email protected]> Co-authored-by: deepsghimire <[email protected]> Co-authored-by: Jae-Heon Ji <[email protected]> Co-authored-by: AlixBernard <[email protected]>
* add necessary actions in server and utils * update * move all logic relevant to local default config directories to utils::home * add debug statements for pane geom * add tests; print resulting kdl * fix dumping custom layouts from setup; start fixing algorithm for simplest layout possible * fix: fixed persistence code and tests to support flexible layouts * fix(tab-bar,compact-bar): tab switching with mouse sometimes not working (zellij-org#2587) * tab-bar: fix clicks sometimes not registering Caching the click position wasn't working across multiple plugin instances. Also a couple of refactors: - move the code with the tab switching logic inside update - avoid rendering when calling switch_tab_to, since it will happen anyway afterwards * same fix for compact-bar * docs(changelog): plugins tab switching with mouse fix * feat(ui): new status bar mode (zellij-org#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (zellij-org#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (zellij-org#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR zellij-org#2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (zellij-org#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (zellij-org#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * fix(terminal): properly handle resizes in alternate screen (zellij-org#2654) * docs(changelog): focus glitches * feat(plugins): utility functions to find active pane and tab (zellij-org#2652) * docs(changelog): plugin api utility functions * feat(ui): break pane to new tab and move panes between tabs (zellij-org#2664) * prototype * some tests * break out floating pane * break out plugin panes * add keybind and fix some minor issues * remove cli * move pane to left/right tab * update ui * adjust ui * style(fmt): rustfmt * style(comment): remove commented code * update snapshots * docs(changelog): break pane to new tab * fix(performance): plug memory leak (zellij-org#2675) * docs(changelog): plug memory leak * feat(plugins): use protocol buffers for serializing across the wasm boundary (zellij-org#2686) * work * almost done with command protobuffers * done translating command data structures * mid transferring of every command to protobuff command * transferred plugin_command.rs, now moving on to shim.rs * plugin command working with protobufs * protobuffers in update * protobuf event tests * various TODOs and comments * fix zellij-tile * clean up prost deps * remove version mismatch error * fix panic * some cleanups * clean up event protobuffers * clean up command protobuffers * clean up various protobufs * refactor protobufs * update comments * some transformation fixes * use protobufs for workers * style(fmt): rustfmt * style(fmt): rustfmt * chore(build): add protoc * chore(build): authenticate protoc * docs(changelog): protobuffers * feat: add plugin permission system (zellij-org#2624) * WIP: add exaple of permission ui * feat: add request permission ui * feat: add caching permission in memory * feat: add permission check * feat: add file caching * fix: changes request * feat(ui): new status bar mode (zellij-org#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (zellij-org#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (zellij-org#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR zellij-org#2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (zellij-org#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (zellij-org#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * style(fmt): rustfmt * touch up ui * fix: don't save permission data in memory * feat: load cached permission * test: add example test (WIP) * fix: issue event are always denied * test: update snapshot * apply formatting * refactor: update default cache function * test: add more new test * apply formatting * Revert "apply formatting" This reverts commit a4e9370. * apply format * fix: update cache path * apply format * fix: cache path * fix: update log level * test for github workflow * Revert "test for github workflow" This reverts commit 01eff3b. * refactor: permission cache * fix(test): permission grant/deny race condition * style(fmt): rustfmt * style(fmt): rustfmt * configure permissions * permission denied test * snapshot * add ui for small plugins * style(fmt): rustfmt * some cleanups --------- Co-authored-by: Aram Drevekenin <[email protected]> Co-authored-by: har7an <[email protected]> Co-authored-by: Kyle Sutherland-Cash <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: Thomas Linford <[email protected]> * docs(changelog): permission system * feat(sessions): add a session manager to switch between sessions, tabs and panes and create new ones (zellij-org#2721) * write/read session metadata to disk for all sessions * switch session client side * fix tests * various adjustments * fix full screen focus bug in tiled panes * fix tests * fix permission sorting issue * cleanups * add session manager * fix tests * various cleanups * style(fmt): rustfmt * clear screen before switching sessions * I hate you clippy * truncate controls line to width * version session cache * attempt to fix plugin tests * style(fmt): rustfmt * another attempt to fix the tests in the ci * docs(changelog): session manager * fix(ux): various ui/ux fixes (zellij-org#2722) * force plugin render on permission request response * clear warnings * Revert "feat(ui): new status bar mode (zellij-org#2619)" This reverts commit 27763d2. * adjust status bar help * fix colors in session manager and shortcut in status-bar * adjust keybindings * docs(changelog): update ux fixes * feat(plugins): optionally move plugin to focused tab (zellij-org#2725) * feat(plugins): move_to_focused_tab attribute for LaunchOrFocusPlugin * style(fmt): rustfmt * docs(changelog): move plugin to focused tab * fix(keybinds): add 'floating' and 'name' to the Run command keybinding (zellij-org#2726) * fix(keybinds): add 'floating' and 'name' to the Run command keybinding * style(fmt): rustfmt * docs(changelog): keybind run floating pane * fix(plugins): make sure configuration is also part of the plugin keys (zellij-org#2727) * fix(plugins): make sure configuration is also part of the plugin keys * no thanks clippy * docs(changelog): fix plugin configuration uniqueness * fix(plugins): remove protobuf duplications (zellij-org#2729) * fix(plugins): remove protobuf duplications * style(fmt): rustfmt * Update CHANGELOG.md * fix(plugins): various ui fixes (zellij-org#2731) * Update CHANGELOG.md * fix(panes): refocus pane properly on tab change (zellij-org#2734) * fix(panes): stacked panes focus bug * style(fmt): rustfmt * docs(changelog): stacked pane focus glitch * xtask/pipeline: Fix publish task (zellij-org#2711) * xtask/pipeline: Fix publish task which was previously stuck in an infinite loop after successfully publishing a crate. The error originated in the code only checking for error conditions but not breaking out of the inner infinite loop in case of success. * xtask: Improve publish failure UX by offering the user more actions to choose from when an error occured. * utils/assets: Add generated prost files to assets to make sure they're available at build time and are picked up by all components. It seems we hit some strange bug with the build script where, when running `cargo publish --dry-run` the build script **is not** run before regularly compiling zellij-utils. This shouldn't happen according to the docs, but I cannot explain what's causing it. So we're using this as a workaround for now to make a smooth release. * xtask: Prevent accidental git commit deletion when dry-running a publish. * utils: Add comments to protobuf-related code to explain why these changes were performed. The comments all include a link to an issue comment explaining the situation in greater detail. * xtask: Build protobuf definitions when building any part of the project, similar to how we build the plugins when required. This should ensure that all crates built through `cargo xtask` (which is the officially supported build method) will receive up-to-date protobuf definitions. * chore(release): v0.38.0 * chore(version): bump development version * refactor(server): remove unnecessary mut (zellij-org#2735) * docs(changelog): refactor server * chore(repo): update build instructions * fix(status-bar): add break tab hints (zellij-org#2748) * fix(status-bar): add break tab hints * fix(tests): update snapshot to new hints * Update CHANGELOG.md * fix(reconnect): do not clear terminal state when entering alternate screen (zellij-org#2750) * debug * refactor(reconnect): articular reconnection logic * docs(changelog): fix glitches on windows terminal * fix(grid): memory leak with unfocused tabs (zellij-org#2745) * use hashset instead of vec for changed lines avoid output buffer growring indefinitely if tab does not get rendered * tidy up - improve hashset -> vec conversion - remove now unnecessary dedup * use copied instead of cloned on iter * docs(changelog): grid memory leak fix * fix(input): block input thread for newtiledpane and newfloatingpane as well (zellij-org#2757) * docs(changelog): input action new pane fix * chore(version): adjust version for release * chore(release): v0.38.1 * chore(version): bump development version * fix(terminal): wrap lines when adding characters in alternate screen (zellij-org#2789) * docs(changelog): line wrap bug * chore(version): bump version for patch release * chore(release): v0.38.2 * chore(version): bump development version * fix(utils): validate session name (zellij-org#2607) * fix(utils): validate session name * cargo fmt * refactor: assign constant values to variables * refactor: move operations unrealted to the condition --------- Co-authored-by: Jae-Heon Ji <[email protected]> * docs(changelog): fix validate session name * merge conflict fix * feat(panes): in place run (zellij-org#2795) * prototype * fix tests * add to all the things except plugins * add in-place to plugin commands * fix launch-or-focus should_float and in place behavior * various cleanups * style(fmt): rustfmt * docs * bring in commands to dumped layout * tidy up data structures * bring in plugins to dumped layout * fix tests * style(fmt): rustfmt * chore: rename file (zellij-org#2803) Signed-off-by: AlixBernard <[email protected]> * bring in floating panes * bring in stacked panes * style(fmt): rustfmt * bring in new_tab_template * bring in swap layouts * bring in edit panes, command panes and cwds * consolidate CWD common prefixes when possible * filter out default shell * style(fmt): rustfmt * handle scrollback editor panes properly * handle in place panes properly * bring in pane names * style(fmt): rustfmt * style(fmt): rustfmt * dump layout action to terminal * log session layout to HD periodically * resurrect dead sessions by attaching to them * delete dead sessions * style(fmt): rustfmt * start command panes as suspended by default * style(fmt): rustfmt * respect tab/pane focus * improve dump performance * hide_floating_panes in layout and resurrection * show resurrectable sessions in zellij ls and include timestamps * style(fmt): rustfmt * allow disabling session serialization in config * style(fmt): rustfmt * fix e2e tests * add e2e test * style(fmt): rustfmt * style(fmt): rustfmt * serialize and restore pane viewport * fix e2e tests and add new one * style(fmt): rustfmt * cleanups * cleanups * more cleanups * refactor: move stuff around * fix e2e tests * style(fmt): rustfmt * style(fmt): handle compilation warnings * add tests for new layout properties * fix current session name indication * style(fmt): rustfmt * adjust default config * some cleanups * go away clippy --------- Signed-off-by: AlixBernard <[email protected]> Co-authored-by: alekspickle <[email protected]> Co-authored-by: Example Name <[email protected]> Co-authored-by: Oleks Gnatovskyi <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: har7an <[email protected]> Co-authored-by: Kyle Sutherland-Cash <[email protected]> Co-authored-by: Thomas Linford <[email protected]> Co-authored-by: Nacho114 <[email protected]> Co-authored-by: Jae-Heon Ji <[email protected]> Co-authored-by: Orhun Parmaksız <[email protected]> Co-authored-by: deepsghimire <[email protected]> Co-authored-by: Jae-Heon Ji <[email protected]> Co-authored-by: AlixBernard <[email protected]>
Description
Possibly addresses #1907 and #2114 by changing from using the
names
crate's default dictionary to a custom (and hopefully exclusively positive/neutral) set of adjectives and nouns.Questions for reviewers
Tests and formatting
All passed with
cargo xtask test
on Ubuntu (5.15.0-48 kernel) except fortests::e2e
which were all ignored.Formatted with
cargo fmt
.