Giter Club home page Giter Club logo

b3's Introduction

b3

GitHub Telegram chat GitHub All Releases Donate with Bitcoin

b(aeck's implementation of i) 3 (wm for Windows)

Using b3

Using binary releases

  1. Head over to the Release page and download the latest binary zip file.
  2. Decompress it somwhere
  3. Copy the example.config to bin (See FAQ if you want to personalize the configuration))
  4. Execute b3.exe

Using source code releases

  1. Head over to the Release page and download the latest source zip file.
  2. Decompress it somwhere
  3. See Compiling
  4. Copy the example.config to bin (See FAQ if you want to personalize the configuration))
  5. Execute b3.exe

FAQ

What features of i3 are currently supported?

See here.

How does b3 integrate into Windows?

  • Your default Windows expierence stays the same. b3 lives within the Microsoft default Explorer shell and just adds functionalities you know and love of i3.
  • Stuff like Alt + Tab is still avialable
  • Switching between windows in the plain Windows way will be automatically recognized by b3 (e.g. switch to workspace of that window).
  • The Windows 10 desktop are still available but useless when b3 is running.
  • It is possible to rebind almost any key combination. Win + h, j, k, l is supported (for l see here)

What are the project's goals?

  1. Be as i3 like as possible while integrating into default Windows as easily as possible.
  2. Being stable is more important than having more features

I need a default configuration

A default config file is included in the release zip. To get started right away, it is already placed as config in the same directory as b3.exe.

For more information on where the configuration file can be placed please see the included man page.

Are there known limitations?

Yes, please see here.

Documentation

User

  • In the unzipped release you can perform man -l man/b3.1 to see the available command line options and where the configuration file can be placed.
  • Since b3 tries to be a drop in replacement for i3 you can use i3 User's Guide also for b3. But please cross check it with the compatibility list.
  • b3 releases ship a default configuration file. You can check it to see a list of most used commands.

Developer

  • Currently you have to read the source code entirely to get into b3 development. But most methods/functions have a documentation string. In the future some sort of generated documentation and/or class diagram will be added.

Compiling

Dependencies

On Windows using Msys2

You will need a functioning MinGW environment. This sections describes the compilation using Msys2.

First install the dependencies:

pacman -S make cmake automake autoconf mingw-w64-x86_64-gcc libtool bison flex mingw64/mingw-w64-x86_64-pcre

Then compile and install Collections-C:

wget https://github.com/srdja/Collections-C/archive/master.zip
unzip master.zip
cd Collections-C-master/
sed -i s/add_subdirectory\(test\)//g CMakeLists.txt # Testing is not needed
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..

Then compile and install w32bindkeys. Please have a look at its README.

Then compile b3:

./autogen.sh
make

Afterwards you may install b3 - depending on your MinGW environment - by performing:

make install

If you are unsatisfied with b3 you may uninstall it again:

make uninstall

On Fedora Linux (64 bit)

First install MinGW:

sudo dnf install -y mingw64-gcc mingw64-gcc-c++ cmake automake autoconf autoconf-archive libtool bison flex mingw64-pcre

Then compile and install Collections-C:

wget https://github.com/srdja/Collections-C/archive/master.zip
unzip master.zip
cd Collections-C-master/
sed -i s/add_subdirectory\(test\)//g CMakeLists.txt # Testing is not needed
mkdir build
cd build
mingw64-cmake ..
sudo make install
sudo cp /usr/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig/collectionc.pc /usr/lib64/pkgconfig

Then compile and install w32bindkeys. Please have a look at its README.

Then compile b3:

export PKG_CONFIG_PATH=/usr/x86_64-w64-mingw32/lib/pkgconfig/
./configure --host=x86_64-w64-mingw32
make

Version scheme

The version scheme of w32bindkeys is as follows: x.y.z

  • x is the stage:
    • < 0 is an unstable release
    • > 0 is a stable release
  • y incidates changes to the API or the configuration file functionalities.
  • z indicates additions without breaking any compatibility.

Author

Richard Bäck [email protected]

License

MIT License

Donations

Show me that you really like it by donating something. Thanks for any amount!

My Bitcoin address: 3DF2eTL9KSndqbuQTokWvTbUpDNQ6RuwxU

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.