Git Product home page Git Product logo

dwm4k's Introduction

dwm4k - dwm extended for four column mode on 4K monitors.
=========================================================

This fork of dwm adds a tiling mode suitable for 4K monitors.

The basic idea is that some windows only need 1/4 of the width of the screen
(eg. terminals, editors viewing 80-column text) while others need 1/2 the width
of the screen to work well -- notably browsers.

MODKEY + END toggles a window between preferring "narrow" and "wide" rendering.

The new tiling mode produces something like this:

+-------------------+-------------------+---------------------------------------+
|                   |                   |                                       |
|                   |                   |                                       |
|                   |                   |                                       |
|                   |                   |                                       |
|    narrow win2    |    narrow win1    |             wide win3                 |
|                   |                   |                                       |
|                   |                   |                                       |
|                   |                   |                                       |
|                   |                   +-------------------+-------------------+
|                   |                   |                   |                   |
|                   |                   |                   |                   |
|                   |                   |                   |                   |
|                   |                   |    narrow win4    |     narrow win5   |
|                   |                   |                   |                   |
|                   |                   |                   |                   |
|                   |                   |                   |                   |
+-------------------+-------------------+-------------------+-------------------+

Higher-priority windows go on the left, lower on the right.

A good default is to run with nmaster==1 and mfact==0.5, in which:
  * A wide master window occupies the whole left half of the screen.
  * A narrow master occupies a full-height quarter-width slice of the screen,
    like "win1" shown above. As there's presumably little benefit in awarding
    more horizontal space to a narrow window, another narrow window also gets
    a full-height quarter-width slice, like "win2" shown above.

This allows efficient use of screen space when editing 80-column text. A 4K
monitor can comfortably fit four 80-column editor windows side by side.

It's also efficient for browsers: while many pages render poorly at only
1/4 the width of a 4K screen, it's rare that a browser benefits from more than
1/2 its width.

As with other dwm tiling modes, nmaster can be increased to raise the density
of the left-half of the screen, and mfact can be adjusted to move the boundary
between the laft and right halves.


FAQ
===

Q)  Why are the default key bindings for alpha keys weird?
A)  They're set to make sense with Colemak layout. You can change them back
    to the normal QWERTY bindings by editing config.h

Q)  Why a fork and not just another tiling mode that can be dropped into dwm?
A)  There are a few pervasive changes:
    * The new mode is implemented in C++, which required some adjustments
      to the base dwm code to integrate with a C++ module.
    * The 'prefer_wide' bit pervades the base dwm code.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.