* 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
* 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
* 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
* 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
* 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
* 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
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.
* cargo: Reintroduce `rust-version` field
in `Cargo.toml` since it appears that client-side `cargo` will check
this field and [error when the users rust toolchain is too old][1]. Add
comments in `Cargo.toml` and `rust-toolchain.toml` pointing to each
other so the rust versions mentioned in each file are hopefully kept in
sync in the future.
[1]: https://doc.rust-lang.org/cargo/reference/manifest.html#the-rust-version-field
* CHANGELOG: Add MR #3482.