Skip to content

Commit

Permalink
adjustments to the release post
Browse files Browse the repository at this point in the history
  • Loading branch information
imsnif committed Apr 11, 2024
1 parent e542d66 commit f2c23fd
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 12 deletions.
36 changes: 24 additions & 12 deletions content/news/welcome-screen-pipes-filepicker.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@
author: "Aram Drevekenin"
authorlink: "https://hachyderm.io/@imsnif"
date: 2024-02-04 # TODO: CHANGEME!!!
linktitle: "Zellij 0.40.0: Welcome Screen, Pipes, Filepicker, Plugin Aliases"
linktitle: "Zellij 0.40.0: Welcome Screen, Filepicker, Pipes, Plugin Aliases"
type:
- post
- posts
title: "Zellij 0.40.0: Welcome Screen, Pipes, Filepicker, Plugin Aliases"
title: "Zellij 0.40.0: Welcome Screen, Filepicker, Pipes, Plugin Aliases"
type:
# TODO:
# images: ["/img/zellij-session-manager-resurrection.png"]
# description: "This release includes a new built-in plugin to navigate across sessions, configurable plugins, a plugin permission system and much more!"
# alttext: "An image of the Zellij session manager, showing a list of sessions it would be possible to switch to, as well as information about their tabs, panes and connected users"
images: ["/img/welcome-screen-preview.png"]
description: "This release includes a new welcome screen to facilitate session management, a new filepicker and a powerful new concept called pipes"
alttext: "An image of the Zellij welcome screen with the Zellij filepicker opened to select the location of the session"
weight: 10
---
{{<figure src="/img/welcome-screen-preview.png" width="800px;" alt="An image of the Zellij welcome screen with the Zellij filepicker opened to select the location of the session">}}
Zellij 0.40.0 has just been released! [Grab it while it's hot!](https://github.com/zellij-org/zellij/v0.40.0)

Some highlights:
Expand All @@ -29,7 +29,7 @@ Some highlights:
- [Do you like Zellij?](#do-you-like-zellij-) ❤️

## Welcome Screen
{{<figure src="/img/welcome-screen.gif" width="800px;" alt="An image of the Zellij welcome screen">}}
{{<figure src="/img/welcome-screen.gif" width="800px;" alt="A demo of the Zellij welcome screen">}}
This new release introduces the "welcome screen". The welcome screen is a friendly menu, intended to be run on terminal startup and allow users to either:
1. Start a new session (optionally with a specific name or in a chosen folder)
2. Attach to a running session
Expand All @@ -38,10 +38,14 @@ This new release introduces the "welcome screen". The welcome screen is a friend
Learn more about [session management](/tutorials/session-management).

## New Strider / Filepicker
{{<figure src="/img/filepicker-zpipe.gif" width="800px;" alt="An image of the Zellij filepicker copying the dynamically selected file to a specific destination">}}
{{<figure src="/img/filepicker-demo.gif" width="800px;" alt="A demo of the Zellij filepicker fuzzy finding files and opening them in vim, then finding folders and opening a terminal in their location.">}}
This release includes a complete rework of Zellij's built-in filepicker, Strider. The filepicker allows users to quickly browse through their filesystem, opening files in their default editor in new Zellij panes or opening a terminal in a specific location.

With the help of [pipes](#pipes), one can use this filepicker to interactively choose a file or folder in the filesystem and pipe the result to another command through a traditional shell pipe. For example: `zpipe filepicker | xargs -i cp {} my-chosen-file`.
With the help of [pipes](#pipes), one can use this filepicker to interactively choose a file or folder in the filesystem and pipe the result to another command through a traditional shell pipe. For example:

```bash
zpipe filepicker | xargs -i cp {} my-chosen-file
```

The filepicker can also be used from within other plugins to offload filepicking functionality rather than have the plugin implement it on its own. In fact, this is exactly what the welcome screen does in the example at the top of this post.

Expand All @@ -55,13 +59,21 @@ Messages can be sent to plugins through the CLI: (eg. `zpipe my-plugin hi!`), fr
Pipes also integrate seamlessly with existing shell pipes, providing flow control and giving plugin authors the ability to visualize data from the command line, allow users to pause a command line pipe mid-stream on certain messages or on a keystroke. We believe this functionality will help utilize the full 2 dimensions of the terminal window as never before, popping up floating panes in certain conditions and creating a many-to-many windowed pipeline. We look forward to seeing what plugin authors come up with!

## Open Floating Panes at Specific Coordinates
A much requested feature after the introduction of floating panes, was to be able to open floating panes at specific coordinates and at specific sizes. Ths is now possible from the CLI (either with fixed numbers or percentage of the viewport): `zellij run --width 50 --height 20% -x 10% -y 50%`, from other plugins or from a keybinding.
A much requested feature after the introduction of floating panes, was to be able to open floating panes at specific coordinates and at specific sizes. Ths is now possible from the CLI, from plugins or from a keybinding (either with fixed numbers or percentage of the viewport):

```sh
zellij run --floating --width 50 --height 20% -x 10% -y 50% -- htop
```

## Rearrange Tabs
Thanks to a community contribution, it's now possible to change the position of tabs. One can move the active tab left or right, by default with `Alt i` or `Alt o`.

## Disconnect other Clients
Zellij, as a true multiplayer application, allows more than one user to attach to a running session. When this happens, each user gets their own cursor and the UI indicates in which pane or tab they are focused. Since by necessity the smallest screen width/height is used in such cases, it is sometimes desirable to log out other users from the session. This is now possible through the `session-manager`: `Ctrl o` to open the session manager, and then `Ctrl x` to disconnect other users.
Zellij, as a true multiplayer application, allows more than one user to attach to a running session. When this happens, each user gets their own cursor and the UI indicates in which pane or tab they are focused.

Since by necessity the smallest screen width/height is used in such cases, it is sometimes desirable to log out other users from the session.

This is now possible through the `session-manager`: `Ctrl o` to open the session manager, and then `Ctrl x` to disconnect other users.

## Plugin Aliases
This version introduces "Plugin Aliases" which are a way to shorten the long plugin URLs (eg. `https://example.com/my-plugin.wasm`, or `file:/home/aram/code/plugin/my-plugin.wasm`) to something more memorable (eg. `filter` or `filepicker`). These aliases can be defined in the [configuration file](/documentation/configuration.html), and used wherever plugin URLs can be used: to launch plugins from the CLI, from layouts or from other plugins.
Expand All @@ -71,7 +83,7 @@ Aliases can also be a convenient way to swap in the built-in plugins for a custo
Read more about [Plugin Aliases](/documentation/plugin-aliases.html).

## New Possible Keys to Bind
Thanks to some community contributions, it is not possible to bind `Ctrl`/`Alt` + Function keys (eg. `Ctrl F1`), as well as `Ctrl Space`. We as Zellij maintainers are aware that colliding keybindings are a big problem for many users and intend to fully and finally address this issue in the next version.
Thanks to some community contributions, it is now possible to bind `Ctrl`/`Alt` + Function keys (eg. `Ctrl F1`), as well as `Ctrl Space`. We as Zellij maintainers are aware that colliding keybindings are a big problem for many users and intend to fully and finally address this issue in the next version after this one.

## Performance Improvements
This version introduces two major performance improvements:
Expand Down
Binary file added static/img/filepicker-demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/welcome-screen-preview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit f2c23fd

Please sign in to comment.