<html><head>
<style id="css_styles">
blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
li[style='text-align: center;'], li[style='text-align: right;'] { list-style-position: inside;}
body { font-family: Calibri; font-size: 12pt; }
</style>
</head>
<body>Hi,<br />I am a newbie struggling to get started. I can see a lot of potential in using Geany to process my ".abc" music files so I am sure once I get going it will be very useful.<br />I am finding the documentation a little frustrating, I spend all my time following links to different parts of the documentation file without ever finding any good examples. What I need right now is a good tutorial on how to get syntax highlighting working on my new filedef.<br /><br />Here is an example ".abc" file:<br /><br /> X:1<br /> T:24 Carat<br /> C:Hilary Herbert<br /> N:3Cpl set<br /> %%writefields Q 1<br /> L:1/4<br /> M:2/2<br /> Q:1/2=100<br /> K:F<br /> V:1<br /> "^A" |: "F"FA/G/ "/E"FC | "/D"FA "/C"c2 | "C"cc/d/ "C7"cB | "F/F"A2 "C"G2 | "F/F"A"/G"B "/A"cf |<br /> "C/Bb"ed "/C"c2 | "F/F"f>F "/F"A"/A"F | "C"G2 "F/F"F2"^B" :||: "F"cc/c/ cF | "C"BA GC | "F"cc/c/ cF |<br /> "F"A2 "C"G2 | "F/C"FF/F/ F"/F"A | cA FC | "/F"FF/A/ "/A"c"/F"B/A/ | "C"G2 "F"F2 :|<br /> V:2<br /> |: "F"A,C "/E"A,2 | "/D"A,C "/C"F2 | "C"EE/F/ "C7"E2 | "F/F"FC "C"EC | "F/F"A"/G"G "/A"F2 | "C/Bb"GF "/C"E2 | "F/F"F>A, "/F"C"/A"A, | "C"EC "F/F"F2 :|<br /> |: "F"AC AC | "C"EC C2 | "F"AC AC | "F"FC "C"E2 | "F/C"A,A,/A,/A,C | "/F"FC "/A"C2 | "/F"A,A,/C/ "/A"F"/F"C | "C"EC "F"F2 :|<br /><br /> X:2<br /> T:Abbeygate<br /> T:tune: Miss Sulyard's Delight<br /> N:Play 16 bars AB, original tune had repeats<br /> C:Ron Coxall<br /> L:1/8<br /> M:4/4<br /> Q:1/4=100<br /> K:Bb<br /> V:1<br /> "^A""Bb"f2 e/d/c/B/ "F"ABcd | "F7"ecBA "Bb7"Bd F>D | "Eb"EGBd egbg | "Bb"fd"C7"cB "F"AcF2 |<br /> "Bb"f2 e/d/c/B/ "F"ABcd | "F7"ecBA "Bb7"Bd F>D | "Eb"EGBd egbg | "Bb"fd"F7"eA [Ec]2"Bb"[DB]2 ||<br /> "^B""F7".FAcA "Bb".Bdfd | "F7"e2d/e/f/e/ "Bb"dfdB | "Cm"Gc=Bc "Eb"e>df>e | "Cm"gec"C7"B "F"AcAF |<br /> "F7".FAcA "Bb".Bdfd | "F7"e2d/e/f/e/ "Bb"dfdB | "Eb"gabg "Bb"fd"C7"ec | "Bb"Bd"F"FA "F7"[Ec]2"Bb"[DB]2 |]<br /> V:2<br /> B2FD FGAB | cAF2 D2B,2 | G,2E2 G2E2 | D2E2 F2A,2 | B,2FD FGAB | cAF2 D2B,2 | G,2E2 G2E2 | D2C2 A,2B,2 ||<br /> .A,2A,2 .B,2B,2 | C2F2 B3F | E2C2 G2E2 | C3=E F3A, | .A,2A,2 .B,2B,2 | C2F2 B3F | E2G2 B2G2 | DB,A,C A,2B,2 |]<br /><br /> X:3<br /> T:Aberdeen<br /> T:or The De'il's Dead<br /> N:Original tune is just A&B parts, played 3x(AABB AABB)<br /> N:C&D added by D Bearon 2019 - now play 3x(ABABCCDD)<br /> L:1/4<br /> %writefields Q<br /> %%chords<br /> |:F|Fx2 Bbx2|Fx2 Bbx2|C|F| |<br /> Bbx2 Fx2|Gm||F| | |<br /> Bbx2 Cx2|F| |Bbx2 Fx2|Gmx2 Gmx2:|<br /> %%endchords<br /> M:2/2<br /> Q:1/2=110<br /> K:F<br /> V:1<br /> |: "^A"F>G Ac | f2 ed | f2 ed | e/f/g GA | F>G Ac | f>g ag |<br /> fd cA | G2 d2 || "^B"F>G AB | cF A/B/c/A/ | cF A/B/c/A/ |<br /> d/c/B/A/ GA | F>G Ac | f>g ag | fd cA | G2 "Dm"d2 :|<br /> V:2<br /> |: A,>C F2 | A2 B2 | A2 B2 | cE2 C | A,>C F2 | A>B c2 |<br /> B2 AF | B,D B,G, || A,>C FC | A,2 F2 | A,2F2 |<br /> FD EC | A,>C FA | A>G F2 | B2 AF | D4 :|<br /> %%newpage<br /> %%chords<br /> |:Gm| | |Dm|Gm|<br /> Gm:|Dm|Gm|:Dm|Gm|]<br /> Dm| |C|Gx2 Cx2|Dm|Dmx2 Gmx2|<br /> Dmx2 A7x2|Dmx2 A7x2:|Dmx2 Cx2|Bbx2 A7x2|Gmx2 Fx2|Gm|]<br /> %%endchords<br /> V:1<br /> |: "^C"G>A Bd | gG B/c/d | gG B/c/d | A/B/c BA | G>A Bd |<br /> g>a bg |1 fd cA | G2 G2 :|2 fd ba | g2 g2 |]<br /> |: "^D"d>e fg | ad f/g/a/f/ | gc e/f/g/e/ | g/f/e/d/ cg |1 d>e fg | ad b2 |<br /> a>g fe | d2 a2 :|2 d>e fg | ab ag | fd cA | G2 "(Bb)"d2 |]<br /> V:2<br /> |: DG, DG, | DG, DG, | DG, DG, | DA, D2 | DG, DG, |<br /> DG, DG, |1 [A,D]3 [A,D] |[G,D]2 [G,D]2 :|2 [A,D]3 [A,D] |[G,D]2 [G,D]2 |]<br /> |: AD AD | F2 AD | EG cG | =BG c2 |1 AD AD | F2 G2 |<br /> F2 GA | F2 EG :|2 FF EE | DD ^CC | G,B, A,C | B,2 B,2 |]<br /><br /><br />As can be seen it has a very simple structure. Syntax highlighting would consist of highlighting comment lines (beginning with a single %) - colour A say, start-of-tune lines (X: lines) - colour B, Title (T: lines) - colour C, directive lines (beginning %%) - colour D. Then key words highlighted (M: K: etc) That is about it really, except I would really like to see all my T:'s in the symbols tab so that I can quickly go to those tunes (I guess that is a separate issue of tags that I have not yet delved into)<br /><br />Here is what I have done so far to make a start:<br />1) Created an entry in my filetype_extensions file to add:<br />[Extensions]<br />ABC=*.abc;<br /><br />2) Created a filetypes.ABC.conf file as follows (removing preset comment lines)<br />[styling]<br />comment=#c00;;;true<br /><br />[keywords]<br />primary=X: T: M: K: C: L: Q: K: V: P:<br />secondary=N S B %%chords endchords staves<br /><br />[settings]<br />extension=abc<br />lexer_filetype=ABC<br />comment_single=%<br />comment_use_indent=false<br />mime_type=text/vnd.abc<br /><br />This has no effect as it stands, though it is clearly being read because if I change BOTH [styling] to [styling=C] and "lexer_filetype=ABC" "lexer_filetype=C" then I get some highlighting, though obviously not what I am looking for. It is, however, interesting to note that it then highlights "N", "B", "endchords" but NOT "%%chords" or "X:", "T:" etc - which makes me think that ":" and "%" may need special treatment - escaping in some way.<br /><br />Clearly I am missing something that I am not doing correctly to get the syntax highlighting to work.<br />Then there is the question of where to go for the symbols.<br /><br />A noddy guide to getting started, with examples would be very useful. Thanks in advance.<br /><br />NornB<br />
</body></html>