Giter VIP home page Giter VIP logo

sublilypond's Introduction

SubLilyPond v.2

LilyPond syntax highlighting in Sublime Text 2 & 3.

ANNOUNCEMENT: Using Atom or TextMate instead? SubLilyPond ports to these editors are now available (AtLilyPond, tmLilyPond).

Description

This project aims at providing comprehensive and consistent syntax highlighting of GNU LilyPond code in Sublime Text 2 and 3.

Future versions may include a LilyPond build engine and snippets/autcompletions. Feel free to contact me for feedback, bug reports, and feature suggestions.

Music scholars seeking a complete typesetting solution may be interested in LyTeXTools, my LilyPond-enabled fork of Marciano Siniscalchi’s LaTeXTools package.

Installing SubLilyPond

SubLilyPond is distributed via Will Bond's superb Package Control. Alternatively, you may clone (or copy the contents of) this repository into your Sublime Text packages folder:

git clone http://github.com/yrammos/SubLilyPond.git

Color schemes

SubLilyPond is a LilyPond syntax definition, not a color scheme. It enables Sublime Text to distinguish the various syntactical elements in the LilyPond code, yet the particular color assigned to each element is defined elsewhere, in the active color scheme. A wide range of schemes is freely available, for example via Package Control. Not all schemes provide the highest level of visual differentiation, so you may need to test several.

Screenshot

Tweaking SubLilyPond

You may easily optimize SubLilyPond for use with your favorite color scheme by tweaking the scope names of the syntax definition. See this if you really insist on doing so.

Scheme code embedded in LilyPond

Since no Scheme syntax definition is currently available for Sublime Text 2 or 3, SubLilyPond parses embedded Scheme code using the Lisp syntax definition. Scheme is a Lisp dialect, of course, and this workaround has caused no glitches so far.

New in version 2.1.1

  • Hides partial syntax definitions such as "LilyPond figured bass" from the status bar menu, as they are intended for internal use. (Feature available only in Sublime Text 3.)

New in version 2.1

  • Support for the Toggle Comment and Toggle Block Comment editor commands
  • Support for new LilyPond 2.18 keywords
  • Bug fixes and minor improvements

New in version 2

This significant update provides:

  • Support for previously unsupported LilyPond modes:
    • chord mode
    • figured bass
    • markup modes
    • lyrics modes
    • drum modes
  • Note mode improvements, with proper highlighting of:
    • time signatures
    • tempo ranges
    • scaling durations
    • circled fingerings
    • ligatures
    • abbreviated tremolo notation

Reporting bugs

Please include the following with your bug reports: screenshot, LilyPond snippet manifesting the issue, short issue description, and the name of your color scheme.

Acknowledgement

The list of keywords in the first release of SubLilyPond was an extended version of Heikki Junes's syntax definition for vim, which comes bundled with LilyPond.

Copyright © 2013 by Yannis Rammos. This work is made available under the terms of the Creative Commons Attribution-NonCommercial 3.0 Unported (CC BY-NC 3.0) license, http://creativecommons.org/licenses/by-sa/3.0/.

sublilypond's People

Contributors

yrammos avatar tymbalodeon 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.