Commit Graph

2876 Commits

Author SHA1 Message Date
Aram Drevekenin
8a8ffb37be
fix(ux): only damage the relevant swap layout layer when resizing panes (#3654) 2024-10-09 12:21:06 +02:00
Aram Drevekenin
b71959e9f9
docs(changelog): pane name fixes 2024-10-09 10:45:46 +02:00
Aram Drevekenin
8de5947771
fix(ui): various pane name fixes (#3653) 2024-10-09 10:44:43 +02:00
Aram Drevekenin
c6e1f0a5fb
docs(changelog): add cache dir to setup 2024-10-09 09:48:24 +02:00
Aram Drevekenin
317fcdd91f
feat(cli): show CACHE_DIR in zellij setup --check (#3652) 2024-10-09 09:47:17 +02:00
Aram Drevekenin
5d539b998e
docs(changelog): plugin selectable race 2024-10-09 08:10:47 +02:00
Aram Drevekenin
06a98fd971
fix(plugins): handle race when setting plugin selectable (#3651) 2024-10-09 08:08:29 +02:00
Aram Drevekenin
2aca07d74c
docs(changelog): improve --layout flag 2024-10-08 16:58:49 +02:00
Aram Drevekenin
203fbf7a49
feat(cli): make --layout idempotent(-ish) (#3650)
* feat(cli): if inside a session, apply --layout to the session

* fix(screen): some focusing races when switching tab focus

* style(fmt): rustfmt
2024-10-08 16:57:54 +02:00
Aram Drevekenin
4ac7d08658
docs(changelog): http fix 2024-10-04 18:10:14 +02:00
Aram Drevekenin
ba2772e31c
fix(http): web requests (#3643) 2024-10-04 18:09:06 +02:00
Aram Drevekenin
a88b34f54f
docs(changelog): resurrection fixes 2024-10-02 16:17:30 +02:00
Aram Drevekenin
0511ae1ae2
fix(resurrection): various serialization issues (#3636)
* fix(serialization): use kdl-rs for serialization

* style(fmt): remove dead code

* tests(serialization): update snapshots

* style(fmt): rustfmt
2024-10-02 16:16:22 +02:00
Aram Drevekenin
0c8787d5c9
docs(changelog): plugin-manager 2024-09-30 18:05:37 +02:00
Aram Drevekenin
9f1e38f9fa
feat(ui): built-in plugin manager (#3633)
* add plugin list to session info

* feat(plugins): new_plugin and reload_plugin API commands

* feat(plugins): built-in plugin manager

* style(fmt): rustfmt

* update plugins
2024-09-30 18:04:40 +02:00
Aram Drevekenin
3569daf7c9
docs(changelog): background plugins 2024-09-20 15:39:17 +02:00
Aram Drevekenin
ce8e3995df
feat(config): allow loading background plugins on startup (#3616)
* remove old partial implementation

* feat(plugins): allow loading background plugins on startup

* add e2e test

* update config

* udpate config merging

* style(fmt): rustfmt
2024-09-20 15:38:20 +02:00
Aram Drevekenin
d92ee89a9d
docs(changelog): break multiple panes APIs 2024-09-16 21:03:45 +02:00
Aram Drevekenin
d78f3586dd
feat(plugins): APIs to break multiple panes into a new tab or an existing tab (#3610)
* feat(plugins): break multiple panes to a new tab

* fix(layouts): properly ignore run instructions when breaking panes

* feat(plugins): break multiple panes to existing tab

* feat(apis): allow these methods to also specify whether they want focus changed to the tab

* various fixes

* allow specifying name for the new tab when breaking out panes

* style(fmt): rustfmt
2024-09-16 21:02:04 +02:00
Aram Drevekenin
5868aa297c
docs(readme): update sponsors 2024-09-16 21:01:17 +02:00
Aram Drevekenin
489c4da5ff
docs(changelog): new plugin apis 2024-08-29 17:36:31 +02:00
Aram Drevekenin
1776d240da
feat(plugins): add plugin APIs to affect other panes (#3576)
* resize_pane_with_id and close_pane_with_id

* focus_pane_with_id and edit_scrollback_for_pane_with_id

* write_to_pane_id and write_chars_to_pane_id

* lots more commands

* style(fmt): rustfmt
2024-08-29 17:35:21 +02:00
Aram Drevekenin
240a53aa1a
docs(changelog): reload config options at runtime 2024-08-23 15:42:26 +02:00
Aram Drevekenin
820ff85231
feat(ux): reload config options at runtime (#3564)
* change simplified_ui at runtime

* change default_shell at runtime

* change pane_frames (from config) at runtime

* all other options

* some refactoring

* style(fmt): rustfmt
2024-08-23 15:41:48 +02:00
Aram Drevekenin
3923bf5027
docs(changelog): message to specific plugins API 2024-08-21 16:47:12 +02:00
Aram Drevekenin
08b6072a69
feat(plugins): API to temporarily bind keys to send a message to a specific plugin id (#3561) 2024-08-21 16:46:01 +02:00
Aram Drevekenin
905ce0a27d
docs(changelog): change themes at runtime 2024-08-20 16:11:10 +02:00
Aram Drevekenin
e96491a3cf
feat(ux): change themes at runtime (#3559) 2024-08-20 16:10:27 +02:00
Aram Drevekenin
45501793d1
docs(changelog): reload config at runtime 2024-08-19 19:03:45 +02:00
Aram Drevekenin
cfbc0ff490
feat(ux): reload config at runtime (#3558)
* feat(ux): reload config at runtime

* style(fmt): rustfmt
2024-08-19 19:02:52 +02:00
Aram Drevekenin
d76c4e5e49
docs(changelog): first run setup wizard 2024-08-16 14:01:32 +02:00
Aram Drevekenin
056537d3ee
feat(ux): first run setup-wizard (#3556)
* separate saved/runtime structure, kind of working

* serializing config

* work

* work

* save config through the configuration screen

* work

* startup wizard

* style(code): cleanups

* fix(session): reload config from disk when switching sessions

* style(fmt): rustfmt

* fix(config): propagate cli config options to screen

* style(fmt): rustfmt
2024-08-16 14:00:01 +02:00
Aram Drevekenin
c25166c30a
docs(changelog): CommandPaneReRun plugin event 2024-08-14 16:49:24 +02:00
Aram Drevekenin
a3ad621dc7
feat(plugins): command pane re-run event (#3553) 2024-08-14 16:47:46 +02:00
Aram Drevekenin
affbd9237e
docs(changelog): rerun command pane plugin API 2024-08-07 19:22:10 +02:00
Aram Drevekenin
d44950a5bd
feat(plugins): rerun_command_pane API (#3546)
* feat(plugins): rerun_command_pane API

* fix tests
2024-08-07 19:20:41 +02:00
Aram Drevekenin
28d90df6dd
docs(changelog): floating_panes cwd fix 2024-08-07 13:47:35 +02:00
Aram Drevekenin
8080050aac
fix(plugins): various cwd fixes (#3545)
* fix(plugins): various cwd fixes

* fix tests
2024-08-07 13:46:08 +02:00
Aram Drevekenin
47caeb66a6
docs(changelog): background command panes 2024-07-29 11:42:14 +02:00
Aram Drevekenin
355463383a
feat(plugins): allow opening command panes in the background (hidden) (#3530)
* start background pane

* open command and edit panes in the background

* some cleanups

* style(fmt): rustfmt

* more cleanups
2024-07-29 11:40:01 +02:00
Aram Drevekenin
a6fe5ff1d5
docs(changelog): more plugin apis 2024-07-22 18:31:28 +02:00
Aram Drevekenin
ffbdb095ec
feat(plugins): some APIs for controlling and receiving information about other panes (#3515)
* add context to opening command panes, and events for their start/finish

* show/hide other panes plugin apis

* get tests to pass

* style(fmt): rustfmt

* update plugin test snapshots
2024-07-22 18:30:18 +02:00
Aram Drevekenin
5f64bf03fd
docs(changelog): current process refresh fix 2024-07-19 16:14:19 +02:00
Edward Shin
b4f176facd
fix(terminal): only refresh process specifics for given PID in get_cwd() (#3472)
Update `get_cwd()` to only refresh process specifics for the given PID,
matching the `get_cwds()` implementation.

This significantly reduces the latency of opening a new Pane or Tab.

On a 64-core Threadripper system, this reduces the latency of
`get_cwd()` from 850ms to 1ms. On an 8-core Ryzen system, the
improvement is smaller, but still perceptible.
2024-07-19 16:13:16 +02:00
Aram Drevekenin
591722a5d8
docs(changelog): startup delay fix 2024-07-18 16:43:36 +02:00
Aram Drevekenin
4df7b42766
fix(startup): do not parse resurrectable sessions on startup (#3505)
* fix(startup): do not parse resurrectable sessions on startup

* style(fmt): rustfmt
2024-07-18 16:35:07 +02:00
Aram Drevekenin
206ea3230b
docs(changelog): serialization fix 2024-07-18 14:30:17 +02:00
Aram Drevekenin
579a54ec45
fix(serialization): do not serialize junk sessions (#3504)
* fix(serialization): do not serialize junk sessions

* style(fmt): rustfmt
2024-07-18 14:29:03 +02:00
Aram Drevekenin
ce1a70032c
docs(changelog): stringified layout plugin api 2024-07-18 10:46:32 +02:00
Aram Drevekenin
2deffc3289
feat(plugins): add stringified layout to switch_session_with_layout (#3503) 2024-07-18 10:45:42 +02:00