mirror of
https://github.com/zellij-org/zellij.git
synced 2026-10-11 22:50:07 +00:00
fix: correct typos in docs and code comments (#5599)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: Plugin API
|
||||
about: You are developping a plugin and need something
|
||||
about: You are developing a plugin and need something
|
||||
title: ''
|
||||
labels: ["plugin system"]
|
||||
assignees: ''
|
||||
|
||||
+5
-5
@@ -34,7 +34,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* fix: more verbose startup errors (https://github.com/zellij-org/zellij/pull/5334)
|
||||
* fix(windows): route Windows Terminal through the VT input path (https://github.com/zellij-org/zellij/pull/5335)
|
||||
* fix(windows): backslashes dropped when quoting arguments passed to spawned processes (https://github.com/zellij-org/zellij/pull/5336)
|
||||
* fix: occasional high resource utilization and sluggishness on machines with tens of thousands of concurent processes (https://github.com/zellij-org/zellij/pull/5324)
|
||||
* fix: occasional high resource utilization and sluggishness on machines with tens of thousands of concurrent processes (https://github.com/zellij-org/zellij/pull/5324)
|
||||
* feat: allow opening panes/tabs from the CLI without changing focus (https://github.com/zellij-org/zellij/pull/5346)
|
||||
* feat: allow binding `SetDarkTheme`, `SetLightTheme` and `ToggleTheme` as direct keybinding actions (https://github.com/zellij-org/zellij/pull/5302)
|
||||
* fix(windows): prefer PATHEXT variants over bare filename when resolving commands (fixes launching `composer` and similar) (https://github.com/zellij-org/zellij/pull/5364)
|
||||
@@ -123,7 +123,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* fix: sanitize session names when deleting them from the CLI (https://github.com/zellij-org/zellij/pull/4583)
|
||||
* fix: properly close the welcome screen session when switching sessions away from it (https://github.com/zellij-org/zellij/pull/4605)
|
||||
* fix: properly center floating panes started with `--floating` when explicit width/height is provided (https://github.com/zellij-org/zellij/pull/4607)
|
||||
* fix: allow specifying "0%" coordinates when opening panes wit "zellij run --floating" (https://github.com/zellij-org/zellij/pull/4609)
|
||||
* fix: allow specifying "0%" coordinates when opening panes with "zellij run --floating" (https://github.com/zellij-org/zellij/pull/4609)
|
||||
* feat: allow opening panes as `borderless` or toggling/changing the borderless status of existing panes (https://github.com/zellij-org/zellij/pull/4615 and https://github.com/zellij-org/zellij/pull/4618)
|
||||
* fix: query webserver through ipc rather than https (https://github.com/zellij-org/zellij/pull/4620)
|
||||
* feat: add web client `base_url` option (https://github.com/zellij-org/zellij/pull/4409)
|
||||
@@ -201,7 +201,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* fix: support multiline hyperlinks (https://github.com/zellij-org/zellij/pull/4264)
|
||||
* fix: use terminal title when spawning terminal panes from plugin (https://github.com/zellij-org/zellij/pull/4272)
|
||||
* fix: allow specifying CWD for tabs without necessitating a layout (https://github.com/zellij-org/zellij/pull/4273)
|
||||
* fix: don't serialize when only ui elements present and provide post command disovery hook (https://github.com/zellij-org/zellij/pull/4276)
|
||||
* fix: don't serialize when only ui elements present and provide post command discovery hook (https://github.com/zellij-org/zellij/pull/4276)
|
||||
* fix: use plugin `/host` folder as cwd when opening new panes (https://github.com/zellij-org/zellij/pull/4290)
|
||||
* fix: better command detection when serializing layouts for resurrection (https://github.com/zellij-org/zellij/pull/4287)
|
||||
* fix: slow startup on very large caches (https://github.com/zellij-org/zellij/pull/4292)
|
||||
@@ -304,7 +304,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* feat(ui): configuration screen + non-colliding keybindings setup at runtime (https://github.com/zellij-org/zellij/pull/3502, https://github.com/zellij-org/zellij/pull/3686, https://github.com/zellij-org/zellij/pull/3713 and https://github.com/zellij-org/zellij/pull/3715)
|
||||
* feat(plugins): allow starting a new session with a stringified layout (https://github.com/zellij-org/zellij/pull/3503)
|
||||
* fix(resurrection): do not serialize garbage sessions to the cache (https://github.com/zellij-org/zellij/pull/3504)
|
||||
* fix(startup): do not parse resurrectable sessions ons startup (https://github.com/zellij-org/zellij/pull/3505)
|
||||
* fix(startup): do not parse resurrectable sessions on startup (https://github.com/zellij-org/zellij/pull/3505)
|
||||
* fix(terminal): only refresh cwd of current process (https://github.com/zellij-org/zellij/pull/3472)
|
||||
* feat(plugins): new APIs for controlling and receiving information about other panes (https://github.com/zellij-org/zellij/pull/3515 and https://github.com/zellij-org/zellij/pull/3553)
|
||||
* feat(plugins): new API to open command panes in the background (https://github.com/zellij-org/zellij/pull/3530)
|
||||
@@ -465,7 +465,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* feat: update and render plugins asynchronously (https://github.com/zellij-org/zellij/pull/2410)
|
||||
* fix: support environment variables and shell expansions in layout cwds (https://github.com/zellij-org/zellij/pull/2291)
|
||||
* fix: add file paths to file not found errors (https://github.com/zellij-org/zellij/pull/2412)
|
||||
* fix: error loading non-existant themes directory (https://github.com/zellij-org/zellij/pull/2411)
|
||||
* fix: error loading non-existent themes directory (https://github.com/zellij-org/zellij/pull/2411)
|
||||
* build: speed up build and ci https://github.com/zellij-org/zellij/pull/2396
|
||||
* fix: sticky bit FreeBSD crash https://github.com/zellij-org/zellij/pull/2424
|
||||
* build: Bump rust toolchain version to 1.67 (https://github.com/zellij-org/zellij/pull/2375)
|
||||
|
||||
@@ -134,14 +134,6 @@ Note that the output is truncated at 100KB. This can be adjusted for the purpose
|
||||
|
||||
When running Zellij with the `--debug` flag, Zellij will dump a copy of all bytes received over the pty for each pane in: `/$temp_dir/zellij-<UID>/zellij-log/zellij-<pane_id>.log`. These might be useful when troubleshooting terminal issues.
|
||||
|
||||
## Testing plugins
|
||||
Zellij allows the use of the singlepass [Winch](https://crates.io/crates/wasmtime-winch) compiler for wasmtime. This can enable great gains in compilation time of plugins at the cost of slower execution and less supported architectures.
|
||||
|
||||
To enable the singlepass compiler, use the `singlepass` flag. E.g.:
|
||||
```sh
|
||||
cargo xtask run --singlepass
|
||||
```
|
||||
|
||||
## Toolchain Versions and MSRV
|
||||
|
||||
Development aims to track the current stable Rust toolchain version, although
|
||||
|
||||
@@ -9,7 +9,7 @@ More about Zellij plugins: [Zellij Documentation][docs]
|
||||
|
||||
## Development
|
||||
|
||||
*Note*: you will need to have `wasm32-wasi` added to rust as a target to build the plugin. This can be done with `rustup target add wasm32-wasi`.
|
||||
*Note*: you will need to have `wasm32-wasip1` added to rust as a target to build the plugin. This can be done with `rustup target add wasm32-wasip1`.
|
||||
|
||||
### With the Provided Layout
|
||||
|
||||
@@ -23,5 +23,5 @@ It can also be used if you prefer developing outside of the terminal - in this c
|
||||
### Otherwise
|
||||
|
||||
1. Build the project: `cargo build`
|
||||
2. Load it inside a running Zellij session: `zellij action start-or-reload-plugin file:target/wasm32-wasi/debug/rust-plugin-example.wasm`
|
||||
2. Load it inside a running Zellij session: `zellij action start-or-reload-plugin file:target/wasm32-wasip1/debug/rust-plugin-example.wasm`
|
||||
3. Repeat on changes (perhaps with a `watchexec` or similar command to run on fs changes).
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
# How to release a zellij version
|
||||
|
||||
This document is primarily target at zellij maintainers in need to (prepare to)
|
||||
This document is primarily targeted at zellij maintainers in need to (prepare to)
|
||||
release a new zellij version.
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ to make sure it works as expected.
|
||||
{"dl":"http://localhost:8000/dl","api":"http://localhost:8000"}
|
||||
```
|
||||
1. Generate an access token for full repo access, we'll refer to this as
|
||||
`$TOKEN` for the remained of this text
|
||||
`$TOKEN` for the remainder of this text
|
||||
1. Create and push a commit with these changes. Provide the following HTTPS
|
||||
credentials:
|
||||
1. Username: Your git-forge username
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ Part of the ANSI/VT specification that includes instructions for the terminal em
|
||||
Part of the ANSI/VT specification that includes instructions for the underlying operating system (eg. change window title).
|
||||
|
||||
## pty
|
||||
A pty (pseudoterminal) is a character device that emulates a traditional terminal. It is a pair of processes (traditionally given culturally incensitive names, here they will be referred to as primary/secondary).
|
||||
A pty (pseudoterminal) is a character device that emulates a traditional terminal. It is a pair of processes (traditionally given culturally insensitive names, here they will be referred to as primary/secondary).
|
||||
|
||||
The primary part is the part connected to the terminal emulator. The emulator listens to this part of the channel, reads instructions from it that it uses in order to draw characters on the screen.
|
||||
The secondary part is used by the program running inside the terminal (eg. the shell) in order to send those instructions.
|
||||
|
||||
@@ -1685,7 +1685,7 @@ impl WasmBridge {
|
||||
self.plugin_map.lock().unwrap().all_plugin_ids()
|
||||
}
|
||||
fn size_of_plugin_id(&self, plugin_id: PluginId) -> Option<(usize, usize)> {
|
||||
// (rows/colums)
|
||||
// (rows/columns)
|
||||
self.plugin_map
|
||||
.lock()
|
||||
.unwrap()
|
||||
|
||||
@@ -3159,7 +3159,7 @@ impl Tab {
|
||||
pid: PaneId,
|
||||
pane_id_to_replace: PaneId,
|
||||
) -> Result<()> {
|
||||
// this method creates a new pane from pid and replaces it with the pane iwth the given pane_id_to_replace
|
||||
// this method creates a new pane from pid and replaces it with the pane with the given pane_id_to_replace
|
||||
// the pane with the given pane_id_to_replace is then suppressed (hidden and not rendered) until the current
|
||||
// created pane is closed, in which case it will be replaced back by it
|
||||
let err_context = || format!("failed to suppress pane");
|
||||
@@ -7122,7 +7122,7 @@ impl Tab {
|
||||
self.floating_panes.focus_pane_for_all_clients(pane_id);
|
||||
},
|
||||
None => {
|
||||
log::error!("Could not find suppressed pane wiht id: {:?}", pane_id);
|
||||
log::error!("Could not find suppressed pane with id: {:?}", pane_id);
|
||||
},
|
||||
}
|
||||
}
|
||||
@@ -7873,7 +7873,7 @@ impl Tab {
|
||||
new_pane.update_sixel_host_support(supported);
|
||||
}
|
||||
new_pane.update_name("EDITING SCROLLBACK"); // we do this here and not in the
|
||||
// constructor so it won't be overrided
|
||||
// constructor so it won't be overridden
|
||||
// by the editor
|
||||
new_pane
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
//! To read more about Zellij plugins:
|
||||
//! [https://zellij.dev/documentation/plugins](https://zellij.dev/documentation/plugins)
|
||||
//!
|
||||
//! ### Interesting things in this libary:
|
||||
//! ### Interesting things in this library:
|
||||
//! - The [`ZellijPlugin`] trait for implementing plugins combined with the
|
||||
//! [`register_plugin!`](register_plugin) macro to register them.
|
||||
//! - The list of [commands](shim) representing what a plugin can do.
|
||||
|
||||
@@ -502,7 +502,7 @@ pub fn open_terminal<P: AsRef<Path>>(path: P) -> Option<PaneId> {
|
||||
}
|
||||
|
||||
/// Open a new terminal pane to the specified location on the host filesystem
|
||||
/// This variant is identical to open_terminal, excpet it opens it near the plugin regardless of
|
||||
/// This variant is identical to open_terminal, except it opens it near the plugin regardless of
|
||||
/// whether the user was focused on it or not
|
||||
pub fn open_terminal_near_plugin<P: AsRef<Path>>(path: P) -> Option<PaneId> {
|
||||
let file_to_open = FileToOpen::new(path.as_ref().to_path_buf());
|
||||
@@ -535,7 +535,7 @@ pub fn open_terminal_floating<P: AsRef<Path>>(
|
||||
}
|
||||
|
||||
/// Open a new floating terminal pane to the specified location on the host filesystem
|
||||
/// This variant is identical to open_terminal_floating, excpet it opens it near the plugin regardless of
|
||||
/// This variant is identical to open_terminal_floating, except it opens it near the plugin regardless of
|
||||
/// whether the user was focused on it or not
|
||||
pub fn open_terminal_floating_near_plugin<P: AsRef<Path>>(
|
||||
path: P,
|
||||
@@ -1380,7 +1380,7 @@ pub fn undo_rename_tab() {
|
||||
unsafe { host_run_plugin_command() };
|
||||
}
|
||||
|
||||
/// Compeltely quit Zellij for this and all other connected clients
|
||||
/// Completely quit Zellij for this and all other connected clients
|
||||
pub fn quit_zellij() {
|
||||
let plugin_command = PluginCommand::QuitZellij;
|
||||
let protobuf_plugin_command: ProtobufPluginCommand = plugin_command.try_into().unwrap();
|
||||
@@ -1649,7 +1649,7 @@ pub fn block_cli_pipe_input(pipe_name: &str) {
|
||||
unsafe { host_run_plugin_command() };
|
||||
}
|
||||
|
||||
/// Send output to the output side of a pipe, ths does not affect the input side of same pipe
|
||||
/// Send output to the output side of a pipe, this does not affect the input side of same pipe
|
||||
pub fn cli_pipe_output(pipe_name: &str, output: &str) {
|
||||
let plugin_command = PluginCommand::CliPipeOutput(pipe_name.to_owned(), output.to_owned());
|
||||
let protobuf_plugin_command: ProtobufPluginCommand = plugin_command.try_into().unwrap();
|
||||
|
||||
@@ -581,7 +581,7 @@ pub enum Action {
|
||||
payload: Option<String>,
|
||||
args: Option<BTreeMap<String, String>>,
|
||||
plugin: Option<String>,
|
||||
plugin_id: Option<u32>, // supercedes plugin if present
|
||||
plugin_id: Option<u32>, // supersedes plugin if present
|
||||
configuration: Option<BTreeMap<String, String>>,
|
||||
launch_new: bool,
|
||||
skip_cache: bool,
|
||||
|
||||
@@ -330,7 +330,7 @@ impl Config {
|
||||
}
|
||||
})
|
||||
}
|
||||
// returns true if the config was not previouly written to disk and we successfully wrote it
|
||||
// returns true if the config was not previously written to disk and we successfully wrote it
|
||||
pub fn write_config_to_disk_if_it_does_not_exist(
|
||||
config: String,
|
||||
config_file_path: &Option<PathBuf>,
|
||||
|
||||
@@ -1029,10 +1029,10 @@ impl TiledPaneLayout {
|
||||
{
|
||||
if let Some(position) = run_instructions.iter().position(|i| {
|
||||
match i {
|
||||
// this is because a bare CWD instruction should be overidden by a terminal
|
||||
// this is because a bare CWD instruction should be overridden by a terminal
|
||||
// in run_instructions_to_ignore (for cases where the cwd for example comes
|
||||
// from a global layout cwd and the pane is actually just a bare pane that
|
||||
// wants to be overidden)
|
||||
// wants to be overridden)
|
||||
Some(Run::Cwd(_)) | None => true,
|
||||
_ => false,
|
||||
}
|
||||
@@ -1420,7 +1420,7 @@ impl Layout {
|
||||
// how a path would look for an executable.
|
||||
// See the gh issue for more: https://github.com/zellij-org/zellij/issues/1412#issuecomment-1131559720
|
||||
if layout_path.extension().is_some() || layout_path.components().count() > 1 {
|
||||
// We look localy!
|
||||
// We look locally!
|
||||
Layout::stringified_from_path(layout_path)
|
||||
} else {
|
||||
// We look in the default dir
|
||||
|
||||
@@ -121,7 +121,7 @@ impl FromStr for PaneFrameStyle {
|
||||
/// Options that can be set either through the config file,
|
||||
/// or cli flags - cli flags should take precedence over the config file
|
||||
/// TODO: In order to correctly parse boolean flags, this is currently split
|
||||
/// into Options and CliOptions, this could be a good canditate for a macro
|
||||
/// into Options and CliOptions, this could be a good candidate for a macro
|
||||
pub struct Options {
|
||||
/// Allow plugins to use a more simplified layout
|
||||
/// that is compatible with more fonts (true or false)
|
||||
|
||||
@@ -176,7 +176,7 @@ impl<'a> KdlLayoutParser<'a> {
|
||||
))
|
||||
} else if name.contains(')') || name.contains('(') {
|
||||
Err(ConfigError::new_layout_kdl_error(
|
||||
format!("Template names cannot contain parantheses"),
|
||||
format!("Template names cannot contain parentheses"),
|
||||
kdl_node.span().offset(),
|
||||
kdl_node.span().len(),
|
||||
))
|
||||
|
||||
Reference in New Issue
Block a user