Giter Club home page Giter Club logo

wf-lua's Introduction

wf-lua

IRC: #swayfire on libera

Experiment to use Lua as an advanced configuration language for wayfire.

wf-lua is meant for use-cases where writing an actual wayfire plugin shouldn't be necessary. These use-cases include:

  • User configuration: setting options and defining custom keybinds.
  • Window management automation scripts: listening for events and calling into the exposed lua api for wayfire and other plugins at a high level.
  • (planned: Implementing ipc commands for an eventual wf-msg <command> <args>)

wf-lua is not meant for:

  • Implementing anything that requires access to an OpenGL context. (e.g.: decorations, view transformers, custom surface implementations)
  • Implementing anything requiring continuous calling-back of lua functions. (e.g.: animations)

For these use-cases, you should create a real wayfire plugin.

NOTE: wf-lua is still in very early development.

Installation

Wf-lua depends on Wayfire's master branch. Please make sure it is installed before building.

To build and install from source:

# Build and install wf-lua:
sudo zig build install --prefix /usr -Drelease-fast

Documentation

You can view the latest generated HTML documentation online here.

Wf-lua uses LDoc to generate documentation from comments in lua source code. LDoc can be installed from LuaRocks.

# Generate html documentation in ./public/:
ldoc .

Contributing

Contributions are welcome.

Wf-lua uses zig fmt for zig source code and nudge the formatter as much as possible to keep line length under 80 characters.

Wf-lua uses the c++17 standard and a modified llvm coding style defined in .clang_format. Please run clang-format --style=file -i <FILENAME> on any c/c++ source. to run the formatter before every commit.

We also use lua-format for lua source formatting (install from luarocks).

wf-lua's People

Contributors

javyre avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

wf-lua's Issues

AUR Package

Hey there,
I just found this project and I'm very thankful that you created this! Is there a chance that we can get an AUR package though?
Thanks!

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.