Giter VIP home page Giter VIP logo

amethyst's Introduction

Amethyst

Join the chat at https://gitter.im/ianyh/Amethyst Build Status

Tiling window manager for OS X along the lines of xmonad and i3.

Example 1

A quick screencast of basic functionality can be found here. (It's rough, and I'd love to see a better one if someone has the skills and inclination to make one.)

Getting Amethyst

Amethyst is available for direct download here or using homebrew cask.

brew cask install amethyst

Note: that Amethyst now is only supported on OS X 10.10+.

Using Amethyst

Amethyst must be given permissions to use the accessibility APIs under the Privacy tab of the Security & Privacy preferences pane as shown below.

Accessibility permissions

Keyboard Shortcuts

Amethyst uses two modifier combinations.

  • mod1 - option + shift
  • mod2 - ctrl + option + shift

And defines the following commands, mostly a mapping to xmonad key combinations.

  • mod1 + space — cycle to next layout
  • mod2 + space - cycle to previous layout
  • mod1 + w - focus 1st screen
  • mod1 + e - focus 2nd screen
  • mod1 + r - focus 3rd screen
  • mod2 + w - move focused window to 1st screen
  • mod2 + e - move focused window to 2nd screen
  • mod2 + r - move focused window to 3rd screen
  • mod2 + [n] - move focused window to nth space
  • mod2 + left - move focused window left one space
  • mod2 + right - move focused window right one space
  • mod1 + h - shrink the main pane
  • mod1 + l - expand the main pane
  • mod1 + , - increase the number of windows in the main pane
  • mod1 + . - decrease the number of windows in the main pane
  • mod1 + j - focus the next window counterclockwise
  • mod1 + k - focus the next window clockwise
  • mod2 + j - move the focused window one space counterclockwise
  • mod2 + k - move the focused window one space clockwise
  • mod1 + return - swap the focused window with the main window
  • mod1 + t - toggle whether or not the focused window is floating
  • mod2 + t - toggle globally whether or not Amethyst tiles windows
  • mod1 + i - display the current layout for each screen

Setting Up Spaces Support

Spaces are, unfortunately, not supported right out of the box. To enable it you must activate Mission Control's keyboard shortcuts for switching to specific Desktops, as Mac OS X calls them. This option is in the Keyboard Shortcuts tab of the Keyboard preferences pane. The shortcuts will be of the form ctrl + [n]. Amethyst is only able to send a window to the nth space if the shortcut ctrl + n is enabled.

Mission Control keyboard shortcuts

Contributing

If you would like to see features or particular bugs fixed check out the Trello board here and vote on things. It'll give me a better sense of what people want so I can prioritize.

I love pull requests. If you'd like to contribute please branch off of the development branch and open pull requests against it rather than master. Otherwise just try to stick to the general style of the code.

In order to build Amethyst locally, you'll need to also perform the following steps after cloning the repo:

  • Install carthage and rbenv.
    • These are not installed via the setup script so as to not casually pollute your global environment.
  • Run rake setup, which installs dependencies from Carthage and CocoaPods.
    • Note that by default CocoaPods will be installed and run via bundler. This restricts the version to get around some bugs in the current CocoaPods beta.

Contact

If you have questions or feedback you have a plethora of options. You can email me, tweet at me, or get on gitter. That last one is new and kind of experimental. You can drop by #amethyst on Freenode, as well, but I am on there fairly infrequently.

Donating

Amethyst is free and always will be. That said, a couple of people have expressed their desire to donate money in appreciation. If you are so inclined I've set up two options:

  • You can find a Patreon page here if you would like to pledge money regularly for releases.
  • If you would like to do a one-time donation there's a PayPal button below. If there's some other method of donating that you would prefer open an issue and I'll try to add it!

PayPal Donate

If you are considering donating to me, you are more than welcome to. You should also consider donating that money to a charity in addition to or instead. Here's a very incomplete list of things that you might want to throw money at:

And a bunch of technology-oriented ones:

amethyst's People

Contributors

amfarrell avatar beneills avatar benesch avatar benlodotcom avatar deiga avatar dhertz avatar dhgwilliam avatar edrex avatar espadrine avatar famousgarkin avatar gitter-badger avatar hooplaaa avatar ianyh avatar interstateone avatar leonardt avatar m4rw3r avatar pedrovieira avatar readmecritic avatar shayne avatar therealyoram avatar

Watchers

 avatar

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.