Commit graph

1809 commits

Author SHA1 Message Date
Spyros Roum
496196214a
fix(client): exit client-loop on empty message receive (#1454) 2022-06-06 09:30:26 +02:00
Aram Drevekenin
e75b8da1ff
docs(changelog): edit scrollback with default editor 2022-06-06 09:22:11 +02:00
Cosmin Popescu
e1fcf3a6db
feat(scroll): edit scrollback with default editor (#1456)
* initial commit for opening the current buffer in an editor

* fix(editor): take hidden panes into consideration when manipulating tiled grid

* when closing an edit buffer, take the geometry of the replaced buffer from the closed buffer

* if the floating panels are displayed, don't add to hidden panels the current buffer

* strategy changing - put the panels inside a suppressed_panels HashMap instead of hidden_panels

* Revert "strategy changing - put the panels inside a suppressed_panels HashMap instead of hidden_panels"

This reverts commit c52a203a20cf4c87c147be8b9c193ed6458c1038.

* remove the floating panes by moving them to the tiled_panes in hidden_panels

* feat(edit): open editor to correct line and don't crash when none is set

* formatting

* feat(edit): use suppressed panes

* style(fmt): rustfmt and logs

* style(fmt): clean up unused code

* test(editor): integration test for suppressing/closing suppressed pane

* test(e2e): editor e2e test

* style(fmt): rustfmt

* feat(edit): update ui and setup

* style(fmt): rustfmt

* feat(config): allow configuring scrollback_editor explicitly

* style(fmt): rustfmt

* chore(repo): build after merging

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2022-06-06 09:20:07 +02:00
a-kenji
58cc8fb2e1
flake.lock: Update (#1455)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/04c1b180862888302ddfb2e3ad9eaa63afc60cf8' (2022-05-17)
  → 'github:numtide/flake-utils/1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1' (2022-05-30)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/83658b28fe638a170a19b8933aa008b30640fbd1' (2022-05-26)
  → 'github:nixos/nixpkgs/236cc2971ac72acd90f0ae3a797f9f83098b17ec' (2022-06-03)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/0be302358da0f8ea3d3cc24a0639b6354fc45e7c' (2022-05-28)
  → 'github:oxalica/rust-overlay/e64770eac18a1983232a5bc55fa443d9f15cc489' (2022-06-04)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-05 10:32:41 +02:00
a-kenji
2241128c4f
fix(compact-bar): remove duplicate padding (#1451) 2022-06-03 19:58:27 +02:00
a-kenji
9f777fbacc docs(changelog): add compact-bar & compact layout 2022-06-03 11:20:06 +02:00
a-kenji
d62e6fb57e
add(plugin): compact-bar & compact layout (#1450)
* add(plugin): `compact-bar` & `compact` layout

* add(nix): `compact-bar` plugin

* add(config): `compact-bar` to the config

* add(workspace): `compact-bar` to workspace members

* add(assets): `compact-bar`

* chore(fmt): rustfmt

* add(nix): add `compact-bar`

* add: compact layout to dump command

* nix(build): fix destination of copy command

* add(makefile): add `compact-bar` to `plugin-build`

* add(layout): `compact-bar` to layout

* add: install `compact-bar` plugin

* fix(test): update input plugin test

* fix(plugin): default colors for compact-bar
2022-06-03 11:14:38 +02:00
a-kenji
ad9ba8ab24
add: more information to the manpage (#1443) 2022-05-30 23:31:23 +02:00
a-kenji
9dbec05ff9
fix: clarify help text (#1442) 2022-05-30 23:11:36 +02:00
a-kenji
1e496c5e10
flake.lock: Update (#1438)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/48037fd90426e44e4bf03e6479e88a11453b9b66' (2022-05-18)
  → 'github:nixos/nixpkgs/83658b28fe638a170a19b8933aa008b30640fbd1' (2022-05-26)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/3bc2619665745f5e6f2efc3d0664edad4f62201b' (2022-05-21)
  → 'github:oxalica/rust-overlay/0be302358da0f8ea3d3cc24a0639b6354fc45e7c' (2022-05-28)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-05-29 12:01:18 +02:00
Aram Drevekenin
2514ae43c3
docs(changelog): layout cli arg merge 2022-05-28 12:28:12 +02:00
Spyros Roum
2f58835f07
feat(cli): merge --layout and --layout-path (#1426)
* Merge --layout and --layout-path

* Fix e2e tests

* style(comment): reword help text

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2022-05-28 12:20:41 +02:00
Mathieu Santostefano
fd79b22d59
chore(assets): update Dracula Theme (#1435)
* Update Dracula Theme

Dracula theme already exists in https://github.com/dracula/zellij

* Add link to dracula theme repo
2022-05-24 17:02:34 +02:00
raphTec
8f3f6ed5fc docs(changelog): fix client process hanging / not exiting 2022-05-24 14:44:39 +02:00
raphCode
eab464b11a
Fix double panic lockup in clients panic handler (#1433)
* Fix possible lockup in the clients panic handler

When the pty the client was running in disappears, reading from stdin
causes a panic, which triggers the custom panic handler. This handler
attempts to print a backtrace to the terminal and tries to unset the raw
mode for that. Since the pty has already disappeared, the tcsetattr call
fails and causes a second panic, which locks everything up.

This commit fixes this by returning an Result from the unset_raw_mode
function, allowing the calling panic handler to handle any error
gracefully.

* Log any client panics to file

Since we are now aware of the fact that panics may happen / are handled
after the pty has disappeared, logging them to file seems useful: there
is no other other place to show them to the user.

* fix tests and improve function return type
2022-05-24 14:10:37 +02:00
Jae-Heon Ji
69ec7c7e3a
docs(changelog): checking for missing extensions 2022-05-24 13:10:48 +09:00
Jae-Heon Ji
f7c019743a
fix: add checking for missing extensions (#1432) 2022-05-24 13:09:01 +09:00
a-kenji
9d1d3dac74 docs(changelog): update names & dialoguer 2022-05-23 21:44:31 +02:00
Carmelo Sarta
3fdd4c8a19
Updated names and dialoguer crates dependencies (#1430)
* Updated names and dialoguer crates dependencies

I tried to build and run zellij with the updated dependencies and they seem to show no issues.
I need this in order to package zellij for Fedora.

* Updated cargo.lock

* fix: use suggested option for `names` crate

https://github.com/fnichol/names/blob/main/CHANGELOG.md#0120---2021-09-12

Co-authored-by: a-kenji <aks.kenji@protonmail.com>
2022-05-23 21:42:30 +02:00
a-kenji
d44aef4011 docs(changelog): strip debug symbols on release 2022-05-22 19:57:49 +02:00
a-kenji
d267730704
build: strip debug symbols (#1177)
* build: strip debug symbols

Stripping the symbols for the release build drops binary size
currently by 20% and the plugin binaries by up to 50%.

Alternative: Keep the debug symbols also on releases

* bump(rust): `1.58.0` -> `1.59.0`

* chore: bump MSRV `1.56` -> `1.59`

Needed for cargos strip-debug feature
2022-05-22 12:48:34 +02:00
Jae-Heon Ji
aff1214d1e
docs(changelog): fix strider plugins 2022-05-22 16:57:48 +09:00
Jae-Heon Ji
c5807767d2
fix(strider): update out of range index in files (#1425) 2022-05-22 16:56:29 +09:00
a-kenji
48f2285e5b
flake.lock: Update (#1427)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/12806d31a381e7cd169a6bac35590e7b36dc5fe5' (2022-05-14)
  → 'github:numtide/flake-utils/04c1b180862888302ddfb2e3ad9eaa63afc60cf8' (2022-05-17)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/d89d7af1ba23bd8a5341d00bdd862e8e9a808f56' (2022-05-12)
  → 'github:nixos/nixpkgs/48037fd90426e44e4bf03e6479e88a11453b9b66' (2022-05-18)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/f9ddceabd2ccd2bf3d08c83832f3709c94287144' (2022-05-14)
  → 'github:oxalica/rust-overlay/3bc2619665745f5e6f2efc3d0664edad4f62201b' (2022-05-21)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-05-22 08:50:05 +02:00
Aram Drevekenin
db4fbf6724
docs(changelog): dump scrollback to file 2022-05-20 11:23:59 +02:00
Cosmin Popescu
76d871294d
feat(actions): dump the terminal screen into a file (#1375)
* Initial commit for fixing #1353

* adding a new line between the lines_above and the viewport

* changes following code review

* implementing a test case for the dump screen

* implemented test case for dump_screen

* better regexp replace

* fixes following code review

* style(api): remove extraneous method in plugin pane

* style(fmt): rustfmt

* style(tests): fix method name

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2022-05-20 11:22:40 +02:00
Thomas Linford
e663ef2db7
fix: ensure pty_writer thread closes (#1422) 2022-05-17 20:29:06 +02:00
Thomas Linford
9b184a351b
docs(changelog): paste freeze fix 2022-05-16 21:17:08 +02:00
Thomas Linford
e8f9559062
fix(pty): paste freeze with large amounts of text (#1383)
add pty writer thread to avoid screen thread blocking on unistd::write
2022-05-16 21:14:57 +02:00
Aram Drevekenin
69e570cf71
docs(changelog): ansi resize input 2022-05-16 15:33:28 +02:00
Thomas Linford
6ed4bf8c0b
fix(input): ANSI code sent to terminal on startup and resize
* fix macos parsing issues

* format

* fix(ansiparser): validate first key on parse

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2022-05-16 15:32:17 +02:00
a-kenji
84d8f94f36
flake.lock: Update (#1417)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/a4b154ebbdc88c8498a5c7b01589addc9e9cb678' (2022-04-11)
  → 'github:numtide/flake-utils/12806d31a381e7cd169a6bac35590e7b36dc5fe5' (2022-05-14)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/c777cdf5c564015d5f63b09cc93bef4178b19b01' (2022-05-05)
  → 'github:nixos/nixpkgs/d89d7af1ba23bd8a5341d00bdd862e8e9a808f56' (2022-05-12)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/43f4c4319fd29d07912a65d405ff03069c7748c4' (2022-05-07)
  → 'github:oxalica/rust-overlay/f9ddceabd2ccd2bf3d08c83832f3709c94287144' (2022-05-14)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-05-15 09:49:58 +02:00
Aram Drevekenin
298add50d0
docs(readme): add roadmap 2022-05-13 17:16:29 +02:00
Jae-Heon Ji
82822374b4
docs(changelog): update to output error 2022-05-12 22:43:46 +09:00
Jae-Heon Ji
8c38b39ef6
fix: update to output error when using --layout (#1413) 2022-05-12 22:42:31 +09:00
a-kenji
f04e5bd873 docs(changelog): rename suggestion -> suggest 2022-05-10 16:40:17 +02:00
Ken Matsui
2cf637c92a
fix(deps): Rename suggestion crate to suggest (#1387) 2022-05-10 16:39:28 +02:00
a-kenji
43fa2b727e docs(changelog) add alias to help output 2022-05-10 16:37:56 +02:00
Luke Stadem
a017a6512d
feat: Shows subcommand aliases in help text (#918) (#1409) 2022-05-10 16:36:57 +02:00
a-kenji
e6cbd1195c docs(changelog): fix typo 2022-05-10 09:46:46 +02:00
a-kenji
b56bfecdf0
fix: a small typo (#1390) 2022-05-10 09:01:18 +02:00
dependabot[bot]
fe9fa2d60a
build(deps): bump log from 0.4.16 to 0.4.17 (#1386)
Bumps [log](https://github.com/rust-lang/log) from 0.4.16 to 0.4.17.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/commits/0.4.17)

---
updated-dependencies:
- dependency-name: log
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-09 18:32:36 +02:00
a-kenji
633864e511
flake.lock: Update (#1385)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/e10da1c7f542515b609f8dfbcf788f3d85b14936' (2022-04-26)
  → 'github:nixos/nixpkgs/c777cdf5c564015d5f63b09cc93bef4178b19b01' (2022-05-05)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/8a687a6e5dc1f5c39715b01521a7aa0122529a05' (2022-04-30)
  → 'github:oxalica/rust-overlay/43f4c4319fd29d07912a65d405ff03069c7748c4' (2022-05-07)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-05-08 06:50:20 +02:00
raphCode
7b0a46f812
feat: Attach sessions by unique prefix name (#1169) (#1360)
* feat: Attach sessions by unique name prefix (#1169)

This makes attaching to sessions more convenient since only the first character(s) of the
session name must be typed.
If this prefix matches multiple sessions and is therefore ambiguous, zellij will complain
and show all sessions names starting with these characters.
If any session name matches the given string exact, it is attached immediately, therefore
it is always possible to attach to every session, even if the set of session names is not
prefix-free.

* Add feature to changelog

* Try to fix flaky e2e test
2022-05-03 18:55:31 +02:00
Thomas Linford
e487537472
docs(changelog): middle or right click selection fix 2022-05-03 13:05:12 +02:00
Thomas Linford
a62743afe3
fix(mouse): middle or right clicks creating selection (#1372) 2022-05-03 13:03:55 +02:00
Aram Drevekenin
3177542674 chore(version): bump development version 2022-05-02 22:54:23 +02:00
Aram Drevekenin
a7ddfe1acc chore(release): v0.29.1 2022-05-02 22:31:08 +02:00
Thomas Linford
00f2a53fe9
docs(changelog): plugin mouse event fix 2022-05-02 22:22:24 +02:00
Thomas Linford
bfa4942c5b
fix(mouse): mouse events not forwarded to plugin panes (#1369)
* fix mouse click and release events not forwarded to plugin panes
2022-05-02 22:06:47 +02:00