Commit Graph

20 Commits

Author SHA1 Message Date
a-kenji
cd0b0119a0 Split tab-layout into template & tabs section
* adjust example layouts and move them from `./example` to
  `./example/layouts`

* simplify the deserialization of the layout

* layouts are now constructed as follows:

```
---
template:
  direction: Horizontal
  parts:
    - direction: Vertical
      borderless: true
      split_size:
        Fixed: 1
      run:
        plugin: tab-bar
    - direction: Vertical
      body: true # <== The body section specifies the position of the
      # inserted tab
    - direction: Vertical
      borderless: true
      split_size:
        Fixed: 2
      run:
        plugin: status-bar
tabs:
  - direction: Vertical
  - direction: Vertical
```
2021-08-26 15:06:59 +02:00
a-kenji
2e17756785 Change layout panics to errors
* Adjust and add tests for the change
2021-08-02 12:07:30 +02:00
a-kenji
9a5b6690af Add example tab layouts 2021-08-01 20:27:43 +02:00
a-kenji
261e691f9f Add commands to layout
Add the ability to run commands on loading a layout:
```
  - direction: Horizontal
    split_size:
      Percent: 50
    run:
      command: {cmd: htop}
```
or respectively:
```
  - direction: Horizontal
    split_size:
      Percent: 50
    run:
      command: {cmd: htop, args: ["-C"]}
```

In order to specify the difference of commands and
plugins now the plugins need to be under the `run` section:
```
  - direction: Vertical
    split_size:
      Fixed: 2
    run:
      plugin: status-bar
```
This also means that this is a breaking change for people
that already have a custom layout.

Example layouts:
```
---
direction: Vertical
parts:
  - direction: Horizontal
    split_size:
      Percent: 50
    parts:
      - direction: Vertical
        split_size:
          Percent: 50
      - direction: Vertical
        split_size:
          Percent: 50
        run:
          command: {cmd: htop}
  - direction: Horizontal
    split_size:
      Percent: 50
    run:
      command: {cmd: htop}
```
and:
```
---
direction: Horizontal
parts:
  - direction: Vertical
    split_size:
      Fixed: 1
    run:
      plugin: tab-bar
  - direction: Vertical
    parts:
    - direction: Vertical
      parts:
      - direction: Vertical
        split_size:
          Percent: 50
        run:
          command: {cmd: htop}
      - direction: Vertical
        split_size:
          Percent: 50
        run:
          command: {cmd: htop, args: ["-C"]}
  - direction: Vertical
    split_size:
      Fixed: 5
  - direction: Vertical
    split_size:
      Fixed: 2
    run:
      plugin: status-bar
```

closes #551, closes #284
2021-07-09 16:43:44 +02:00
a-kenji
85a4e476f2 fixup! Merge branch 'main' of https://github.com/zellij-org/zellij into simple-font-ui 2021-05-10 20:54:39 +02:00
a-kenji
ef69644f1b fixup! Add Option for Simplified Layout
* merge structop and serde structs
2021-05-10 17:42:59 +02:00
a-kenji
088bcf3dd8 Add Option for Simplified Layout
* the simplified layout omits the Nerdfonts characters that are not
  found in every Fontset

* add an optional config option to opt into the simplified ui
  `simplified_ui: bool`

* add a config flag that allows opting into the simplified ui
  `zellij options --simplified-ui`

* move the `clean` flag to the `setup` subcommand
2021-05-10 16:03:06 +02:00
Dante Pippi
9c09cf1658 New behavior for h and l
New behavior for h and l, will change tabs if there are no available
panes in the direction.

cargo clippy

Ensuring atomicity for the MoveFocusOrTab

- Blocking the input thread for the action MoveFocusOrTab
- Using "unreachable" macro in match arm to make it clear that the
directions Up and Down should not be used with the action MoveFocusOrTab

Adding tests
2021-05-09 17:05:14 -03:00
fenix
fd4997a686 Minor Visibility problem fixed: 2021-04-28 05:27:10 -07:00
fenix
2ba7fc312c Added Screen-overview.yaml & Screen.nonfunctional.txt
Added Screen Equivalents for the Tmux.yaml files in the same format.
2021-04-27 20:01:17 -07:00
fenix
cee034127a Requested Changes to 362:
Renamed tmux.yaml to tmux.nonimplemented so that it's not mistaken, and removed an accidental edit in the default.yaml.
2021-04-25 11:52:31 -07:00
fenix
1f24417e80 Corrections to Pull Request 362:
Corrections according to the discussion of the pull request, namely separating this idea out into a new yaml entirely called tmux-overview., and creating a tmux.yaml with just the new tmux bindings.
2021-04-25 08:41:19 -07:00
fenix
ddf010ae40 Created Tmux.yaml
Created a 1:1 Tmux.yaml for Zellij, using the Lock mode, as Tmux doesn't have a lock mode.
2021-04-24 13:08:36 -07:00
Hongjie Zhai
1ed408db86 update default config 2021-04-21 14:51:52 +09:00
a-kenji
e5fc158503 Add Unbind for Keybindings (#241)
* will unbind all default keybindings for now

* add test for toplevel unbind

* add example/default.yaml

* add example/README.md
2021-04-17 15:05:34 +02:00
a-kenji
1f14683c8f Add Unbind Setting for Keybinds
Adds the `unbind: true` and `unbind: false` flag under
keybinds.

Unbinds all default Keybinds.

Some enums are here already for more flexible unbinds.
2021-04-17 00:15:12 +02:00
a-kenji
9c0762fc53 Update default config file 2021-03-13 12:25:28 +01:00
a-kenji
cac143db76 Modify example config file 2021-03-13 10:37:38 +01:00
a-kenji
1da743b1c7 Add more options to example config file 2021-03-13 10:20:56 +01:00
a-kenji
a86d8c2161 Add example config file. 2021-03-12 22:05:41 +01:00