From: jantien@xs4.xs4all.nl (Jan Nieuwenhuizen) Newsgroups: alt.ascii-art Subject: ASCII Music Notation? Date: 16 Feb 2000 14:28:01 +0100 Organization: XS4ALL, networking for the masses Lines: 110 Message-ID: <88e8l1$33h$1@xs4.xs4all.nl> References: What's New? Reply-To: janneke@gnu.org NNTP-Posting-Host: xs4.xs4all.nl X-Trace: news1.xs4all.nl 950707682 22429 194.109.6.45 (16 Feb 2000 13:28:02 GMT) X-Complaints-To: abuse@xs4all.nl NNTP-Posting-Date: 16 Feb 2000 13:28:02 GMT Keywords: ascii music typsetter notation X-Newsreader: trn 4.0-test66 (4 June 1998) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news.ip-plus.net!News.Amsterdam.UnisourceCS!newshunter!cosy.sbg.ac.at!news-feed.inet.tele.dk!bofh.vszbr.cz!newsfeed.berkeley.edu!logbridge.uoregon.edu!newsfeed.wirehub.nl!xs4all!xs4.xs4all.nl!not-for-mail Xref: chonsp.franklin.ch alt.ascii-art:8620 Hi! We were having a small discussion going in rec.music.compose on the subject of ascii representation of sheet music, but we seem to be a bit wanting for ascii artist (see below). Maybe there are music enthousiasts here? It's been suggested that the drawings below are too elaborate: This tries to do too much. I wouldn't expect nice clef signs in ASCII notation. Just a *representation* of clefs; merely putting "g clef" in front of the staff would be fine with me. The important thing is that the pitches and durations are understandable. but I don't think that's the case because the clefs are not the point. Incidentally: `g clef' is just as wide as the elaborate symbol is, so that doesn't really help. Note: as we have the aid of a full music typesetter, the complexity of the symbols is no issue, only size and feasibility (combination of symbols) are. The problem is: you seem to need a height of at least 9 characters per staff, because of notes on and between staff lines. Anyway, I'm very much interesed in good alternatives, maybe someone has something helpful to contribute; fine ascii example drawings can be of much use! Greetings, Jan. Michael Gula wrote: >Since there are software developers in this forum, I thought this >might be a good place to discuss this idea. > >Wouldn't it be nice if someone would develop a program that can >easily create understandable music notation in ASCII format? >Guitar tab folks make ASCII tab all the time, right? > >I've seen a lot of nice ASCII art. There must be a way to >approximate a treble clef, bass clef, a staff, notes, stems, etc. >using ASCII. I've been thinking about this, and have even made some attempts. We're developing a free music typesetter, GNU LilyPond (www.lilypond.org), which has a versatile backend. If we would have an `ascii musical character set', it should not be too hard to add ascii output. It seemed easier to imagine than to achieve, however, to create a workable character set. Here's a simple example of suggestive ascii notation, as I would like to have it typeset by LilyPond: What fingering do you use? Here's is mine: $ echo "< c-1 e-2 g4 >" | lilypond --simple .. yields.. 4 2 1 -|x---------- -|x---------- -|x---------- | | But the problem is, lots of information is missing here, and it would be too hard for a typsetting program to guess what can be omitted. If you want to be able to include all information in ascii, it gets very wide and big. That's why I gave up, until maybe an ascii artist helps me further. See: /\ | | +----|-|---------------------------------------+---------------- / | | | +----+----+----+----+ | +----+-- / |----|/--------------|----|----|----|----|-----|--------|----|-- / | /| | | | | | | | | | |--/-|----b----r-----|----|----|----|----|-----|--r-----|----|-- | | | | | | | | | | | | | |-|-(@)--------------|----|----|----|----|-----|--------|----|-- | | \ |/ | x| | x| | | | x| | +----|---------------|---------|---------|-----+--------|------- \ o/ x| x| x| x| | --- --- --- --- / | | | x| -| -x- -x- -x- \ | / | +---------------|------------------------------+---------------- | | /^\ | | | |--o |:--------|------------------------------|---|------------ | | / | | | | |---/----------o|------------------R-----------|---|------------ \ | / | | \ |-|-------b------------------------------------|--o|------------ \ | | +----------------------------------------------+---------------- I should have nicer versions of the clefs, somewhere, but I can't seem to find them now. But you should get the idea, it doesn't seem to be useful for anything but the shortest of fragments. -- Jan Nieuwenhuizen | GNU LilyPond - The music typesetter http://www.xs4all.nl/~jantien | http://www.lilypond.org ###### From: parallax@apk.net (Wesley Clifford) Newsgroups: alt.ascii-art Subject: Re: ASCII Music Notation? Date: Wed, 16 Feb 2000 15:08:11 GMT Organization: APK Net Lines: 144 Message-ID: <38aab66d.90518098@news.apk.net> References: <88e8l1$33h$1@xs4.xs4all.nl> NNTP-Posting-Host: as6-5.apk.net X-Trace: plonk.apk.net 950713642 9464 207.54.181.5 (16 Feb 2000 15:07:22 GMT) X-Complaints-To: abuse@apk.net NNTP-Posting-Date: 16 Feb 2000 15:07:22 GMT X-Newsreader: Forte Free Agent 1.21/32.243 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news.ip-plus.net!news.datacomm.ch!newscore.gigabell.net!newsfeed.tli.de!news-MUC.ecrc.net!newsfeed.icl.net!newspeer.clara.net!news.clara.net!Quza.UK.peer!uunet!ams.uu.net!nyc.uu.net!chi.uu.net!plonk.apk.net!news.apk.net!not-for-mail Xref: chonsp.franklin.ch alt.ascii-art:8622 (Crossposted to rec.music.compose, dispite the fact that I'm showing that I know almost nothing about music notation :) On 16 Feb 2000 14:28:01 +0100, jantien@xs4.xs4all.nl (Jan Nieuwenhuizen) wrote: >Hi! > >We were having a small discussion going in rec.music.compose on the >subject of ascii representation of sheet music, but we seem to be >a bit wanting for ascii artist (see below). Maybe there are music >enthousiasts here? I'll take a whack at this. It's an interesting problem. I don't know much about music notation, though, so my ideas may not be worth all that much. >It's been suggested that the drawings below are too elaborate: I agree. You can save a lot of space with some thought. > This tries to do too much. I wouldn't expect nice clef signs in > ASCII notation. Just a *representation* of clefs; merely putting > "g clef" in front of the staff would be fine with me. The > important thing is that the pitches and durations are > understandable. > >but I don't think that's the case because the clefs are not the point. >Incidentally: `g clef' is just as wide as the elaborate symbol is, so >that doesn't really help. However, 'g clef' is much easier to write, even for a program. And, it is much easier to read than a blocky ascii picture. You can also write: g c l e f And only take up one line. >Anyway, I'm very much interesed in good alternatives, maybe someone >has something helpful to contribute; fine ascii example drawings can >be of much use! OK, from what I remember, we have whole notes, half notes, quarter notes, eighth notes, and rests of all of those. Plus, I've seen big arcs on the page (Whatever those are for) and sometimes notes are grouped together via lines, single, double, (triple?). And sometimes the lines are thick, sometimes thin. Something else tells me that sometimes you can have a note with a little dot next to it, which means 'an extra eighth' or 'an extra sixteenth' or somesuch. Soooooo.... Here's some ideas. Every note should fit on 1 row, and we should try to keep most things down to 3 columns at most. Whole note: (*) Half Note: ( ) Quarter Note: (*) | | | Eighth Note: ( ) | | | Of course, if my coloring or whatnot is off, change it to suit real music notation :) What next? Rests? I've always seen these as little black boxes above a line. I don't know how to distinguish between half, quarter, or whatnot, but here's my ideas: _ --*-- _ --~-- _ --^-- Just a thought. Now, to group these things together will be a bear. The I am going to assume the worst case scenario, which is that the thickness of the lines is important, and that there can be up to 3, all in different thicknesses. I'm going to hope a bit and say that if the lines are horizontal instead of slanted, everybody will still understand it. For the thick lines, we can use ###### because that looks thick. For the thin ones, ====== or ++++++. Basically, we need to determine between the thick lines, the thin lines, and the actual lines on the 'paper' we are drawing on. For the little dot, that's easy. Use a period. Now, those arcs. You can't do that without a LOT of trouble, especially in a program. I suggest something over the bar that looks somewhat like this: ______________________ / \ Can't think of another way. Lastly, the vertical lines on the bar. IIRC, there are thin ones and, at the ends, thick ones. We can't use | because that's in the notes, so I suggest ! or I, perhaps + or 1, whatever looks best. I personally prefer +. For the thick ones, just use 2 +'s. So, let's put that all together: ________ / \ ++--------|######|-----------------+ ++ g |======| + ++--------|------|######|----------+ ++ | |======| _ + ++-c------|------|------|----*-----+ ++ l (*). | | + ++-e-----------(*).-----|----------+ ++ f ( ) + ++---------------------------------+ I don't pretend that this is anything that could be played by anyone. It's just my all-encompassing example. A programmer may need to raise stuff above the 5 normal lines, to account for high notes. Dunno. Anyway, there's the spewings of someone who not only likes Ascii art, but also thinks about the limitations of outputting stuff from a program. --Wesley The only stupid question is the unasked question. And that's a good thing, because I hate stupid questions!