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