Tiles by Sempliva. Organize your macOS windows in a snap. Tiles is a window manager which allows you to easily reorganize windows by either dragging them to the edges of the screen, using keyboard shortcuts, or the menu bar. I3 is a tiling window manager, completely written from scratch.The target platforms are GNU/Linux and BSD operating systems, our code is Free and Open Source Software (FOSS) under the BSD license. I3 is primarily targeted at advanced users and developers. I can only speak to macOS, but window management in this case is actually built on something entirely distinct from the actual system window manager. It utilizes a framework designed for implementing accessibility driven features, but it just happens to provide mechanisms for moving and tracking windows. What Window Management Options exist for OS X?, Tiling Window Manager for Mac OS X?, multiple monitor software for Mac, Move windows around a desktop - and to different desktops - using only the keyboard? – Lri Oct 31 '11 at 13:27. While macOS Catalina includes screen tiling options, nothing compares to Cisdem Window Manager for Mac ($9.99). Get your lifetime license today in the Apple World Sometimes it can be a real hassle to work with one monitor, trying to get the windows you need to show up on the screen at the same time.
Using a mouse or trackpad is a major distraction and flow-breaker for many development tasks, especially programming. I strive for using keyboard shortcuts as much as possible to be more productive while programming.
Out of the box, macOS does not provide many keyboard shortcuts when it comes to window management. As an example, there is no way to move a focused window to another space by keyboard.
In this article I want to present my curated list of useful tools to manage windows, displays, and spaces (of Mission Control) without a mouse. I hope you retire your mouse after reading this post. ?
Alfred is an elite application launcher and utility to search and find files on your machine or on the Web. I use Alfred instead of Spotlight. The hotkey to open up the launcher panel has been burned into my brain for a long time. Of course, you can define a custom key combo in Alfred’s settings.
Alfred is very versatile, you just have to fire up the panel with your defined hotkey and you can start typing. Most of the time I type the starting characters of an app I want to launch. However, you can do more from this input field, e.g., start a google search as you can see from the next screenshot (marked by ⌘5).
To open a file or folder on your machine, start typing open and Alfred assists you with recommended actions shown in the result list. Stockfolio 1 56.
Alfred has many more awesome features like snippets or workflows, which I will not cover here. Take a look at Alfred’s power pack. I want to point out one awesome feature and that is Clipboard History. You can define a shortcut in the Features section of Alfred’s settings.
If you press the defined hotkey, a clipboard history panel appears and allows you to paste more than the last copied item.
Spectacle is an awesome tiny tool that allows for changing the size or position of a particular window. It upgrades macOS in a way that you can use keyboard shortcuts to resize or move focused windows of any app. Sophisticated window management by shortcuts is one aspect I have missed from Microsoft Windows when I was working on a project with PCs as development machines.
In my current project, I have an environment with two external displays in addition to the built-in display of my MacBook. Spectacle providescustomizable shortcuts even for throwing a focused window to another display. Therefore, you can specify shortcuts in Spectacle’s settings dialog for Next Display and Previous Display.
Besides moving windows from one visible display to another, I highly use shortcuts to resize windows like Make Larger, Make Smaller, or Left Half.
I appreciate Spectacle’s simplicity. You have a nice glasses icon in the menu bar to see all window actions along with keyboard shortcuts at a glance.
Macos Catalina Tiling Window Manager
The following recording gives an impression how Spectacle works. I used the shortcuts as you can see in the screenshot above.
Spectacle is brilliant, however, it lacks one feature I really need. I need to move windows also to invisible spaces. Spectacle only allows to move windows between visible spaces (i.e., displays) by defining shortcuts for Next Display and Previous Display. Luckily, the next tool can help out.
Amethyst constitutes a tiling window manager for macOS. It has some features in common with Spectacle, e.g., increasing and decreasing window sizes by shortcuts. However, as you can see from the screenshot about Amethyst’s settings, the tool provides many more useful shortcuts.
My personal killer feature is the ability to throw focused windows to a particular space. I very often move a window to the left or right space (Throw focused window to space left or Throw focused window to space right).
Another very handy feature does not require using shortcuts at all. Amethyst rearranges windows on a display automatically (i.e., visible space in focus). As an example, if you have a single browser window on your active display and you open another browser window by ⌘ N, both windows are positioned next to each other with the exact same width and height. If you put another window of any software on this display, all three windows are rearranged again in a way that there is no overlapping. Wicked!
I use Contexts primarily for an improved 'Command-Tab switcher'.
Contexts adds the ability to select individual windows by using the learned key combos ⌘ ⇥ and ⇧ ⌘ ⇥ (to move up the list). In the settings you can also define other shortcuts for these actions. Additionally, you can also use multiple shortcuts for invoking the window switcher with individual settings, which is not possible with macOS default switcher.
As you can see from the previous screenshot, you can define any number of shortcuts to activate the window switcher and to move the list up and down. What I really like is that you can restrict the list for every shortcut, e.g., show only visible spaces.
Another major time saver is Contexts’ search capability. Actually, it acts more like a filter for the window list. When you have activated the switcher panel, you can just start typing (with pressed hotkey) and, thereby, filter the list to save the time for moving up and down the list.
You can even optimize this workflow by defining a modifier key to activate and use the fast search feature. To switch to a window, press this modifier key and type a few characters from the app name or window title. As you can see from a previous screenshot, on the left-hand side of the switcher panel characters are shown that show you suitable strings for fast search.
What I also like is that I can remove particular apps from the switcher panel’s list, e.g., macOS Finder, because I’m not convinced of this tool and use instead an alternative.
There are some shortcuts to use Mission Control without a mouse. For me, the most important one is to switch between spaces by pressing ⌃ ← or ⌃ →. To open Mission Control or show its spaces bar press ⌃ ↑. To show all windows of an application side by side press ⌃ ↓.
Of course, the following shortcuts should become second nature if you want to be productive on a Mac. ⌘ Q quits applications along with all its windows. To close a focused window press ⌘ W. To copy and paste things use ⌘ C and ⌘ V.
Another useful shortcut during my office hours is locking the screen by pressing ⌃ ⌘ Q. In addition, a useful shortcut to kill none-responding applications is ⌥ ⌘ ESC.
If you cannot remember these system shortcuts, you can take a look at the application menu. If a command provides a shortcut, you can find it on the right side of the menu entry. An even faster approach is to use KeyCue. It’s a useful tool to show all shortcuts of the current application which is currently in focus along with system shortcuts. The goal of KeyCue is to find, remember, and learn keyboard shortcuts.
You can show the list of shortcuts for a focused app from the keyboard. As an example, I configured KeyCue to show the list by pressing the ⌘ key for 1.5 seconds.
I want to point out that the presented tools provide way more features. However, these are the most important capabilities for me to reduce mouse usage.
Resizing and moving windows between visible and none-visible spaces with just a few keystrokes has significantly improved my productivity during a course of a day. I hope I could provide you some inspiration to improve your development workflow.
Macos Tiling Window Manager Tool
By Xah Lee. Date: . Last updated: .
tried xmonad today for real. Currently, 1 hour into it.[see How to Use xmonad; xmonad Keys]
Tiling windows is unusable and inefficient.
• Complete esoteric set of keys you need to memorize just for the tiling-window mechanism. Also, standard keys such as Alt+F4 are now screwed.
• More Combo keys = RSI.[see Keyboard Shortcut vs Launch Buttons]I type more than any Haskell coder on this earth.
• Encroach on each app's keys. This means, you'll spend time to config each app, or diddle with the global mode key setting. This means hours to be spent down the road. Tab launcher 2 8 1.
• Completely screwing emacs's keys.(No, remapping to any of Super, Hyper, ▤Menu, CapsLock keys won't help. All modifier keys are used up in my emacs for many purposes, including inserting math symbols.)
[see Emacs Keybinding, Keyboard, Articles Index]
Tiling Windows Concept = Fail
![Macos Tiling Window Manager Macos Tiling Window Manager](https://bystram.be/posts/images/macos-virtualbox-guest-close-to-fullscreen-on-HD-monitor-toolbar.jpg)
Worst of all, the tiling windows idea itself is too idealistic. The idea behind tiling windows is that it uses your screen real-estate efficiently. Namely, all apps are laid out without gaps.
But what this means is that, the natural optimal size and position and arrangement of app windows on your screen is sacrificed. They, the position, size, arrangement, are artificially made to fit into a table layout. If all you do is text terminals, that's ok. But as soon as you have browser, image viewer, image editor, text/voice/video chat programs, math/scientific apps, …, each really needs its own optimal position/size. So, this means, when using a tiling-windows scheme, you either pop them into full screen, float them, or put each in a workspace, no tiling at all. Or do a lot combo key press to re-arrange/re-size them tiled. Much more work than is worth.
If you need every window to be the same size, great. As soon as you need one window for different shape/size, then you get funky sub-optimal layout. The gaps between windows simply moved into your windows. Some window will have lots of white space, and some will have jagged lines because the window is too narrow.
One symptom of tiling windows inefficiency is the so-called fibonacci layout.
Tiling windows… Do you really need to look at ALL the windows at once?
A Challenge: Try This Workflow
Try the following workflow for a week. I'd be interested to know if you still think tiling windows great.
• remove tiling manager. Use a basic, normal, one, such as xfce.
• set workspace/virtual-screen to just 1. (and remove the tens of related keybindings)
• set up 3 function keys to switch to 3 of your most used app. For example,{F8, F9, F10} for {emacs, browser, terminal}.[see How to Set Key to Switch to Browser]
• set up 1 key to switch to last window, such as F4. (this is normallyAlt+Tab. In xfce, can be done easily. In lxde+openbox, the problem is that it requires pressing Enter to “exit” the switch, similar to releasing Alt.)
• set up 1 key to cycle windows within a app. F3.(trivial to do in xfce. Harder in lxde+openbox.)
• set up 1 key to toggle max/restore window size. F1
• set up 1 key to close window. For example, F6 (must be 1 single key. Alt+F4 is not good.)
• set up 1 key to switch prev tab, and 1 key to switch next tab. (i use {F11, F12})
• set up 1 key to close tab. For example, the pause/break key.[see Print Screen, SysRq, ScrLk, Pause, Break Keys](note: the prev/next tab key, and close tab key, should be next to each other.If you are using a full-sized PC keyboard with numberpad, best to use/*-for {close, prev, next} tab, in that order.[see How to Program Number Keypad as Function Keys])
• turn on mouse hover auto-raise window. (not just focus, but raise.)[see Linux: Mouse Hover to Raise Window]
• ban double-click.[see Linux: Set Mouse Single-Click to Open File]
Note, all above keys should be single press key, no holding of modifier shit.
Which key to set really depends on your keyboard. (i'm assuming you are on a full-sized keyboard, not laptop, as you shouldn't type on laptop keys for long periods.) For a normal PC keyboard, the best keys are likely to be all function keys. but if you use any of the batman keyboards, you have a lot options, such as putting them on thumb keys.
If you do have a keyboard with extra keys, remove ALL keybinding that involves holding a modifier. Remove them ALL. Never press a key combination.[see Ban Key Chords]
If you don't know how to set keys for items i didn't give explicit instruction, see:
XahTV 2020-05-26 Why Tiling Window Manager Sucks
all you want to know about keyboard layout, dvorak, colemak, touch tying
Video Demo
Here's a video demo of my technique.
It's actually a demo of me using emacs, but you can still see my system. Also, am using a Mac there, but the principle is the same.
note:
- The position of windows. There's usually a little exposed area, so i can mouse hover to it, and it'll come up. No Ctrl+Tab, no ⌘command+Tab, no Mac “Mission Control”, etc.
- No mouse click happens. Am using dwell on MacOS. Just hover mouse to a place and it'll auto click. [see Mac: Hover to Switch Window]
- No chord is used. No Ctrl, no Alt, no ⌘command, no ⌥option.
- All shortcuts keys are either single key, or key sequence of single keys. (you can't see it in video but can infer by keyboard sounds.) you might see C-g in emacs screen, but it's actually a single key remapped to Ctrl+g.
Even More Efficiency
This essay became popular, and over the years, lots comments.
Here's a basic guide, if you want the utmost efficiency.
First, get yourself a mechanical keyboard with lots thumb keys, and even better is driverless programable. Because the keyboard hardware, is the thing you touch every minute.It's the interface between you and your window manager. A good efficient one, makes a world of difference.
you want mechanical because that makes pressing keys much easier.[see Mechanical Keyboard and Repetitive Strain Injury]
you want lots thumb keys because thumb is the most powerful finger. (for pressing Control Alt or otherwise use it as leader key, or single function such as vi's Esc, or switch to last window.)
you want programable because then it's 100% reliable, not going thruloops and hoops via OS that always have glitches. And it works in any OSwhen plugged in. No need to spend hours with xmodmap or AutoHotkey or karabiner.
you want driverless programable because then you can just press keys on the keyboard to remap keys or record macros on the fly. No need to install or startup a driver software, which is usually intrusive that diddle with kernel, or have to do the elaborate process of config keyboard on a website then download firmware updater and follow the procedure.
[see Keyboard Firmware]
Get yourself a Programable Keypad for all your single-key press shortcut needs.(F1 to F12 is not enough)
SeeWhy Function Keys F1 F2 Are Useful
and if you too cheap to buy a dedicated programable keypad, seeHow to Program Number Keypad as Function Keys
alternative or in addition to programable keypad, get a 10 or 20 buttons mouse.You no understand it untill you are a competitive MMO gamer or photoshop pro.
see Mouse Reviews
also, scroll is the MOST important thing on mouse, because you use it the most.
especially on linux, where there's no accelerated scroll, you want scroll wheel that can spin.
Privatus 5 1 1 – automated privacy protection privacy. See Logitech Mouse with Spin Wheel
the above are hardware stuff. Surprisingly, it is actually more important than your window magager or key setup. Especially for Repetitive Strain Injury issues.
also, in general, avoid any key combos such as holding Control, Meta, Alt. Ban them. SeeBan Key Chords
and lastly, if you are into keybinding efficiency research, read the whole series of articles at
no wanna move hand to mouse?
a slew of linux emacs vi idiots have the obsession of wanting to ban the mouse.Typified by the name ratpoison windows manager.The level goes like this:
- kinder-gardener level, they use mouse to select, copy, paste, etc. Typified as Microsoft Window dweebs. (but in fact, Microsoft Windows have a key sequence system starting with Alt key, that is actually the most efficient system for keybinding. Lots expert users use that, but it fell out of fashion since about 2010.)
- sopho-moron level, these are the linux vi emacs geeks, who incessantly obsess about banning mouse, with such as vimperator pentadactyl.
- god, thou shall use mouse when it is optimal. and when you are at the level of typing a billion keystrokes a day, you want to move away from keyboard as much as possible. The very thought of keeping hands on keyboard makes you puke.
when you are at Xah level, you want 2 mouses. One for each hand, use whichever convenient at hand, and avoid mouse hand problem. Or, use a trackball or touchpad for one of them.
Reddit Discussion
keyboard driven floating window manager.https://www.reddit.com/r/unixporn/comments/783smw/keyboarddriven_floating_window_manager/
If you have a question, put $5 at patreon and message me.