The LilyPond ScratchPad for iPhone is a TextExpander Overlay Keyboard, to write basic LilyPond (LY) code, which can then be quickly transferred to a desktop computer, and integrated into actual LY code. LilyPond ScratchPad for iPhone is abbreviated LY-ScratchPad, or LYTXOL (for LilyPond TextExpander Overlay Keyboard).
LYTXOL is hosted by SourceForge.net
: http://lytxol.sourceforge.net
. The main sourceforge project page is https://sourceforge.net/p/lytxol/home
Combining the LilyPond ScratchPad with a TextExpander- and DropBox-enabled text editor, makes a powerful platform on which to write LilyPond-code on the go, quickly transport that code to your desktop, and then integrate it into actual LY code files.
LilyPond ScratchPad for iPhone was written with the xbn.textexpanderOL
Java library, another sourceforge.net
-hosted project.
[GO]
A Very Quick LilyPond Tutorial[GO]
Installation: Requirements, installing and uninstalling LYTXOL, and TextExpander quirks.[GO]
Usage: How to write LY code using the LilyPond ScratchPad.[GO]
Communicate:Please help improve the LilyPond ScratchPad for iPhone. Your advice, suggestions, and criticism are all appreciated. I am a relative newcomer to LilyPond, and my relatively-narrow focus is on arranging acapella music. It is easily-possible to make multiple flavors of LYTXOL available simultaneously, based upon the needs and wishes of the larger LilyPond-iOS community.
Beyond fixing bugs and addressing critical-missing functionality, here are the primary needs of the LYTXOL project:
LYTXOL-sourceforge
discussion forum and bug-and-feature-request tracker as the primary places for LilyPond ScratchPad user-communication. Gradually decrease non-LilyPond-specific discussion on gmane.comp.gnu.lilypond.general
Any contributions are greatly appreciated.
Yours sincerely,
Jeff Epstein
[TOP]
Using LYTXOL: LilyPond ScratchPad for iPhoneThis documentation assumes you have a basic knowledge of LilyPond. There is a very quick tutorial if you need it.
Reference: LYTXOL Quick-Reference Card complete key-command reference with LYTXOL key-commands only and with both overlay and actual (symbol) key-commands.
There are four kinds of snippets:
[GO]
Pitches: A through G, with or without 'low' duration and 'low' octavization.[GO]
Rests and silences: Rests and silences, with or without (any) duration.[GO]
High duration and octavization: For particularly-high duration numbers, dots or octavization. For following pitches.[GO]
Other standalone snippets: Including chords, simultaneous blocks, holds and slurs, manual beaming, bar lines, curly braces, and documentation.The red section is for Quick-Entry Mode. The mirror image of Quick-Entry Mode (the left side) is for entering unusually-high (32-128) duration, dots (2 and 3) and octavization (2 and 3 apostrophes or commas).
Download this overlay for printing: A single (smaller, grayscale) JPG (26kb), DOC (330kb), PDF (16kb), and all three ZIPped (65kb).
And here is the actual (symbol) keyboard in iOS4 (on my iPod Touch), which is 'underneath' the LilyPond overlay:
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Pitches can be output
[GO]
by themselves,[GO]
with a duration between 1 and 16, having zero or one dot,[GO]
with one-level octavization (one apostrophe or one comma), or[GO]
with both duration (1-16, 0-1 dots) and (1-level) octavization.[GO]
The alternative Quick-Entry Mode for raw pitches.[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Contents:
[GO]
High octavization and duration: An overview[GO]
High octavization (no duration)[GO]
High duration (no octavization),[GO]
High octavization and high duration,[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Low duration and octavization may accompany pitches in the same snippet. High octavization and duration may not accompany pitches. They are separate snippets which may follow pitch-snippets.
Low is defined as:
High is defined as:
Unfortunately, because every snippet is followed by two spaces (because of a TextExpander quirk), you'll need to eliminate the spaces between the raw-pitch snippet and the following high-duration/octavization snippet. Press backspace a couple times before executing the latter...or just do a global search and replace on your desktop before integrating it into your LY code files.
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
High octavization is two or three octaves up (apostrophes) or down (commas).
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
The keys below are the high-octavization keys.
|
Notes:
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
While pitches can only exist in the same snippet as 'low' duration, rests and silences can exist in the same snippet with all duration numbers (and dot-amounts).
For example:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Raw pitches can be output in one of two ways. This section describes standard note-entry mode. There is also a quick-entry mode.
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Notes:
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Only one-level octavization (one comma or apostrophe, considered 'low octavization') may accompany a pitch in the same snippet. For higher octavization...
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
Only 'low' duration and octavization may accompany pitches in the same snippet. For higher octavization and duration...
Examples:
|
[BACK]
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
|
|
Square braces are only to show how many spaces there are. They are not part of the snippet.
|
|
|
|
Note the key commands are shaped like a V and lowercase h.
|
[BACK]
LYTXOL: LilyPond ScratchPad for iPhone
When you need to enter a series of raw pitches, particulary in music having lots of runs, Quick-Entry Mode is much easier than inputting raw-pitches in standard entry mode. In Quick-Entry Mode, keys are very close together, and only two presses are required for a snippet. In all other snippets, at least three keys are in each key-command.
Portion of the Brandenburg Concerto No. 3. (only slightly edited...)
Apologies to anyone who uses the Euro, Pound and Yuen keys a lot.
The top right of the LilyPond TextExpander Overlay Keyboard is for Quick-Entry Mode.
|
There is no way to enter duration or octavization in Quick-Entry Mode.
Notes: To output a d-flat (des
):
Rests: To output a rest ('r'
) in flat mode, use:
Rests can be output in flat and natural quick-entry modes. Silences can be output in sharp mode.
Notes: To output a e-natural (e
):
Rests: To output a rest in natural mode, use:
Notes: To output a e-sharp (eis
):
Silences: To output a silence ('s'
) in sharp mode, use:
[BACK]
[TOP]
LYTXOL: LilyPond ScratchPad for iPhone
LilyPond is an open-source-and-free programming language to create beautiful sheet music (and midi/sound-files of that music). It runs on Windows, Mac, and Unix-based OSes (Linux and BSD). Note it is a programming language. There is no window- or mouse-based note-entry to be found. LilyPond only reads plain-text files.
Install LilyPond on your desktop computer. Create a new text file named rainbow_connection.ly
, with this text:
\version "2.12.3" \relative c' { \time 9/8 \key a \major cis4. e~ e4 a8 | b4 cis8 cis4. r | d,4.~ d4 e8 a4. | a4. b r | }
Run LilyPond on it (via right clicking on the file and clicking 'Generate PDF...'
, or typing 'lilypond rainbow_connection.ly'
in the command console). Look at the PDF file that is created in the same directory as the LY file:
If you have even a minimal knowledge of music, it is not difficult to understand the basics of LilyPond. Some observations:
'4.'
is a dotted quarter note'~'
is a tie to the next note.'is'
is sharp ('#'
) and 'es'
is flat ('b'
). It is derived from Dutch.'d,'
means that the D should be an octave lower than LilyPond would expect. Were the \relative c'
eliminated, then commas (indicating lower) and apostrophes (indicating higher) would be required on each note.The basics of LilyPond are indeed easy to understand. Pushing beyond the basics, however, absolutely requires that you read--at least--the first hundred pages of the LilyPond learning manual. Once you get through the learning manual, a world opens up to you.
Only after that, can you start perusing the THOUSANDS of pages of LilyPond documentation. You thought I was exaggerating?
[TOP]
[TOP]
LYTXOL: LilyPond ScratchPad for iPhone
[TOP]
LYTXOL: LilyPond ScratchPad for iPhone
Minimum Requirements:
'ime'
, and then bloop (you actually hear a bloop sound), it is replaced with 'myemail@whatever.com'
. It can be downloaded for five dollars (as of 11/6/2010) in the iPhone App Store http://www.dropbox.com/
.http://lytxol.sourceforge.net/lilypond_scratchpad_txol.textexpander
lilypond_scratchpad_txol
. Select it.lilypond_scratchpad_txol
, and then re-get it with 'Add via URL'. If it still doesn't work after a few tries, uninstall and then reinstall. Don't uninstall TextExpander itself, just follow the steps below.These instructions are how to uninstall only the LilyPond ScratchPad. You never need to uninstall the TextExpander app from your iPhone.
lilypond_scratchpad_txol
, and then touch [Delete]
to confirm (img).(-)
appears at the top left of each app (img).(-)
, and any TextExpander-enabled text editors (I use Notebooks).Now the installation instructions may be repeated.
There are some odd behavior issues to note with TextExpander.
As stated in the installation instructions, sometimes installation fails for no apparent reason. Instead of LilyPond snippets (img), this is what you see (img). When this happens, just delete the LilyPond snippet group and try to install again. If it doesn't work after a few tries, follow the uninstall steps before trying again.
You'll notice every snippet is followed by two spaces. Without these spaces TextExpander will randomly and frequently stop recognizing snippet-abbreviations. Consider getting used to doing to global search and replace on your desktop computer, to eliminate these spaces.
One known issue is how, if the abbreviation 'ht'
were configured to expand to 'Hello there!'
, then one might expect 'hht'
to expand to 'hHello there!'
. It doesn't, and I wish it did. Please consider writing to the TextExpander developers and requesting this change.
Not directly related to the LilyPond ScratchPad, but it would be loads of greatitude if it were possible to selectively turn on and off individual Snippet Groups. Please consider writing to the TextExpander developers and requesting this change.