Skip to content

A missing tab layout for any windows manager / desktop environment

License

Notifications You must be signed in to change notification settings

huijunchen9260/tabbed-hjc

Repository files navigation

Hui-Jun Chen's build of tabbed

A missing tab layout for any windows manager / desktop environment

Unique functionality

  • Super-Shift-. to open terminal application embeded in tabbed
  • Super-Shift-/ to open new terminal window with the chosen terminal's path
  • Super-Shift-a to attach window from current workplace.
    • Require wmctrl.
    • Require windows manager / desktop environment with EWMH (Extended windows manager Hint)
    • Should use -c argument, i.e., tabbed -c software -embedarg.
  • Super-Shift-s to attach window by mouse selection.
    • Should use -c argument, i.e., tabbed -c software -embedarg.
  • Super-Shift-equal to automatically attach all windows from current workplace.
    • Require wmctrl.
    • Require windows manager / desktop environment with EWMH (Extended windows manager Hint)
    • Should use -c argument, i.e., tabbed -c software -embedarg.
  • Super-Shift-d to detach child window from current tabbed window.
    • Should use -c argument, i.e., tabbed -c software -embedarg.
  • Super-Shift-minus to automatically detach all child windows from current tabbed window.
    • Should use -c argument, i.e., tabbed -c software -embedarg.
  • Super-Shift-[ to hide current tab in current tabbed window.
  • Super-Shift-] to show hidden tab in current tabbed window by dmenu prompt.
  • Super-Shift-\ to show all hidden tabs in current tabbed window.

Key bindings

  • Super-Shift to show tabs
  • Super-Shift-Return to open new tab
  • Super-Shift-j to previous tab
  • Super-Shift-k to next tab
  • Super-Shift-h to move selected tab one to the left
  • Super-Shift-l to move selected tab one to the right
  • Super-Shift-u to toggle autofocus of urgent tabs
  • Control-Tab to toggle between the selected and last selected tab
  • Super-Shift-q to close tab
  • Ctrl-u to focus next urgent tab
  • Super-Shift-[0..9] to jumps to nth tab

Requirements

  • Xlib header files to build tabbed
  • dmenu to show prompt
  • cut, xargs, grep, pstree, sed, wmctrl, xdotool, xprop, xwininfo

Installation

git clone https://github.com/huijunchen9260/tabbed-hjc
cd tabbed-hjc
sudo make install

Patches applied

Scripts

  1. tabbed-slime: use vim-slime with tabbed. Move tabbed-slime to your $PATH and add the following code into your ~/.vimrc:
let g:slime_target = "x11"
function SlimeOverrideConfig()
    let b:slime_config = {"window_id": ""}
    let b:slime_config["window_id"] = system("tabbed-slime")
endfunction
  1. tabbedize: make non-tabbed window tabbed.

Configuration

Rofi compatibility

tabbed-hjc use dmenu by default. If you want to use rofi, you can modify config.def.h (or config.h) by either

  1. Replacing dmenu to rofi, with the corresponding arguments. The arguments I use for dmenu is -i for case insensitivity, -l for vertical prompt, and -p for prompt name, or
  2. Simply replacing dmenu as rofi -dmenu, and leave all the other arguments as it.

About

A missing tab layout for any windows manager / desktop environment

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published