Skip to content

Latest commit

 

History

History
65 lines (56 loc) · 2.11 KB

README.md

File metadata and controls

65 lines (56 loc) · 2.11 KB

2bwm

2bwm:

A fast floating Window Manager using XCB. This repo is based on a fork from 2bwm. With a new data structure, more features have been developed.

New Features:

  • select multiple windows across workspaces or:
  • select all windows across workspaces and:
    • move them to a new workspace.
    • teleport them.
    • resize into A4,A8 paper size.
    • hide and unhide.
    • delete them all together.
  • arrange all windows in a workspace into two side-by-side circular lists.
    • change focus on windows for each list.
    • move focus window from one side to the other.
  • individual focused window on each workspace.

Side by side

Dependencies

xcb-util-wm xcb-util-xrm xcb-util-keysyms

Install/Uninstall

# The following commands require sudo.
> cd 2bwm
> source 2bwm.sh
> 2bwm.install
# build archlinux package
> 2bwm.build

Data structure

delete window 1 delete window 2 add window

Testing

The test scripts inside test folder are a form of blackbox testing that simulate the behaviour of keyboard and mouse activities. The purpose of test cases are for verifying each existing features and should be executed and passed. Each pull request with new features should come together with new test cases.

# Predefine which workspace will be occupied for test cases
by editing file test/tsuitX.sh.
ws_alpha=[0-9]
# Install test script.
> 2bwm.testinstall test/tsuit1.sh
# Execute 2bwm.verify using keyboard: [Super + Shift + v]

You may also optionally using stimy to generate run-time call-graph as a tool for the source code level whitebox testing.

Releases:

arch is the latest developing branch. each release tag will be created from this branch. e.g. v1.0 is the first stable release tag form arch branch.

Reporting a issues and pull requests

github.com/netcrop/2bwm/pulls

License

ISC License