
Security News
New CVE Forecasting Tool Predicts 47,000 Disclosures in 2025
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
hyperlayout
Advanced tools
Layout presets for Hyper.app
$ npm install -g hyperlayout hpm-cli
$ hpm install hyperlayout
To get started, write your layout inside .hyperlayout
.
If you already use a package.json
file, you can add it there. (With with the hyperlayout
key)
Alternatively you can define global layouts in ~/.hyperlayout
.
.hyperlayout
[
[
"echo 'Hello'",
"echo 'World'"
]
]
To apply the layout, simply run hyperlayout
in the same directory.
$ hyperlayout
This example shows the capabilities of hyperlayout
. It demonstrates the usage inside package.json
and how to define multiple layouts.
package.json
{
"name": "my-example",
"scripts": {
"watch": "gulp watch",
"serve": "nodemon build/index",
"layout": "hyperlayout"
},
"hyperlayout": {
"default": [
[[
"npm run watch",
["npm run serve", "http://localhost:3000"]
]],
"mongod"
],
"helloworld": {
"entry": "horizontal",
"layout": [
"echo 'Hello'",
"echo 'World'"
]
}
},
"devDependencies": {
"nodemon": "latest",
"gulp": "latest",
"hyperlayout": "latest"
}
}
Since there are two layouts defined here, you have to tell hyperlayout
which one you want to use.
$ hyperlayout # Layout: default
$ hyperlayout helloworld # Layout: helloworld
$ npm run layout # Layout: default
["1", "2"]
[["1", "2"]]
or
{
"entry": "horizontal",
"layout": ["1", "2"]
}
[[["1", "2"]]]
or
{
"entry": "vertical",
"layout": ["1", "2"]
}
There are two different ways to define a layout:
The most basic way is to create a nested array with strings (commands) inside. The hierarchy looks like this:
Tabs
|-- Horizontal Panes
|-- Vertical Panes
|-- Horizontal Panes
|-- Vertical Panes
|-- ...
This is a example for a vertical split using this method:
[
[
["echo Hello", "echo World"]
]
]
A layout object should contain the following key-value pairs:
entry: <String>
– You can define at which level the layout begins. Either tab
, vertical
or horizontal
. Default value is tab
.
layout: <Array>
– A layout, as described above. The only difference is, that it respects the entry point. This can make the layout more readable.
{
"entry": "vertical",
"layout": [
"echo Hello", "echo World"
]
}
As shown in the Advanced Example, it's possible to define multiple layouts in one project. Instead of supplying the layout directly, you define name for the layout first.
{
"default": {
"entry": "vertical",
"layout": ["echo Hello", "echo World"]
},
"otherlayout": ["echo Hyper", "echo Term"]
}
hyperlayout
will look for the default
layout, when there is no parameter. If there is one, it will apply the given layout.
$ hyperlayout [NAME]
You can define global layouts inside ~/.hyperlayout
.
hyperlayout
will use these layouts when there is no configuration in the current directory. It's possible to force global layouts with the following command:
$ hyperlayout global [NAME]
or
$ hyperlayout g [NAME]
hyperlayout
is written by Timo Lins.
Special thanks to Tobias Lins, for coming up with some great solutions.
FAQs
Layout presets for Hyper.app
We found that hyperlayout demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.