pw98
v0.1.6
Published
customizable multiple process window
Downloads
21
Readme
pw98
Terminal application that customizable multiple process window.
Installation
yarn global add pw98
# or
npm install -g pw98
you can install it to project local, too
Usage
cd your/project/path
pw98 ./config.json
# or
pw98 /any/config/absolute/path.js
Operation
| key | target pane | description | | ---------------------------- | -------------------------- | ----------------------------------------------------------------- | | ← or → | - | move selected pane. [none] -> [pane1] -> [pane2] -> ... -> [none] | | 1 - 9 | - | select Nth pane | | 0 | - | deselect pane | | m | selected pane | toggle maximum / minimum pane | | c | selected pane or all panes | clear log | | r | selected pane or all panes | restart process | | Ctrl+c | - | exit pw98 |
Config Structure
Pane
| key | type | desc |
| ----------- | ----------------------------- | ----------------------- |
| direction
| "row" | "column" | direction to split pane |
| procs
| Array<Proc | Pane> | can be nested |
Proc
| key | type | example / description |
| --------- | ------- | ------------------------------------------------------------- |
| name
| string | "test"
|
| command
| string | "yarn jest"
|
| refresh
| boolean | refresh old output before current output. default is false
. |
Examples
1. Simple ver (JSON)
{
"direction": "row",
"procs": [
{ "name": "pane1", "command": "echo sample1-1" },
{ "name": "pane2", "command": "echo sample1-2" }
]
}
2. Complex ver (CommonJS Style)
const pane1 = { name: "pane1", command: "echo sample2-1" };
const pane2 = { name: "pane2", command: "echo sample2-2" };
const pane3 = { name: "pane3", command: "echo sample2-3" };
const pane4 = { name: "pane4", command: "echo sample2-4" };
module.exports = {
direction: "row",
procs: [
pane1,
{
direction: "column",
procs: [
{
direction: "row",
procs: [pane2, pane3]
},
pane4
]
}
]
};
Development
Build (automaticaly)
$ yarn watch
Test
$ node bin/index.js ./examples/config.js