Coder Social home page Coder Social logo

ittegrat / scintillua Goto Github PK

View Code? Open in Web Editor NEW

This project forked from orbitalquark/scintillua

0.0 0.0 0.0 10.52 MB

Scintillua adds dynamic Lua LPeg lexers to Scintilla.

Home Page: https://orbitalquark.github.io/scintillua

License: MIT License

C++ 5.94% C 0.08% Makefile 0.62% Lua 93.36%

scintillua's Introduction

Scintillua

Scintillua adds dynamic Lua LPeg lexers to Scintilla. It is the quickest way to add new or customized syntax highlighting and code folding for programming languages to any Scintilla-based text editor or IDE. Scintillua was designed to be dropped into or compiled with any Scintilla environment.

Scintillua may also be used as a standalone Lua library for obtaining syntax highlighting information of source code snippets. Scintilla is not required in that case.

Features

  • Drop-in installation in most Scintilla environments -- no modifications to Scintilla are necessary.
  • Support for over 120 programming languages.
  • Easy lexer embedding for multi-language lexers.
  • Universal color themes.
  • Comparable speed to native Scintilla/Lexilla lexers.
  • Can be used as a standalone Lua library (Scintilla is not required).

Requirements

Scintillua requires Scintilla 5.0.1 or greater and Lexilla 5.1.0 or greater for a drop-in installation. The drop-in external lexer already has Lua and LPeg pre-compiled into it.

When used as a standalone Lua library, Scintillua requires Lua 5.1 or greater and LPeg 1.0.0 or greater. Scintilla is not required.

Download

Scintillua releases can be found here. A comprehensive list of changes between releases can be found here.

Installation and Usage

Scintillua comes with a user manual in its docs/ directory. It covers how to drop Scintillua into an existing installation of a Scintilla-based application, how to compile Scintillua into your Scintilla-based application, and how to use Scintillua as a standalone Lua library.

As an example, you can drop Scintillua into an existing installation of SciTE, the SCIntilla based Text Editor, by moving Scintillua's lexers/ directory into SciTE's installation directory, and then adding the following to your SciTEUser.properties (Windows), .SciTEUser.properties (Linux), or SciTEGlobal.properties (either) file:

import lexers/lpeg

Scintillua's Application Programming Interface (API) documentation is also located in docs/. It provides information on how your Scintilla-based application can utilize Scintillua and communicate with it, and also how to write and utilize Lua lexers.

Compile

Scintillua can be built as an external Scintilla lexer, or it can be built directly into a Scintilla-based application. The standalone Lua library does not need to be compiled.

Scintillua currently only builds on Linux and BSD, though it can be cross-compiled for Windows.

Requirements:

In order to build the external lexer:

  1. Place a copy of Scintilla in the root directory of Scintillua (the Scintilla directory should be called scintilla/).
  2. Place a copy of Lexilla in the root directory of Scintillua (the Lexilla directory should be called lexilla/).
  3. Run make or make win.
  4. The external lexer is either lexers/liblexlpeg.so or lexers/LexLPeg.dll.

For more information on compiling Scintillua, including how to compile Scintillua directly into your Scintilla-based application please see the manual.

Contribute

Scintillua is open source. Feel free to submit new lexers, report bugs, ask for help, and discuss features. You can also contact me personally (orbitalquark att triplequasar.com). Thanks to everyone who has contributed.

scintillua's People

Contributors

orbitalquark 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.