package oxbow

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file cmd_window_shift.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
open! Oxbow_ipc

let command_term dir =
  let open Cmdliner.Term.Syntax in
  let+ target = Ctl_cli.target_one_window_term in
  Command.Window (Shift { dir; target })
;;

let mk_leaf (name, doc, dir) = Ctl_cli.cmd_pair ~name ~doc @@ command_term dir

let targets =
  Ctl_cli.logical_leaves
    ~next:
      "Shift target window toward the tail of the stack. Wraps to the head if target \
       window is the tail"
    ~prev:
      "Shift target window toward the head of the stack. Wraps to the tail if target \
       window is the head"
;;

let name = "shift"
let doc = "Shift the target window through the tile stack"
let cmd, bind_cmd = Ctl_cli.group_pair ~name ~doc @@ List.map mk_leaf targets