GithubHelp home page GithubHelp logo

pombredanne / luakit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from karottenreibe/luakit

0.0 1.0 0.0 3.98 MB

Fast, small, webkit based micro-browser extensible by Lua.

Home Page: http://luakit.org/projects/luakit/

License: Other

Lua 55.49% Shell 0.16% C 38.62% C++ 4.88% Ruby 0.34% Vim Script 0.52%

luakit's Introduction

Luakit

luakit is a fast, light and simple to use micro-browser framework exensible by Lua using the WebKit web content engine and the GTK+ toolkit.

Dont Panic!

You don't have to be a developer to use luakit on a daily basis. If you are familiar with vimperator, pentadactyl, jumanji, uzbl & etc you will find luakit behaves similarly out of the box.

Requirements

  • gtk2
  • Lua (5.1)
  • lfs (lua file system)
  • libwebkit (webkit-gtk)
  • libunique
  • sqlite3

Compiling

To compile the stock luakit run:

make

To link against LuaJIT (if you have LuaJIT installed) run:

make USE_LUAJIT=1

To build without libunique (which uses dbus) run:

make USE_UNIQUE=0

To build with a custom compiler run:

make CC=clang

Note to packagers: you may wish to build luakit with:

make DEVELOPMENT_PATHS=0

To prevent luakit searching in relative paths (./config & ./lib) for user configs.

The USE_LUAJIT=1, USE_UNIQUE=0, PREFIX=/path, DEVELOPMENT_PATHS=0, CC=clang build options do not conflict. You can use whichever you desire.

Installing

To install luakit run:

sudo make install

The luakit binary will be installed at:

/usr/local/bin/luakit

And configs to:

/etc/xdg/luakit/

And the luakit libraries to:

/usr/local/share/luakit/lib/

To change the install prefix you will need to re-compile luakit (after a make clean) with the following option:

make PREFIX=/usr
sudo make PREFIX=/usr install

Use Luakit

Just run:

luakit [URI..]

Or to see the full list of luakit launch options run:

luakit -h

Configuration

The configuration options are endless, the entire browser is constructed by the config files present in /etc/xdg/luakit

There are several files of interest:

  • rc.lua -- is the main config file which dictates which and in what order different parts of the browser are loaded.
  • binds.lua -- defines every action the browser takes when you press a button or combination of buttons (even mouse buttons, direction key, etc) and the browser commands (I.e. :quit, :restart, :open, :lua <code>, etc).
  • theme.lua -- change fonts and colours used by the interface widgets.
  • window.lua -- is responsible for building the luakit browser window and defining several helper methods (I.e. w:new_tab(uri), w:close_tab(), w:close_win(), etc).
  • webview.lua -- is a wrapper around the webview widget object and is responsible for watching webview signals (I.e. "key-press", "load-status", "resource-request-starting", etc). This file also provides several window methods which operate on the current webview tab (I.e. w:reload(), w:eval_js("code here.."), w:back(), w:forward()).
  • modes.lua -- manages the modal aspect of the browser and the actions that occur when switching modes.
  • globals.lua -- change global options like scroll/zoom step, default window size, useragent, search engines, etc.

Just copy the files you wish to change (and the rc.lua) into $XDG_CONFIG_HOME/luakit (defaults to ~/.config/luakit/) and luakit will use those files when you next launch it.

Uninstall

To delete luakit from your system run:

sudo make uninstall

If you installed with a custom prefix remember to add the identical prefix here also, example:

sudo make PREFIX=/usr uninstall

Reporting Bugs

Please use the bug tracker at:

http://luakit.org/projects/luakit/issues

Community

Mailing list

Subscribe to the development mailing list here:

http://lists.luakit.org/mailman/listinfo/luakit-dev

Or view the archives at:

http://lists.luakit.org/archive/luakit-dev/

IRC

Join us in #luakit on the irc.oftc.net network.

luakit's People

Contributors

alexis-d avatar ambrevar avatar aparicio99 avatar barthalion avatar benarmston avatar cschomburg avatar dieterbe avatar dmedvinsky avatar eshizhan avatar halhen avatar husio avatar jerojasro avatar johntyree avatar karottenreibe avatar kongo2002 avatar kumanna avatar liaonau avatar mason-larobina avatar mwild1 avatar pawelz avatar pete avatar pombredanne avatar portix avatar quigybo avatar ri-ga avatar stebalien avatar vain avatar xabbu42 avatar xitian9 avatar ymln 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.