Commit Graph

1873 Commits

Author SHA1 Message Date
raphCode
5d9c428294
fix: exit client on empty rcv (#1535)
* Exit client on empty ipc receive

This resolves a hang when the server goes away unnoticed (e.g. when it
is killed). In some cases, this delayed system shutdown because the
client did not react to systemd's SIGTERM.

* Add newline after error report to tidy up shell prompt

* Update changelog
2022-06-21 20:40:26 +02:00
a-kenji
29332ca684
add: debug information for certain actions (#1533) 2022-06-20 20:25:29 +02:00
a-kenji
0c24edea7f
fix: dispatch various actions correctly (#1530) 2022-06-19 21:49:47 +02:00
a-kenji
162f916f6a docs(changelog): fix macports instructions 2022-06-19 21:26:38 +02:00
Ken Matsui
776959eaff
Fix installation with MacPorts (#1529)
MacPorts installed in a general way requires `sudo`.
Ref: https://superuser.com/a/1413502
2022-06-19 21:25:37 +02:00
a-kenji
467e5b2063
flake.lock: Update (#1527)
Flake lock file updates:

• Updated input 'crate2nix':
    'github:kolloch/crate2nix/78258f27fc3121562a44eb02c652a5ec77cf8d02' (2022-04-20)
  → 'github:kolloch/crate2nix/805cdaf084c859c2ea0c084b74f4527b0483f6aa' (2022-06-17)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/e0169d7a9d324afebf5679551407756c77af8930' (2022-06-08)
  → 'github:nixos/nixpkgs/3d7435c638baffaa826b85459df0fff47f12317d' (2022-06-16)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/2aef1450ab6ab1ff44f1fbfd8ef2202bcba9d9d3' (2022-06-11)
  → 'github:oxalica/rust-overlay/da04f39d50ad2844e97a44015048c2510ca06c2f' (2022-06-18)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-19 14:08:49 +02:00
Jae-Heon Ji
66aa486506
docs(changelog): add undo rename action 2022-06-18 10:00:37 +09:00
Jae-Heon Ji
8e2be2c61e
feat: add action to undo rename (#1513) 2022-06-18 09:58:42 +09:00
a-kenji
8da6207849
fix(action): dispatch of edit-scrollback (#1523) 2022-06-17 22:02:47 +02:00
a-kenji
641c5a34d4
add(ci): check for msrv (#1522) 2022-06-17 12:16:33 +02:00
a-kenji
464f21aebd
fix: clarify comments (#1519) 2022-06-16 18:34:31 +02:00
a-kenji
35498b6030
fix(action): correctly dispatch the Write action (#1518)
The  `Write` action should be called once per session.
2022-06-16 18:34:19 +02:00
a-kenji
05532c24ce docs(changelog): fullscreen focus swapping 2022-06-16 15:25:05 +02:00
nacairns1
f285047fd3
feat: fullscreen focus swapping (#1515) 2022-06-16 15:24:10 +02:00
a-kenji
dc7f07a7c4 docs(changelog): fix WriteChars action 2022-06-16 15:23:32 +02:00
a-kenji
2563fbb441
fix(action): send WriteChars once per action (#1516)
`WriteChars` is not an idempotent action, that's why it should only
be sent to it's destination client.
2022-06-16 15:20:23 +02:00
a-kenji
3ccc1f3946
Add/ci enable clippy (#1509)
* fix(clippy): clippy fixes

* add(ci): enable clippy warnings

* chore(fmt): cargo fmt

* disable: failing clippy action

Add `cargo make clippy` in ci
2022-06-15 15:26:52 +02:00
a-kenji
6186578178 fix(clippy) 2022-06-15 14:03:52 +02:00
a-kenji
3de59dac42
fix(clippy): clippy fixes (#1508)
* fix(clippy): clippy fixes

* chore(fmt): cargo fmt
2022-06-15 14:03:11 +02:00
a-kenji
7314b62321
fix: remove obsolete logs (#1504) 2022-06-15 12:30:23 +02:00
a-kenji
cdef256a54 docs(changelog): add action dispatch from cli 2022-06-15 11:43:36 +02:00
a-kenji
0b6001305b
feat: add capability to dispatch actions from cli (#1265)
* feat: add capability to dispatch actions from cli

Add capability to dispatch actions from the cli.

Can be invoked through `zellij action [actions]`

Automatically sends the action either to the current session,
or if there is only one session to the single session.

If there are multiple sessions, and no session is specified it will
error out.

Example:
1.
```
zellij action "[NewTab: , NewTab: ]"
```
2.
```
zellij -s fluffy-cat action '[NewPane: , WriteChars: "echo Purrr\n" ]'
```
3.
```
zellij -s fluffy-cat action '[ CloseTab, ]
```

* add: error message on malformed input

Add an error message on malformed input, for the `action`'s dispatch.
Rather than resulting in a panic.

* add: function to query the client id

* add: send specific actions to certain clients

Adds ability to send actions, that don't impact the server state
to all connected clients. For example `MoveFocus`

* add: client_id to non blocking actions

* chore(fmt): `cargo fmt`

* add: pick correct session, if there is exactly one

* add: use correct `client_id` for detach action

* add: make `[ ]` opaque to the user

* add: miette to toplevel to improve error message

* add: fake client reading configuration

Add the fake client reading configuration files,
this allows actions, that rely on configuration work
correctly. This is an intermediate solution, and should ideally not
be needed. It would be better if most of this state would be handled
by the server itself.

* chore(fmt): rustmt

* add: ability to detach multiple clients

Add ability to detach multiple clients at the same time.

* remove: obsolete functionality

* remove: unused functionality

* add: send correct action upon exiting

* chore(update): cargo update
2022-06-15 11:20:06 +02:00
a-kenji
253a140804
fix(themes): gruvbox-dark (#1499) 2022-06-14 22:34:05 +02:00
a-kenji
4bb0bfcafb chore(changelog): update clap 2022-06-14 18:33:16 +02:00
a-kenji
f5a8f95307
chore(deps): update clap: 3.1.18 -> 3.2.2 (#1496) 2022-06-14 18:32:19 +02:00
Jae-Heon Ji
7f242d38f1
docs(changelog): deduplicate code in screen.rs 2022-06-14 00:49:45 +09:00
har7an
13d9110280
Deduplicate code in zellij-server screen (#1453) 2022-06-14 00:45:42 +09:00
a-kenji
88757d16a9
fix(themes): unify filename and themename usage (#1492) 2022-06-13 10:51:44 +02:00
a-kenji
6f029bda54
flake.lock: Update (#1489)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/236cc2971ac72acd90f0ae3a797f9f83098b17ec' (2022-06-03)
  → 'github:nixos/nixpkgs/e0169d7a9d324afebf5679551407756c77af8930' (2022-06-08)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/e64770eac18a1983232a5bc55fa443d9f15cc489' (2022-06-04)
  → 'github:oxalica/rust-overlay/2aef1450ab6ab1ff44f1fbfd8ef2202bcba9d9d3' (2022-06-11)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-12 11:01:40 +02:00
amaihoefner
b19e3d9d14
fix: tab selection by left click in compact-bar (#1485) 2022-06-11 20:43:36 +02:00
a-kenji
0e897ba156 docs(changelog): update cli tooltips 2022-06-11 15:58:06 +02:00
a-kenji
298ea2d9b7
fix(cli): clear up tooltip information (#1488) 2022-06-11 15:57:25 +02:00
a-kenji
0cd43a5d1b
fix: update architecture-docs (#1487) 2022-06-11 15:23:11 +02:00
Jae-Heon Ji
8340559c78
docs(changelog): add checksum 2022-06-11 11:21:37 +09:00
Jae-Heon Ji
53da135c3f
ci: add checksum for release binary (#1482) 2022-06-11 11:18:29 +09:00
a-kenji
13c3b052f3 add: trailing comma in match blocks 2022-06-10 20:05:02 +02:00
a-kenji
67d2673cae
add(style): add trailing comma in match blocks (#1483)
This makes it easier to distinguish from normal blocks
2022-06-10 20:03:13 +02:00
a-kenji
bcaa6b82c5 add: typos 2022-06-10 17:05:13 +02:00
Jae-Heon Ji
794662af82
docs(changelog): fix typo 2022-06-10 23:46:10 +09:00
Kian-Meng Ang
16b53aa52f
docs: fix typos (#1481) 2022-06-10 23:37:55 +09:00
a-kenji
edac2eb5a9
add(ci/makefile): run clippy on all features (#1479)
Run clippy on all exposed features, to minimize the possiblility
of breakage.
2022-06-10 12:21:01 +02:00
a-kenji
10baf303c9 add: lints to blame-ignore 2022-06-10 11:44:31 +02:00
a-kenji
9544a09786
add: fix a small lint (#1476) 2022-06-10 11:42:47 +02:00
a-kenji
5b0c2633e7
add(README): quick links to documentation (#1473) 2022-06-09 23:23:34 +02:00
a-kenji
8e51eec877
remove: obsolete nonfunctional configurations (#1474)
The nonfunctional configurations are not needed anymore,
the `tmux-overview` configuration is also not needed anymore,
since there is now a prefix mode that emulates some tmux behaviour,
which is already a good example in the default configuration.
2022-06-09 23:10:36 +02:00
a-kenji
a614d11737
ci(nix): retry nix build on spurious failure (#1472) 2022-06-09 19:58:16 +02:00
Aram Drevekenin
663797f5e3
docs(readme0: adjust installation methods 2022-06-08 15:58:53 +02:00
a-kenji
d0435ab67b chore(changelog): add default-layout option 2022-06-07 21:35:26 +02:00
a-kenji
3ee214ef35
add(option): default_layout (#1467)
* add(option): `default_layout`

Add `option` `default_layout` / `default-layout`,
that allows specifying a different layout, that should
be loaded on start.

Eg:
```
default_layout: compact
```

* add(manpage): `default_layout`
2022-06-07 21:32:04 +02:00
a-kenji
f005c843d8
remove: obsolete comment (#1465) 2022-06-07 20:18:11 +02:00