Skip to content
This repository was archived by the owner on Nov 18, 2025. It is now read-only.

Getting Started

Jakob Schlanstedt edited this page Jan 1, 2022 · 9 revisions

Welcome to Japokwm. The windowmanager that gives you the user the ability to quickly create layouts.

Start

To start out please copy the file at /etc/japokwm/init.lua -> ~/.config/japokwm/init.lua.

Now you can start/restart your window manager by either typing japokwm into the tty or logging in via lightdm/the login screen you have.

Now open the file ~/.config/japokwm/init.lua with your texteditor of choice.

You will find a bunch of stuff that you can change. These don't represent all features present in japokwm but a small subset to not overwhelm the user.

You can try changing some variables if you want to get comfortable. To apply those changes you have to press mod-r where mod is the alt key by default.

To change the mod key to super you have to change opt.mod=1 to opt.mod=4

Creating your first layout

Copy the contents of /etc/japokwm/layouts to ~/.config/japokwm/layouts you may have to create the directory ~/.config/japokwm/layouts yourself.

Next go to ~/.config/japokwm/layouts/user1/init.lua. This is the user1 layout. You may have to create the directory and file yourself.

Write the following lines into that file:

local layout_data = {
    {
        {0, 0, 1, 1},
    },
    {
        {0.0, 0.0, 0.5, 1.0},
        {0.5, 0.0, 0.5, 1.0},
    },
}
layout:set(layout_data)
opt.resize_direction = Direction.right

Now you have created a layout which can be resized to the right and left by using mod-S-l (probably Alt_L+Shift+l) or mod-S-h.

Activating it requires you to open the file ~/.config/japokwm/init.lua (provided you copied them over already) and edit the line:

local layouts = {"three_columns", "two_pane", "monocle"}

to

local layouts = {"user1", "three_columns", "two_pane", "monocle"}

and reload the window manager with mod-r. If you press mod-space now you will cycle through those 4 layouts.

Note: if you press mod-r we will go back to the default layout given in this line:

opt.default_layout = layouts[1]

I encourage you to take a look into the other layouts and how they where implemented

How to continue

Next try to read:

  1. man 1 japokwm (optional)
  2. man 5 japokwm
  3. man 5 japokwm-cheatsheet

After that you should be good to go.

Plugins

WIP (planned for 0.5) may already work though. They are planned to be handled like neovim does. Plugins will be handled on github repos and we can download them then with a plugin manager.

Clone this wiki locally