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
9dbec05ff9
fix: clarify help text ( #1442 )
2022-05-30 23:11:36 +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
Jae-Heon Ji
f7c019743a
fix: add checking for missing extensions ( #1432 )
2022-05-24 13:09:01 +09: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
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
Jae-Heon Ji
8c38b39ef6
fix: update to output error when using --layout ( #1413 )
2022-05-12 22:42:31 +09:00
Luke Stadem
a017a6512d
feat: Shows subcommand aliases in help text ( #918 ) ( #1409 )
2022-05-10 16:36:57 +02:00
a-kenji
b56bfecdf0
fix: a small typo ( #1390 )
2022-05-10 09:01:18 +02:00
Aram Drevekenin
0dc136ec5f
fix(compatibility): respond to bg and fg color ansi queries ( #1358 )
...
* fix(compatibility): respond to background/foreground queries
* style(fmt): rustfmt
* style(clippy): make clippy happy
* style(fmt): rustfmt
* style(fmt): remove unused code
2022-04-28 17:26:44 +02:00
Aram Drevekenin
7ba49658f7
fix(ipc): empty ipc msg crash ( #1351 )
...
* fix(ipc): recover from corrupted channel state
* style(fmt): rustfmt
2022-04-27 10:44:14 +02:00
Jae-Heon Ji
be0af7e69c
feat: support the command of auto-start script for shell ( #1281 )
2022-04-21 00:28:09 +09:00
Jae-Heon Ji
f2a7e73687
fix: minor system improvements ( #1328 )
2022-04-16 16:11:46 +09:00
Thomas Linford
198625b055
feat(copy): add copy_on_select option ( #1298 )
...
* feat(copy): add copy_on_select option
with default value of true, keep current behavior of automatically
copying selection to clipboard when done selecting.
with copy_on_select = false, on mouse release the selection remains, and
can be copied with the `Copy` action.
* add example to default.yaml
* add copy action example to default.yaml, cleanup
* fix updated tab tests
* fix selection changing while scrolling after release
* fix clippy warnings
2022-04-16 09:04:06 +02:00
Aram Drevekenin
25492b448d
fix(ui): adjust default bg color
2022-04-13 15:36:04 +02:00
Aram Drevekenin
4f13307828
fix(ui): adjust default colors
2022-04-13 15:23:42 +02:00
Aram Drevekenin
19adb29be5
feat(signals): support XTWINOPS 14 and 16 (and query the terminal for them on startup and SIGWINCH) ( #1316 )
...
* feat(signals): get pixel info from terminal emulator
* feat(signals): query for pixel info on sigwinch
* feat(signals): reply to csi 14t and csi 16t
* style(fmt): rustfmt
* style(comments): remove outdated
2022-04-12 18:07:32 +02:00
Kunal Mohan
9f716487ca
Improve theme usage + add default ones ( #1274 )
...
* Remove gray from theme config and improve colors for dark themes
* improve theme usage
* Add new themes and minor fixes
* improve tokyo-night theme according to new changes
* Fix formatting
* change default black colour
* docs(CHANGELOG): #1274 improve themes
2022-04-02 03:19:42 +05:30
Aram Drevekenin
18ee784e2d
feat(ui): add navigation with alt + arrow keys ( #1264 )
...
* feat(ui): change from non-working alt-brackets to alt-arrows
* style(fmt): rustfmt
* fix: improve parsing of `alt` combination keys
The binding of the keys can now be specified with:
- Alt: 'c'
- Alt: Up
- Alt: Down
- Alt: Left
- Alt: Right
* chore(fmt): rustfmt
Co-authored-by: a-kenji <aks.kenji@protonmail.com>
2022-03-25 14:28:08 +01:00
Aram Drevekenin
7141779153
chore(deps): move from termion to termwiz for STDIN handling ( #1249 )
...
* fix(deps): switch from termion to termwiz for STDIN parsing
* style(fmt): clippy
* style(fmt): moar clippy
* style(fmt): rustfmt
* fix(tests): e2e mouse press
* style(fmt): rustfmt
* bring back polling
* fmt fmt fmt
* fix some e2e flakiness
2022-03-23 09:08:35 +01:00
Brooks Rady
9bfafde123
feat(ui): round frame corners ( #1227 )
...
* feat(ui): round frame corners
* Allow rounded_corners to be set without a palette
* Revert "Allow rounded_corners to be set without a palette"
This reverts commit 9271a4b5452f2e59e0ebd55136343f0fbfabaa13.
* fix(style): remove redundant code
* fix(style): clippy lints that somehow got missed
* feat(config): add ui config section
2022-03-22 14:58:16 +00:00
a-kenji
092926c5d8
fix(wasm_vm): use cache_dirs for ephemeral plugin data ( #1230 )
...
fix(wasm_vm): use `cache_dirs` for ephemeral plugin data
Use proper `cache_directories` by default, that users can be expected
to have proper write permissions for.
The directory is used for plugin hashes, and compilation data.
2022-03-17 11:57:38 +01:00
a-kenji
c2e388f339
fix: deprecated function in clap ( #1225 )
...
`CommandFactory::into_app()` is deprecated in
favor of `CommandFactory::command()`
2022-03-16 13:15:07 +01:00
Jae-Heon Ji
0b74604a9f
feat: improve error reporting system ( #1038 )
...
* feat: add draft a concept code
* feat: add err_ctx to diagnostic
* feat: optimize error report
* chore: add user-friendly help
* fix: manual merge lockfile from main
2022-03-13 20:46:03 +09:00
a-kenji
21f7b5baa5
fix(config): allow POSIX style --config override ( #1205 )
...
Allow multiple `--config` flags, then use the latter.
Also allows similar behaviour for similar flags.
fixes : #310
2022-03-10 22:19:19 +01:00
a-kenji
e2ce261210
add(comp): dynamic completions for fish ( #1176 )
...
And infrastructure to make it possible
to add more dynamic completions for
different shells in the future.
eg:
```
zellij attach [completes-active-sessions]
zellij kill-session [completes-active-sessions]
```
fixes : #1030
2022-03-05 16:23:51 +01:00
a-kenji
cd4b8ae8b6
fix(layout): allow lowercase keys and values ( #1160 )
...
A layout needed to be specified as follows:
```
---
template:
direction: Horizontal
parts:
- direction: Vertical
body: true
- direction: Vertical
borderless: true
split_size:
Fixed: 1
```
now the same layout can be specified as:
```
---
template:
direction: horizontal
parts:
- direction: vertical
body: true
- direction: vertical
borderless: true
split_size:
fixed: 1
```
2022-03-03 14:08:51 +01:00
a-kenji
6d653e1521
add: set env var's from config and layout ( #1154 )
...
Add ability to set `ENVIRONMENT VARIABLES` from the
config and the layout files.
example:
```
env:
ZELLIJ_CONFIG:
DEFAULT
```
or
```
env:
ZELLIJ_LAYOUT_NAME:
BUILD_SESSION
```
If two keys conflict (configuration and layout), then the key
from the layout is used.
fixes : #1059
2022-03-01 15:47:52 +01:00
a-kenji
4f84c36024
fix: typo in error message ( #1151 )
2022-02-28 23:00:47 +01:00
Kerfuffle
e2081f2649
fix: Allow terminal title passthrough even when not drawing pane frames. ( #1113 )
...
* fix: Allow terminal title passthrough even when not drawing pane frames.
* Minor formatting fix.
* Handle case where the session name is not set.
2022-02-28 17:54:41 +01:00
Jae-Heon Ji
a489194b55
fix: invalid assignment of client_id ( #1052 )
...
* feat: sync socket connection in
* chore: apply clippy
* chore: change message name
2022-02-23 23:50:49 +09:00
Aram Drevekenin
a0a0a7e5c4
feat(ux): tmux mode ( #1073 )
...
* work
* basic tmux move and functionality
* tmux mode ui
* rustfmt
2022-02-21 15:52:42 +01:00
Aram Drevekenin
821e7cbc5a
feat(ui): add floating panes ( #1066 )
...
* basic functionality
* close and reopen scratch terminal working
* embed/float and resize whole tab for floating and static floating panes
* move focus working
* fix focus change in floating panes
* move pane with mouse
* floating z indices
* tests and better resize algorithm
* starting to work on performance
* some performance experimentations
* new render engine
* reverse painters algorithm for floating panes
* fix frame buffering
* improve ux situation
* handle multiple new panes on screen without overlap
* adjust keybindings
* adjust key hints
* fix multiuser frame ui
* fix various floating/multiuser bugs
* remove stuff
* wide characters under floating panes
* fix wide character frame override
* fix non-frame boundaries interactions with floating panes
* fix selection character width
* fix title frame wide char overflow
* fix existing tests
* add tests
* refactor output out of tab
* refactor floating panes out of tab
* refactor tab
* moar refactoring
* refactorings and bring back terminal window title setting
* add frame vte output
* remove more unused stuff
* remove even more unused stuff
* you know the drill
* refactor floating panes and remove more stuffs
* refactor pane grids
* remove unused output caching
* refactor output
* remove unused stuff
* rustfmt
* some formatting
* rustfmt
* reduce clippy to normal
* remove comment
* remove unused
* fix closign pane
* fix tests
2022-02-18 21:10:06 +01:00
Thomas Linford
18709acde9
feat(copy): allow osc52 copy destination configuration ( #1022 )
...
add copy_cliboard option to allow configuring copy destination to primary selection instead of default clipboard
2022-02-02 15:22:34 +01:00
Jae-Heon Ji
1d2e303926
feat: add focus attribute in layout ( #958 )
...
* feat(layout): add focus attribute in layout
* feat: add state of focus to tab
* chore: i love clippy
* test(layout): update focus options
* feat: add focus pane
* feat: apply focus-pane when layout is only loaded
* change the instruction name for focus-on-tab
* chore: apply cargo-fmt
* test: add e2e testcase
2022-02-01 02:19:21 +09:00
a-kenji
c82ee774ce
fix(config): warn on mode without actions ( #1035 )
...
Log with a warning, if the user finds himself in a mode,
that has no action associated with it.
fix #949
2022-01-31 16:24:06 +01:00
Marcin Puc
e58b67ce2e
chore(deps): update arg parsing to clap v3 ( #1017 )
...
* Update arg parsing to clap v3
* Ignore shell argument case
2022-01-23 20:59:03 +01:00
Christophe Verbinnen
9cc2645db0
Add a copy command option ( #996 )
...
Usage: zellij options --copy-command "xclip -sel clip"
Co-authored-by: Christophe Verbinnen <christophev@knowbe4.com>
2022-01-15 12:38:45 +01:00
Kunal Mohan
e23d06b70d
Feature: Configurable scroll buffer ( #936 )
...
* Configurable scroll buffer
* Fix unit test failures
* Add scroll_buffer_size description in the default config file
* Fix config file
2022-01-04 23:24:05 +05:30
LordMZTE
9e74d8d617
fix(plugins): typo that gives plugins the wrong theme ( #975 )
2021-12-28 08:58:25 +01:00
Aram Drevekenin
ca8438b0aa
feat(collaboration): implement multiple users ( #957 )
...
* work
* feat(collaboration): implement multiple users
* style(cleanup): some leftovers
2021-12-20 17:31:07 +01:00
Kunal Mohan
c75bcbd937
Feature: Add pane names ( #928 )
...
* Read pane name from layout
* Update pane name at runtime
* Fix tests
* prefer and render pane name over pane title
* fix clippy errors
* fix after rebase
2021-12-09 23:30:40 +05:30
Aram Drevekenin
92bddf1b79
fix(plugins): support multiple users ( #930 )
...
* fix(plugins): support multiple clients
* fix(style): make clippy happy
2021-12-08 18:41:41 +01:00
Marcin Puc
56e85f87d6
fix(style): various internal refactorings
2021-12-07 10:24:42 +00:00
a-kenji
050fa8fd07
fix(config): unbind keys correctly ( #925 )
...
* turn off the merging of key bindings of layout and configuration
files for now.
In certain situations the keybindings would be overwritten.
Fix #923
2021-12-04 16:06:20 +01:00
Aram Drevekenin
cbe0d5405e
fix(compatibility): do not duplicate bracketed paste in chunked stdin input ( #917 )
...
* debug message
* fix attempt
* oops
* remove log message
* rustfmt
* style(clippy): make clippy happy
* style(clippy): make clippy happy again!
2021-12-02 18:35:55 +01:00
a-kenji
adee5e78a9
fix(theme): add gray to theme ( #914 )
...
fix #912
* Add `gray` to theme
2021-11-30 11:03:20 +01:00
Tw
d7e460a3d6
Fix: missing theme in config ( #913 )
...
Signed-off-by: Tw <wei.tan@intel.com>
2021-11-30 09:46:48 +01:00
Brooks J Rady
7cb165f0c2
fix(style): remove unused imports
2021-11-27 15:35:37 +00:00