Ergus / Qemacs

Personal Qemacs fork ported to git.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Readme

This is a personal fork for Qemacs. A quick and smaller version of emacs implemented in pure C.

This fork will try to include all the functionalities in the original qemacs project as soon as they appear; but will add some extra functionalities from time to time. But we will keep the original philosophy of implementing everything only in C and Keep it simple to use and build as similar to Emacs as possible.

We will try to keep the number of external dependencies as low as possible and the main supported system to work will be GNU/Linux distributions; but we actually give support for the MS Windows and Haiku.

Building from sources

To compile Qemacs from sources you need to use any cmake version higher than 3.0.

  1. Clone this repository:

    git clone https://github.com/Ergus/Qemacs.git
  2. Create build directory

    mkdir Qemacs/build
    cd Qemacs/build

    In this case the build directory is named build inside the Qemacs cloned repository; but you can name and set it as you prefer.

  3. Generate the build files.

    cmake *path_to_sources*

    If you followed the steps 1 and 2 you can use the cmake .. because build will be inside the sources directory.

    There are some extra build options you can specify in this step using the cmake syntax: -DOPTION=value.

    Some usefull and important options are:

     * ENABLE_TINY: To build a minimal version without modules and
     external dependencies. (default: off)
    
     * ENABLE_X11: To try to build a graphical version of qemacs
     using X11 (depends of X11 libraries; default: on)
    
     * ENABLE_DOC: To build the html documentation (depends of makeinfo).
    
     * CMAKE_INSTALL_PREFIX=*path*: Path prefix to install (default: /usr/local for GNU/Linux and c:/Program Files for Windows)
    

    We use the CMake search system to look for dependencies. When the dependencies are not found in any of the usual locations a message will be shown and the related option will be disables automatically.

  4. Build

    make

    After this step you will have the qemacs executable file in the current directory.

  5. Install (optional)

    If you want to install qemacs in your system or the specified CMAKE_INSTALL_PREFIX (step 4).

    make install

Dependencies

Qemacs is designed with the intention to be small fast ans self consistent. This simplicity philosophy extends also to the dependencies.

The simplest version of qemacs (-DENABLE_TINY=ON) can be build with no external dependencies; also the tty version in most of the supported systems.

For the X11 version there are some minimal requirements that need to be satisfied in order to access X11 functionalities.

Build

  • libx11-dev: is needed to build with the gui support.

  • libxft-dev: to build with FreeType font support.

  • libglib2.0-dev: to build with gsettings integration (find the right font configured in the system).

All the dependencies above are only needed to build the sources in GNU/Linux systems because the libraries needed at runtime are already available in most of the distributions.

To build without X11 support and bypass all these dependencies add -DENABLE_X11=false in the CMake configuration line.

Documentation

When built with -DENABLE_DOC=on (the default) the compilation system will generate a documentation file in html format in the build directory.

But also original qemacs project already provides a useful online documentation.

There will be also a manual provided with the current installation system.

In the future we expect to improve the documentation and provide our own online version if needed.

Licensing

Original QEmacs is released under the GNU Lesser General Public License. This project will keep this license.

Fabrice Bellard. Charlie Gordon. Jimmy Aguilar Mena

About

Personal Qemacs fork ported to git.

License:GNU Lesser General Public License v2.1


Languages

Language:C 94.4%Language:C++ 1.4%Language:Perl 1.1%Language:Python 0.7%Language:CSS 0.7%Language:Shell 0.6%Language:CMake 0.6%Language:Component Pascal 0.4%Language:HTML 0.1%Language:Makefile 0.0%