Skip to content
repository for the fion window manager
C Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
fion initial import Jun 24, 2019
Makefile initial import Jun 24, 2019
README.md
dict.c initial import Jun 24, 2019
dict.h initial import Jun 24, 2019
event.c instead of using xcb_wait_for_event(), use poll() on the xcb connection Aug 20, 2019
fion.c fix warnings and remove whitespace Jul 28, 2019
fion.h fix warnings and remove whitespace Jul 28, 2019
layout.c start destroying tiles Jul 28, 2019
log.c initial import Jun 24, 2019
log.h initial import Jun 24, 2019
tree.c initial import Jun 24, 2019
tree.h initial import Jun 24, 2019
window.c - properly create and destroy clients Jun 26, 2019
wm.c start destroying tiles Jul 28, 2019

README.md

fion

repository for the fion window manager

THIS IS A WORK IN PROGRESS, IT IS NOT WORKING YET !

description

fion is a static tiling window manager inspired by ion.

design

Fion assigns a work area to each screen. Each work area manages one or many workspaces and will always display an active workspace at a given time. A workspace will always contain at least one tile filling it up entirely. Tiles may be split horizontally or vertically.

currently implemented

  • detects and configures multiple screens
  • assigns a workarea, default workspace and default tile to each screen
  • as many workspaces as wanted on each screen
  • as many tiles as wanted on each workspace
  • keyboard shortcuts to create / destroy / switch between next and previous workspace
  • keyboard shortcuts to split horizontally & vertically / destroy / switch between next and previous tile
  • keyboard shortcut to run terminal
  • notion of current workspace and current tile on each screen
  • attaches X client to the proper place
  • focus is given to a tile either through keyboard shortcuts or by moving cursor
  • event loop implements a tick to update layout even in the lack of events

missing

  • tiles management is not finished: creating / splitting / iterating works fine but destroying breaks the layout
  • framing inside tiles so that it is possible to iterate between X clients attached to the same tile
  • splitting tiles halves the parent tile, support for resizing should be implemented
  • a cross workspace tile should be implemented, similar to ion's alt-space tile

obligatory screenshots

1 2

You can’t perform that action at this time.