[ Musicsheets ] - A new Release

Hello folks,

I’ve released version v0.0.1 of my revamped Musicsheets plugin
You can find the Demo page at Musicsheets — musical notation powered by abcjs
Now one can playback the music using various instruments

I hope you like this plugin and consider giving it a star on GitHub :slightly_smiling_face:

If you have ideas what could be added that would make the plugin even more useful, just leave me a comment

Best wishes
Simon

6 Likes

Starred :wink:

@BurningTreeC — if you’d like a dedicated category for your plug-in, happy to set that for you.

1 Like

Thanks @boris , I don’t know if that’s necessary though … or do you mean a category I can add to my post - like “music” ? That’d be great!

You can add any tags you like to your post by yourself, like “music” and “musicsheets”.

Only if you’re the right trust level and I upgraded yours. I’ve now changed this setting so ”basic” users can create new tags as well as use existing ones.

@BurningTreeC before I found that setting I also upgraded your member level, so you should be good to go.

Installed, took a spin, and starred!

(It took me a few minutes to figure out how to get tunes to display in bass clef (K:G bass), with notes in the correct octave (use comma after note name to go low). Learning bass guitar is my current “zen-beginner-mind” adventure. :wink: )

1 Like

I just got started with this yesterday. I am looking at setting up a macro so that I do not have to type or copy in the code to enable the widget each time.

Also, I found that the code can refer to the tiddler that contains it, so I do not need two tiddlers for each tune.

For example, if this post was a tiddler titled “Post,” I could just do this:

<$musicsheet tiddler=“Post” midi=“yes” autoplay=“no” soundfont=“tuba”/>

X: 1
T: Post
M: 2/4
L: 1/8
R: reel
K: Cmin
[|zGGG|HE2|]

Is there an easier way to self refer to a tiddler such as :

<$musicsheet tiddler="/" midi=“yes” autoplay=“no” soundfont=“tuba”/>

Thanks!

Awesome, I’m a Steelstring Guitar player :slightly_smiling_face:

Hi @Psalm_104_33_KJV , the easiest way to self-refer to a tiddler would be

<$musicsheet tiddler=<<currentTiddler>> midi="yes" sound="your_sound"/>

But I doubt that that works.
What I could try is creating a ViewTemplate that renders the notation on top of the current tiddler if its type is - say application/x-tiddler-abcjs

As far as I know @pmario knows about meme-type naming , maybe he can give me a hint about the correct type nomenclature

I see @Psalm_104_33_KJV use case as an instance of a more generic issue: if we had a text parameter instead of or in addition to the tiddler parameter, we could easily feed it with whatever value of a variable or a filter, like text=<<myABCfragment>> or text={{my abc tiddler}} (which could easily replace the tiddler parameter), etc.

Welcome @xcazin, that’s a good idea!
I’ll think about it a bit and will implement it

1 Like

I’ve released v0.0.2 that includes a breaking change:

the tiddler attribute is replaced by the text attribute
Text in abc notation can now directly passed to the <$musicsheet/> widget which makes it easier to keep everything in one tiddler

Haha, now I have to reinstall and reformat the two tiddlers I have created so far.

Would you mind posting an example of how notation would be passed with your new change?

@Psalm_104_33_KJV , just to make sure that you installed the latest version of the plugin,

did you get it from here: Musicsheets — musical notation powered by abcjs ?

The notation now would look like this:

Transclusion of another tiddler:

<$musicsheet text={{another tiddler}} midi="yes" sound="acoustic_grand_piano"/>

Text directly:

<$musicsheet text="""X: 24
T:Clouds Thicken
C:Paul Rosen
S:Copyright 2005, Paul Rosen
M:6/8
L:1/8
Q:3/8=116
R:Creepy Jig
K:Em
|:"Em"EEE E2G|"C7"_B2A G2F|"Em"EEE E2G|\
"C7"_B2A "B7"=B3|"Em"EEE E2G|
"C7"_B2A G2F|"Em"GFE "D (Bm7)"F2D\
|1"Em"E3-E3:|2"Em"E3-E2B|:"Em"e2e gfe|
"G"g2ab3|"Em"gfeg2e|"D"fedB2A|"Em"e2e gfe|\
"G"g2ab3|"Em"gfe"D"f2d|"Em"e3-e3:|""" midi="yes" sound="acoustic_grand_piano"/>

abc notation passed as a macro (maybe the recommended way):

\define myabc()
notation comes here
\end
<$musicsheet text=<<myabc>> midi="yes" sound="acoustic_grand_piano"/>

I got it from here:
http://musicsheets.tiddlyspot.com/#%24%3A%2Fplugins%2Ftiddlywiki%2Fmusic-score

To be honest with you, I have no idea how to uninstall the previous version, or if I even need to. I would like to learn, however. I hope I can add something to this community, since I can tell that this is going to be a big help in my work.

Ok, you’ll first need to uninstall the plugin.

In the Sidebar on the right go to “More” and then “Plugins”.
Click on the link “Music Sheets and Midi”
Delete the tiddler that opens, then save and reload your wiki

Afterwards, go to Musicsheets — musical notation powered by abcjs
Drag the link shown in the “Installation” tiddler to your wiki
Then save your wiki and reload it

Edit: Also go to “More” → “System” and have a look if there are any tiddlers left over that start with $:/plugins/tiddlywiki/musicscore/ … if there are any, delete them

Got it working. I used the “text directly” method. Thank you. I will continue to use this and let you know if I think of any new features.

I did notice that the GUI buttons on the player display correctly now. I also noticed that the download midi option is gone, which I would like available. I plan to create a bunch of melodic fragments and then use them to compose. Downloading the midi would be useful.

Wow, the macro method is very nice

Glad to hear you got it working!

I’m working on the download button, I hope it’s still possible