Fretboard plugin
Hello everyone!
A few days ago I have created a plugin that tries to implement a simple guitar fretboard tool for tablature input and visualization, similarly to the existing Piano keyboard tool or similar fretboard tools in other score editors. The result looks approximately like this (see the full screenshot here):
This plugin currently supports both visualizing the currently selected chord on the fretboard and doing note input by adding new chords (in Note Input mode) or editing existing chords in the tablature.
The project has largely been started to explore possibilities the of plugins framework in its current (as per 3.3 RC version) state and to figure out whether this framework is suitable to extend MuseScore user interface in some reasonable way. The answer seems to be mostly "yes", although the plugins framework lacks an access to some aspects of information about a score (like staff/instrument properties) and means to trigger most of GUI events (like viewport positioning and doing chords playback without entering Play mode).
So I hope this project will be useful both for users working on tablature scores and for other plugin developers trying to create something similar. Any feedback, both on this plugin and on similar GUI plugins development in general, would be greatly appreciated!
Here is the link to the plugin:
https://musescore.org/en/project/fretboard
Source code:
https://github.com/dmitrio95/fretboard-plugin
Comments
To forward this comment : https://musescore.org/en/node/68406#comment-949750
IMHO, tooltips (or labels, sorry, I don't know how you define the difference) are missing currently. And I think the example of Guitar Pro (logically, it got the approval of the guitarists!) is the right approach.
That is to say: when the mouse hovers over a fret, the dot/note is drawn in light yellow/transparent - it provides you with the essential information -, before being validated by the click (and a brighter yellow).
FIRST
THEN
Also note that the name of the note (and its octave) is reported to the left of the fretboard. I don't know if this is also possible with the plugin - useful, but a bit less of a priority (for me).
In reply to To forward this comment :… by cadiz1
Maybe a small explanation you might benefit from:
A tooltip is a text that pops-up when "hoovering" over an object with your mouse.
Labels will always be visible (sometimes maybe they can be hidden by setting a selection checkbox, or similar method)....
Hi dmitrio
BIG Surprise !! THANK YOU SO MUCH :)
Working so well as far as I used.
One thing I was aware of ;
Translated word “frets” width is not wide enough to show in my language (Japanese).
Make it little wider ?
Thank you!
Fantastic plugin. Thanks!
Currently, clicking on the fretboard to add a note gives audible feedback only for the first note.
Adding any subsequent notes on the same measure has no audible feedback.
In fact, as soon as there's one note in a measure, there won't be audible feedback when clicking any fret on the fretboard.
Fantastic plugin dmitrio.
I didn't know it was in active development. It is so good it inspired me to add some more features, like chord detection, interval names, notes being played by each finger and support for rootless chords and non played notes. Also, fixed some issues with the tunning detection and have some more ideas like laying out scales, chord extensions and modes.
Let me know if you are interested in the code and I can share it with you.
In reply to Fantastic plugin dmitrio. I… by [DELETED] 33496588
Thanks for writing this. One suggestion would be to have a mode where it auto-advances the input cursor. GuitarPro does this if you enter the note with a right click but you could have a radio button or something too...
Thank you all for your feedback!
I have just uploaded a small update to this plugin. It mainly adds an ability to play a chord when adding a note to it so editing a score with a fretboard should no longer be in silence (this feature will work only since 3.3.4 version of MuseScore). Also there are some minor styling changes one of which should resolve the issue with Japanese translation reported by Kazuma Yamamoto. A full list of changes is available in the changelog.
The updated version is available on the project page (or with this direct link to the updated plugin).
I would also like to add labels for notes on the fretboard like @cadiz1 suggested. This has been implemented as a part of a pull request by gsc-dev (I guess, the author of this comment above), so I hope to be able to integrate at least some of the proposed changes soon.
In reply to Thank you all for your… by dmitrio95
Dmitrio
Japanese Translation looks perfect now..!!
And notes are all sounding in Chord inputting. amazing :)
Thank you so much for this updating, look forward labeling note's name for next updating!!
In reply to Dmitrio Japanese Translation… by kazuma yamamoto
"Thank you so much for this updating, look forward labeling note's name for next updating!! "
+1 !
In reply to "* Thank you so much for… by cadiz1
@Dmitrio
Thanks again and congratulations for this fretboard plugin. These "new" plugins are really fine and bring an undeniable added value to the program.
This makes me think again about this feature request (#153016: add mountain dulcimer incl. a tab preset) that has remained a dead letter (perhaps due to the difficulty of implementing it in the current code?), despite its interest and the many requests.
So, do you think it could be a good candidate for another specific plugin?
EDIT: for the record, there were for version 2, a few plugins related to this question, but which were really very limited and inconvenient. Ie: https://musescore.org/en/project/dulcimer-tab
and https://musescore.org/en/project/daa-strum-stick
and https://musescore.org/en/project/seagull-merlin-checknotes
In reply to @Dmitrio Thanks again and… by cadiz1
@cadiz1
Off topic, but could you please look at this TAB’s fingering issue when you have spare time?
https://musescore.org/en/node/296081
I really appreciate if you give me some comments :)
Thank you very much !
In reply to @Dmitrio Thanks again and… by cadiz1
@cadiz1, that is a good question. Right now MuseScore strictly binds note pitch to tablature markings according to chromatic fretting law, and this is not something that can be overridden in plugins. So without changing MuseScore itself (and implementing a fully working support for diatonic fretting would indeed be not a trivial task) plugins can only emulate some of the desired properties of diatonic tablature. I can think of two options how to achieve something similar:
1) Draw tablature manually based on a pitched staff content. This seems to be something that is done by the plugins you listed above.
2) Use the existing tablature facility and change notes tuning to obtain the desired sound. Some tweaks could also be used to visually emulate unusual tablature markings like "6+" for dulcimer. This method has certain drawbacks (for example, notes would internally have wrong pitches so linkes staves would work incorrectly) but this would allow to make use of most of the existing features for tablature visual layout.
Both these approaches could probably be implemented in a non-interactive mode with plugins in MuseScore 2 as well. The new plugins possibilities allow to implement interactive editing of such a custom tablature, so I believe some version of such plugin that would be more convenient to use could indeed be implemented. The second approach (based on the existing tablature) should probably be not really difficult to implement within the Fretboard plugin so, as an experiment, I could try to add a support for diatonic fretting to this plugin. If you (or whoever would like to work with diatonically fretted instruments in MuseScore) find it a usable solution we could think on how to expand its possibilities further.
In reply to @cadiz1, that is a good… by dmitrio95
Thank you Dmitrio for looking into this question.
I must admit that I do not understand everything about the difference (and their result) between the two approaches.
Two simple thoughts:
The fact that it would not work with linked staves does not seem to me to be a crippling handicap. Would copying and pasting it into another staff work, with the right display of course?
Then, it seems to me that it would be expected, by default, that the tablature would only contain three lines/strings? So rather than a guitar fretboard that should be reduced? (sorry, it's not very clear to me)
In any case, the really important and crucial point is to make sure that the entry of this or that fret (even the special fret 6+) corresponds to the right sound, and to the right display of the notes in standard notation.
And vice versa (if possible?): this or that standard note should correspond to the right fret and sound on this type of instrument.
In reply to Thank you Dmitrio for… by cadiz1
With the second method copying and pasting to a normal staff also wouldn't work as it would be impossible currently to convince MuseScore to assign pitches to notes in a tablature not following a chromatic fretting law. So it looks like it is better currently to develop such a plugin based on the existing MuseScore 2 plugins which draw the needed tablature notation themselves. Anyway, a possibility to edit such a tablature in an interactive way rather than having to manually run a plugin to convert the existing notation to a tablature should make it more convenient to use.
In reply to With the second method… by dmitrio95
"a possibility to edit such a tablature in an interactive way rather than having to manually run a plugin"
Really encouraging and sounds good. Thank you.
Another small update: I have just uploaded a version with note labels and semi-transparent note markers on fret hovering. I am not sure about their visual appearance, so please let me know if it would be better to change it or make it customizable. Anyway, they should be already useful as they are.
In reply to Another small update: I have… by dmitrio95
dmitrio
wooow… it’s super ! Thank you so much for labeling notes. very very useful :D
Two things I’m aware of ( well, I don’t mind, though )
>Accidental note’s names are extending out beyond a red circle
>Labeling color is similar to fretboard
But again, Thank you so much for labeling notes!
In reply to dmitrio wooow… it’s super !… by kazuma yamamoto
Wow, too! Thanks Dmitri. Really helpful, and as expected. Also, I noticed the same color, or lack of contrast between the fingerboard itself and the background of the labeling notes. Since we have to go out and come up with some ideas, maybe a faded/washed pink? (but I haven't tested it, so there's no certainty about what it will actually look like).) So much the better if there are other proposals.
In reply to Another small update: I have… by dmitrio95
Very grateful for keeping this wonderul plugin updated, Dmitiro! Thank you!
In reply to Very grateful of keeping… by Marc Descoteaux
Well, I just had to edit line 316 of the plugin (to change the color, 'pink' instead of 'red'), and my goodness, the result suits me! The contrast is better that red. If it suits others, so much the better. But you can try other variations.
I share: Fretboard.WashedPinkLabels.qml
In reply to Well, I just had to edit… by cadiz1
Thanks! Contrast is good in pink. I just have to check how to edit the plugin and find how to play around also with the color of the fretboard.
In reply to Well, I just had to edit… by cadiz1
Actually if needed I could make the color customizable so users could define the color of their own preference. Still I also like this scheme with pink color so if it (or maybe some other similar color?) suits everyone else I could just make the change to the "main" version of plugin.
In reply to Actually if needed I could… by dmitrio95
I had tested this plugin, but not yet in a multi-voice context (which is almost the majority of my use cases)
Unfortunately, there is a problem with the voice change.
For example, pictures below: I'm trying, in voice 4 (but it's the same thing with voice 2, etc.), to enter a C half note on the first beat. When I click this C on fretboard (fifth string, third fret), I get a failure and the warning "String-above command not valid in current state".
Moreover, it is very difficult, and unexpected, to get rid of this dialog. From what I observe, I have to click ten times (why ten, or eleven?) on the closing cross so that the window finally disappears. And surprise, at that moment, the C is entered?!
EDIT: And for the pink labeling, I observe that we are very close to the color default of voice 4 in the program. So, somehow, it's coherent.
In reply to I had tested this plugin,… by cadiz1
Brings up the point of needing to improve that dialog, to at least enclose that command in quotes, "Commande 'string-above' non valide dans l'état actuel"
In reply to I had tested this plugin,… by cadiz1
I tested it primarily on tablature staves, this is a side effect of changes which were needed for them to work properly with multiple voices. However in 3.5 version it should work correctly also with normal staves: the recently merged PR 5657, among other changes, allows to avoid repeatedly using
string-above
/string-below
commands to adjust the cursor's string number on a tablature staff.In reply to I tested it primarily on… by dmitrio95
Thanks Dmitri, that's better. But there's still a little more to do. Watch this animation. In Voice 2 (and 3/4), when you change to next measure, the last note is replayed (heard again) and the first note of the next measure is added to the previous note :(
For example: C.D.E.F. (F played again when you press right arrow - on the animation I used the arrows of the virtual fretboard, just to show better the process), then the G, against all odds, is entered above the F. And then the navigation is kind of stuck.
In reply to Thanks Dmitrio), that's… by cadiz1
I see, that indeed is an issue. I'll try to correct that.
In reply to I tested it primarily on… by dmitrio95
@dmitrio95, Would it be too much to reduce it to four strings for the violin?
In reply to @dmitrio95, Would it be too… by Shoichi
You can choose any number of strings on the fretboard. Or do you mean doing that automatically?
In reply to You can choose any number of… by dmitrio95
I'll try the other pc (this 32 bit one has 3.2.3). I had reported the plugin to a user looking for something similar (she would like to associate fingering to the corresponding fretboard). Manual adjustment should be sufficient. Thank you.
what's the state of this? Adjusting fret positions in tablature is horrible in musescore. This looks awesome.
In reply to what's the state of this?… by Jack A. Zucker
so i loaded this and with 3.5 it does not auto advance to the next rhythmic position automatically. I have to keep hitting the right arrow key after each note. It also randomly changes the rhythmic values back to a whole note. Any thoughts on what I'm doing wrong?
In reply to what's the state of this?… by Jack A. Zucker
"Adjusting fret positions in tablature is horrible in musescore. "
Before saying that it's just horrible in MuseScore, maybe we should first understand that it's different from Finale, and that it takes a little time to learn how it works with MuseScore. In short, don't try to find in MuseScore what you were doing with Finale, it's a waste of time! And luckily. Nevertheless, if the difficulties continue, open a new thread (not here, in the Plugins section, but in the general discussion section), and describe those difficulties - with a short but essential sample score, please.
In reply to . by cadiz1
No, it's a matter of convenience because having to hit a modifier key to move the note to a different string without modifying the pitch is not just different. It's a destructive edit as the default. The Ux should be defined in such a way that the default behavior without using a modifier is non-destructive to the note's value. It's all too easy with musescore to accidentally change the note value. It's a backwards Ux. Hitting the up and down arrow's default action should be to keep the note value and change the string. The modifier key should be required only when changing the pitch. That's pretty common-sense Ux.
In reply to No, it's a matter of… by Jack A. Zucker
Please, as said above, develop your thinking on another new thread (and sample score), not here on the Plugins section.
In reply to what's the state of this?… by Jack A. Zucker
"it does not auto advance to the next rhythmic position automatically. I have to keep hitting the right arrow key after each note."
Well, yes, it's the principle. As far as I can see it's the same thing with the "Fretboard" tool of Guitar pro.
It allows you to stay on the spot to enter chords, simply. And to continue, you use the direction arrows, nothing special, and as expected.
"It also randomly changes the rhythmic values back to a whole note"
You make something wrong, I don't know what for the moment. The program can't itself change a note value without any user intervention whatsoever.
In reply to . by cadiz1
regarding the first part, it shouldn't be the default to stay on the same beat position or there should be a simple checkbox. And the 2nd, I can repeat it infinitely and easily. It's 100% repeatable with 3.5.
1) Create a new guitar+tablature diagram
2) Open fretboard
3) Set note value to 8th
4) NOTE - At this point, the notation will show (2) 8th rests a 1/4 rest and whole rests the rest of the document
So if you start entering notes followed by right arrow with fretboard diagram you will get 2 8ths a 1/4 a half and then the rest of the document whole notes.
I notice that it works better in that regard with 3.4.2.
But also, if you are right handed, it's extremely awkward to click notes with the mouse and hit the right arrow to advance. They definitely need an auto-advance checkbox
In reply to regarding the first part, it… by Jack A. Zucker
"4) NOTE - At this point, the notation will show (2) 8th rests a 1/4 rest and whole rests the rest of the document"
Yeah, what about it? Image below. This is how MuseScore works (unless I misunderstood something in your reasoning). But in any case, don't expect to receive the same result and display as Finale, it's definitely a dead end. Forget Finale (if possible!), and get to know MuseScore - it's another program, that's all -, step by step.
In reply to "4) NOTE - At this point,… by cadiz1
the problem is that the in 3.5 the fretboard reflects the rhythmic values of the rests so if you select 8th notes and then press a string/fret combination followed by right arrow a number of times, you get this:
In reply to regarding the first part, it… by Jack A. Zucker
> So if you start entering notes followed by right arrow with fretboard diagram you will get 2 8ths a 1/4 a half and then the rest of the document whole notes.
To clarify a possible confusion, if you enter a note input mode before starting entering notes (with N key or the corresponding toolbar button at its left side) all durations of the entered notes will be 1/8, as expected. In MuseScore a note input mode is supposed to be used to enter notes (although it is triggered automatically on some actions), and it indeed acts differently from normal mode which is more supposed to do other kinds of actions including editing already existing notes and adding or editing other musical or text elements. That is why normal mode keeps duration of the note or rest being currently selected when you move selection across the score.
Fretboard plugin doesn't interfere with this logic at all and simply uses the duration which MuseScore considers being more relevant in this context, according to the latest user actions, score state, note input state presence etc.
In reply to > So if you start entering… by dmitrio95
thanks, that helps. If you had an auto-advance option it would make the fretboard entry more useful to many. You might consider adding some comments to the readme.md file
In reply to thanks, that helps. If you… by Jack A. Zucker
p.s. notion has auto-advance on their fretboard input Ux and it's won over quite a few people who used to use finale, sibelius or guitar pro
In reply to p.s. notion has auto-advance… by Jack A. Zucker
Auto advance would hinder entering chords.
Actually Guitar Pro does not have auto advance on right left mouse click. Only on right mouse click.
In reply to Auto advance would hinder… by Marc Descoteaux
A similar issue came up with regard to ordinary keyboard entry of tablature also, FWIW, and it was the general consensus it was best not to advance. This is in contrast to standard notation, but I think the rationale was that on standard staves, building a chord is easy through simple click or using Shift+letter, but on tab staves its more of a process of selecting string and fret independently, and having to cursor back every time would really be a hardship.
In reply to A similar issue came up with… by Marc Sabatella
this is another issue of usability that makes something like notion vastly superior to musescore. In notion you can quickly enter tablature using the fretboard and one hand without having to use a cross hand technique to advance to the next note with your right hand on the mouse and your left hand crossing over to the right arrow key. Finale works the same way. Again, if you want people to make the switch you should be looking not at consistency with yourself but what the other software does.
In reply to this is another issue of… by Jack A. Zucker
Please read what I wrote again. We did make the conscious choice to break consistency here. The issue is simply that one workflow favors people who mostly write single note music, the other favors people who write more complex chordal / multi-voice music. Our workflow favors the chordal. This was, again, the consensus among many people over the course of many months of development and trials. So while Notion might be "vastly superior" for single-line music by this measure, MuseScore would by the same measure be preferable by the exact same margin for chordal music.
Realistically I could imagine a preference or toolbar button controlling this. Many people would find this useful in standard staves as well, actually. Even though building a chord is easy enough in most cases even with the advance, if the advance takes you to the next system or page, the advance make mouse entry more difficult (so it's mouse users who typically request this).
In reply to Please read what I wrote… by Marc Sabatella
"Realistically I could imagine a preference or toolbar button controlling this."
Yep. It would be really nice. The best of the worlds... :)
(rather toolbar button here, or key as for Shift in standard input)
For now nevertheless, this plugin, quite new, remains a bit buggy. Navigation is actually stucked when changing voices. That is more that problematic. Dmitri is aware of that, so all hopes are possible. :)
In reply to Please read what I wrote… by Marc Sabatella
"Realistically I could imagine a preference or toolbar button controlling this."
Yep. It would be really nice. The best of the worlds... :)
(rather toolbar button here, or a key as for Shift in standard input)
For now nevertheless, this plugin, quite new, remains a bit buggy. Navigation is actually stucked when changing voices. That is more that problematic. Dmitri is aware of that, so all hopes are allowed. :)
Thank you very much for this.
In reply to Thank you very much for this. by elerouxx
Will this plugin work if you just want to enter notes on the staff and not in tab?
Thank you,
yetoone
In reply to Will this plugin work if you… by yetoone
Yes, but for what purpose?
The plugin is precisely intended, first, to enter frets number/notes via the virtual fretboard, right ?
In reply to Yes, but for what purpose?… by cadiz1
"Yes, but for what purpose?
The plugin is precisely intended, first, to enter frets number/notes via the virtual fretboard, right ?"
I just need to use the fretboard to enter notes not fret/string information.
I see in an earlier thread that you modified the code to change the hover note color. I would like higher contrast. Would you be able to share instructions so that I could change the color to yellow?
Thank you,
yetoone
In reply to "Yes, but for what purpose?… by yetoone
"change the color to yellow?"
Just done for you : FretboardYellowLabels.qml
(like it)
EDIT: "green" replaced by "light green" (better in my opinion, like it too) : FretboardLightGreenLabels.qml
And a last one, Blue : FretboardLightBlueLabels.qml
Result in images:
In reply to "change the color to yellow?… by cadiz1
"Just done for you"
Thank you. Thank you. This will be easier on my eyes.
In reply to "Yes, but for what purpose?… by yetoone
If you want any other color, just open the file with a text editor and replace the text on line 363 (or search for markerComponent) with any color in this page: https://www.rapidtables.com/web/color/html-color-codes.html
EDIT: then save the file and close and reopen Musescore.
In reply to If you want any other color,… by ecstrema
This is good to know. I appreciate you taking time to post.
Thank you,
yetoone
Hi! I tried using this plugin, however its not functioning, tried opening the qml file in the plugin creater and got this comment
Running…
Creating component failed
line 2: plugin cannot be loaded for module "QtQuick.Controls": Cannot load library C:\Program Files\MuseScore 3\qml\QtQuick\Controls.2\qtquickcontrols2plugin.dll: The specified module could not be found.
Please help
In reply to Hi! I tried using this… by Rexsss
I guess that is Windows? Which version of MuseScore? Works fine for me with 3.5.2 AppImage on Linux.
Thanks dmitrio for sharing this clean piece of code! I'm trying to do something similar for a Diatonic Harmonica with this kind of keyboard: https://griffschrift-notation.de/
Your code will help a lot.
In reply to Thanks dmitrio for sharing… by nurfz
trying to install this plugin: plugin manager crashes on every occasion. MacOS 10.15.4
In reply to trying to install this… by fletch02_zoo
Are you using a current version of MuseScore (e.g., 3.6)? Works fine for me on Linux.
Aquí una Versión similar al Guitar Pro 7 ! Seria Genial que continúen con este proyecto, Gracias !
In reply to Aquí una Versión similar al… by Juan Pa Fernandez
Hello everyone,
I would like to know if anyone could adapt this plugin to a Bandoneon keyboard version.
It will be only Score to Keyboard (not vice-versa).
The user should choose a bar (or a smaller section of notes), choose In/out (opening/closing) and see them highlighted on the keyboard layout.
Treble clef -> Right hand
Bass clef -> left hand
The window can include both hands, It should allow chords and melody.
There are 71 notes total (both opening and closing).
I am attaching the keyboard layout, and example of the empty layouts.
If anyone could do it, it would be a huge contribution for bandoneon students...
Thanks!
In reply to Hello everyone, I would like… by bandoneontv
??
Maybe I missed something, but since when does a bandoneon (or accordion) have something to do with a guitar and its fingerboard?
There are accordion plugins available (https://musescore.org/en/plugins), I guess you'd have to look into that.
So, it's best not to go off topic (related to guitar fretboard) and continue conversation on your other identical thread : https://musescore.org/en/node/318711
In reply to ?? Maybe I missed something,… by cadiz1
It doesn't but the principle of what I am looking for is exactly the same: note to position on an image, just a keyboard instead of the fingerboard.
I didn't find any other plugin that does that until now, but thanks for the recommendation, I'll look into the thread.
Sorry for the interruption,
Best
In reply to Hello everyone, I would like… by bandoneontv
Hey, interesting. I think this plugin could be a good starting point for a Bandoneon plugin. But for me, it sounds like a lot of work, adjusting the button positions in QML. Maybe you find someone in the Bandoneon community who can program JavaScript and wants to tackle this.
A while ago, I considered adding the Bandoneon to https://griffschrift-notation.de/ (you can select different instruments there). But my system is limited to straight, non-overlapping rows of buttons. No curved rows. E.g. a layout for the chromatic button accordion is implemented but for Bandoneon I could only dislay the curved rows in a straight line.
In reply to Hey, interesting. I think… by nurfz
If straight rows would work and make sense, I can add the Bandoneon layout to the website and I could try to figure out a way that a plugin can communicate with the website. You would input notes/chords on the keyboard on the website and the notes would appear in MuseScore like in the Fretboard plugin.
Edit: I have an idea on how to display the curved rows on the website correctly: Just override the CSS rules! With a custom CSS file for custom instruments like Bandoneon.
In reply to If straight rows would work… by nurfz
Thanks!
I need it the other way around:
User chooses bar in musescore -> window with the highlighted keys opens
I don't neet keyboard input, only an output... and it would be best to have the bandoneon keyboard pictures - curved.
In reply to Thanks! I need it the other… by bandoneontv
Please, again, continue your conversation here : https://musescore.org/en/node/318711
Hi all, I have recently created an issue [https://musescore.org/en/node/325485] to add the function to display a guitar neck virtually, as it already exists for the piano.
Contrary to what this plugin does, I would only be interested in the part of being able to display the notes on the guitar, as was the case in the software I used (Guitar Pro). Where you had the possibility "to click" on the staff and display the whole bar, the current bar + the next bar, a chord, or a single note in the virtual guitar.
Would it be possible to achieve something like this with this plugin? If you look at the piano, this is already implemented
In reply to Hi all, I have recently… by rrchtr
The plugin already displays notes from the currently selected note and its chord. It doesn't display all notes in range selection but it would be not difficult to add this to the plugin if needed.
The only limitation is that the plugin is currently able to display notes on the fretboard only for tablature staves or for staves that have a linked tablature staff. Otherwise MuseScore doesn't maintain an information about a string and fret number of a note and thus the plugin isn't able to get this information from the plugin API. A plugin can try to guess strings and frets by itself but then it would need to do a lot of things that are already implemented in MuseScore — maintain strings tuning information, implement guessing best fret positions for the given set of notes etc. Therefore I think it would be better to add a linked tablature staff to your score if you don't have it already (see, for example, https://musescore.org/en/handbook/3/tablature#multiple-staves) and use the plugin with this configuration of staves.
In reply to The plugin already displays… by dmitrio95
> The plugin already displays notes from the currently selected note and its chord. It doesn't display all notes in range selection but it would be not difficult to add this to the plugin if needed.<
Thanks for the response dmitrio95. Ok, and would it be possible to get it to show the notes of the whole bar? Would it take a lot of changes? I would really appreciate it if you could try.
> Otherwise MuseScore doesn't maintain an information about a string and fret number of a note and thus the plugin isn't able to get this information from the plugin API. A plugin can try to guess strings and frets by itself but then it would need to do a lot of things that are already implemented in MuseScore — maintain strings tuning information, implement guessing best fret positions for the given set of notes etc.<
You have already achieved so much with this plugin, I understand that it would be a lot of work, and a duplication, if these functions are already available in Musescore. Therefore, I don't understand why they don't implement this virtual instrument among the Musescore core functions, since they have been able to do it with the piano and as you tell me, there are already those functions that would allow to implement it.
>Therefore I think it would be better to add a linked tablature staff to your score if you don't have it already (see, for example, https://musescore.org/en/handbook/3/tablature#multiple-staves) and use the plugin with this configuration of staves.<
Ok, now I have added a tablature and the notes are already shown in the virtual guitar, but I only use the classical scores, is there any option to keep the tablature linked but hidden, so that it doesn't make the page so big?
In reply to > The plugin already… by rrchtr
There's no "they" in open source, just an "us" and "I/me". If you need this, go and implement it. Make a pull request to get your implementation added.
In reply to There's no "they" in open… by Jojo-Schmitz
Sorry, I didn't mean to sound arrogant, English is not my native language, and surely the choice of the word "they" was not very accurate. Believe me, I am aware that this is an altruistic and unpaid work of the community, which I value very much, and that I did not want to offend.
I would be happy to contribute, but unfortunately, I have no knowledge of the programming languages used in the development of Musescore.
In reply to > The plugin already… by rrchtr
>Ok, and would it be possible to get it to show the notes of the whole bar?
Yes, it wouldn't be difficult to add. I'll take a look at it this week.
>is there any option to keep the tablature linked but hidden, so that it doesn't make the page so big?
For this I had an impression there should be a way to hide a staff but I wasn't able to find it now. I only managed to hide an entire instrument but not just one of the linked staves. So I am not sure whether this is possible to do.
In reply to >Ok, and would it be… by dmitrio95
dmitrio95 wrote > I only managed to hide an entire instrument but not just one of the linked staves. So I am not sure whether this is possible to do.
Unfortunately it's not currently possible (in MuseScore 3.6.2) to hide individual staves of an Instrument.
However the option of hiding the individual staves of an instrument has been requested, discussed,, endorsed many users, and viewed positively by one or more developers. and noted as likely feasible without much effort post MuseScore v4, as it would required a change in file format.)
In reply to dmitrio95 wrote > * I only… by scorster
I'm glad to know that there are more people interested in this feature. So far all I've managed to do is "hide" the tablature by making it very small, (scale it down, remove lines, etc.), it's not a very elegant solution, but so far, it's working quite well for me.
In reply to >Ok, and would it be… by dmitrio95
That sounds fantastic, I really appreciate your work. I also tried and could only hide a complete instrument, not a linked staff.
In reply to That sounds fantastic, I… by rrchtr
I have updated the plugin to display all selected notes in a range selection, similarly to what the piano keyboard tool does. So you can try this out with the latest plugin's version, it can be downloaded from this link.
In reply to I have updated the plugin to… by dmitrio95
I have already tested it and it works perfectly, thank you very much!
Halo..it is a good plugin and i have tried to use it, but when i press playback the notes on the fretboard don't move according to the score. How to fix it? Thank you
In reply to Halo..it is a good plugin… by jefkymusic
Currently plugins do not have an access to the current playback state, so unfortunately it is not possible to fix this in the current version of MuseScore. Synchronizing a playback state with plugins will require changes in MuseScore itself, in its plugin API.
Hi dimitrio95
Thank you for your plug-in. After many years break, I'm trying to refresh my sight reading skills on my classical guitar. I would ideally like to import a score and automatically view it on the fretboard so I know where the notes are, particularly as I move up to the higher frets. is this possible, or have I misunderstood the potential of Musescore and your plug-in?
In reply to Hi dimitrio95 thank you for… by ReadyMuse
Hello! Sorry, missed your comment. What do you mean by "automatically view it on the fretboard"? If you just want to see positions of all notes to know a range that is used within the score then you can select the entire score (for example, with Ctrl+A), and the fretboard will display positions of all selected notes. As I have mentioned here, this will only work if your score already contains tablature, otherwise you will need to add a linked tablature staff to the score.
Using Fretboard Plugin for the Linnstrument
Hello there,
thank you for this plugin.
As I revently bought a Linnstrument (https://www.rogerlinndesign.com/linnstrument) and I wonder if I can use this plugin to visualize a partition on this device.
You can see the default location of the natural notes on the musical staff here :
https://www.rogerlinndesign.com/support/support-linnstrument-chord-and-…
https://uploads-ssl.webflow.com/5ad24a891dee8925107423d0/5e694a584b9630…
https://uploads-ssl.webflow.com/5ad24a891dee8925107423d0/5e6962f23df8b0…
So, do you think it's possible to use Musescore + Fretboard-Plugin as a "visualizer" for Linnstrument. If yes, how to proceed ?
Regards
Phil.B
In reply to Using Fretboard Plugin for… by Phil.B
Hello!
This plugin is able to visualize and edit tablature scores, but it will probably not do anything useful without a tablature. So to visualize a Linnstrument with this plugin you would need to create a tablature for it. You can do it, for example, by creating a tablature score for guitar or a similar instrument and changing its settings the "Staff/Part properties" dialog. You would probably need to change two things:
1) the number of staff lines
2) number and tuning of strings (using the "Edit String Data" button in the same dialog)
Also you might want to change the sound of this instrument in Mixer. You can save the score then to use it as a template for new scores with this instrument.
Another issue is the visual appearance which does not match a look of the new instrument, mainly because guitar frets have different widths. The only way to get around this is to edit the plugin's code, however it should be enough to change this line to use any constant fret width (for example,
implicitWidth: 25
to make frets square) to get around this issue. MuseScore restart is required after changing the plugin's code.With these limitations and workarounds, this plugin can technically be used for visualization of such instrument, if that suits your needs.
In reply to Hello! This plugin is able… by dmitrio95
Hello Dmitrio95,
thank you for your advices. I think I will try to create a tablature dedicated to the Linnstrument ...
Hello, does this plugin work with version 4? I just installed and it seems not ...
In reply to Hello, does this plugin work… by lfm9
Yes, the current version doesn't work with MuseScore 4. However I have already started porting the plugin to the version 4, and it seems to be generally possible. I think I will finish it maybe today or in few days, will post an update to this thread when it's completed.
In reply to Yes, the current version… by dmitrio95
Hi, great news! Thanks
Update: MuseScore 4 support
I have just uploaded a version of the plugin that works with MuseScore 4. Unfortunately MuseScore 4 lacks some part of the API that was used by this plugin so I had to use work around this using APIs that are not meant to be public and stable. Therefore it may potentially stop working with future updates of MuseScore 4, but for now it is here, and seems to mostly work as expected.
Apart from adding the new MuseScore version support, the plugin also introduces two less important changes, one of which improves handling of different instrument tunings and configurations by making use of the newer plugin API, and another adds an ability to horizontally flip the fretboard to improve the fretboard's usability for left-handed players. A bit more details (not too much more) are described in the changelog.
The new plugin can be downloaded from this link. Note that you would need to unpack the archive and place the entire directory to your Plugins folder, as simply putting one .qml file there will no longer work.
In reply to MuseScore 4 update by dmitrio95
Hello, just downloaded and it seems it is working ok, great job!
It's a great tool to insert chords, but it would be amazing if in the future you could have a button where we could toggle between "chord mode" and "solo mode". The solo mode should work like this:
> if you click in the fretboard, it inserts the note and also advance automatically to the next position, if you want to insert more notes in the same position you could always toggle the mode to "chord mode"
In reply to Hello, just downloaded and… by lfm9
Thanks! The idea with the solo mode is interesting, I'll try it for the future updates.
In reply to MuseScore 4 update by dmitrio95
Hi I've been trying to download this on my Mac but it doesn't seem to be working, does this only work on windows or am I doing something wrong?
In reply to Hi I've been trying to… by Shez890
No, just checked it on Mac, and it works for me. You should download the plugin from the link above (this one), extract the archive and move the extracted folder (which appears to be named "fretboard-plugin-master") to your Documents/MuseScore4/Plugins folder (or MuseScore3 if you install it for the version 3). Then the plugin should appear in the Plugins→Manage Plugins list (maybe after MuseScore restart) where it can be enabled. Then you can show the fretboard by selecting it in the Plugins menu, at least when you have a score opened.
In reply to No, just checked it on Mac,… by dmitrio95
Oh, this is very useful, I am able to add this plugin just now! Thankyou! ❤
Hi, thank you for the plugin and the update! Something I've noticed is that notes and chords don't seem to display on the fretboard unless you added them via clicking on the fretboard itself.
Is this normal behavior? If not, is there a way around this?
In reply to Hi, thank you for the plugin… by ThatKitty
Hi! The reason of such behavior is probably that there is no tablature for the guitar part in your score. In your screenshot the guitar part is represented by a standard staff, and MuseScore doesn't keep information on strings and frets for notes on such staff. The plugin doesn't try to guess the note's string and fret and just uses the information available from MuseScore, so all notes on a standard staff except those added via the fretboard don't have this information and are not displayed by the plugin.
The workaround is to add a linked tablature staff which would mirror the content of the standard staff but would also automatically assign string and fret numbers to each note. In MuseScore 4 this can be done from the Instruments panel, like described here in the Handbook. You can then hide the tablature staff if you don't want to see it in the final score, it would still work as expected.
Maybe it would be reasonable though if the plugin could guess string and fret values for notes if there is no tablature for them, since this issue seems to cause numerous questions. Not sure if I can make this automatic guessing reasonable enough, but I will try to play with this for future updates. Anyway, for now the workaround with the linked tablature staff should work well.
In reply to Hi! The reason of such… by dmitrio95
I'm pretty sure that the string data is part of every plucked string instrument, and tablature just inherits those
In reply to I'm pretty sure that the… by Jojo-Schmitz
Yes, string data such as number of strings and their tuning is indeed a part of an instrument. The missing part is a string and fret number of an individual note on a staff, since they normally have meaningful values only in tablature. They should either be guessed by the plugin (which it currently doesn't try to do) or be given by a linked tablature staff (which is what I suggest as a workaround for now).
In reply to Yes, string data such as… by dmitrio95
Ah, yes, of course
In reply to Hi! The reason of such… by dmitrio95
Builtin "guess algorithm" is also very basic, as far, as I know, it only takes care, to multiple notes starting at same point be on different strings.
If string is already taken, use lower one.
It is easy enough to implement it into plugin itself, I think.
In reply to Hi! The reason of such… by dmitrio95
Oh, noted, that makes a lot of sense! Thank you for the response.
Just tried this nice plugin while inputting some tab exercises.
Two things stood out as being an efficiency concern:
1) Allow for traversing to the next input position automatically
2) Have an option to replace what exists or not
By default, no traversing occurs unless the user presses the < > buttons, and default behavior is to add to an existing note. This makes sense, but when for instance inputting some lateral work, it is extra effort to press the right arrow on keyboard or the plug-in's buttons. And replacement could be useful while retaining rhythm information. Because of this, I put together a quick change as it stands. I'm not suggesting this be default or not, but figured maybe someone else will find it useful.
With this change, a rhythm structure can be copied to another measure, but the user then can alter pitches via the plugin without touching any rhythm commands:
Fairly simple changes to the code are found in the attached archive as 7zip. No guarantees ;)
Hell, maybe the plugin already automatically moves forward when in Note-Entry mode, but I didn't test it...
In reply to I just tried this plugin… by worldwideweary
Please consider a variation that allows you to represent scales on the diagram and a way to print them out.
In reply to Please consider a variation… by Jack A. Zucker
If you weren't already aware, in MS3.6.2 (haven't verified 4.x) multiple fret markers are already capable of being performed like so:
No neck fret-markers or color variations, however. That'd require a custom build of the main program ;)
Hi! Thank you so much for this plugin! I read in one of the comments that visualization with playback is not supported currently. Is there a way to do it?
In reply to Hi! Thank you so much for… by Raphael Swaran
I don't know anything about programing. But if I could be helpfull in some way, I want to comment that the author of the plugin sayd in a previous comment:
"Currently plugins do not have an access to the current playback state, so unfortunately it is not possible to fix this in the current version of MuseScore. Synchronizing a playback state with plugins will require changes in MuseScore itself, in its plugin API."
But that was a couple of years ago. Maybe recent versions of musescore already support this feature. If is not the case, probabbly the right course of action is to make a feature request.
Also, there is a project related to plugins on github:
https://github.com/musescore/MuseScore/projects/66
I don't what can be done to put a feature request in the project.
I just downloaded the folder of fretboard plugin for my newly installed Muscore 4, but it can't be executed and not to mention appear in the plugin column. what should I do?
In reply to I just downloaded the folder… by sukuip
Anything in the logs?
I just downloaded the plugin folder but it can't run and not to mention be found in the plugin column. what should I do?
In reply to I just downloaded the plugin… by sukuip
What if you unzip the thing in the MuseScore4/Plugins folder?
In reply to I just downloaded the plugin… by sukuip
Ah, you just downloaded by didn't unpack and install?
See https://musescore.org/en/handbook/4/plugins#install-new
I just downloaded, extracted and installed the plugin (copied it in the Standard Plugin-directory). It appears in the plugin-Manager, is enabled by me, but unfortunately it doesn’t work.
Probably I have done something wrong, I don’t know.
Can someone please tell me WHAT EXACTLY must be done ???
Do I have to copy the whole folder or just some files????
By the way, I have installed the most updated version of Musescore 4 (Windows 11).
In reply to I just downloaded, extracten… by johndegier
It probably needs porting to MuseScore 4.4
In reply to It probably needs porting to… by Jojo-Schmitz
Thank you. I hope the developer of this plugin reads this (if he is still a member….) and can give some help………
In reply to Thank you. I hope the… by johndegier
Sorry for the delay, I have just ported the plugin to MuseScore 4.4, so the latest version should now work.
In reply to Sorry for the delay, I have… by dmitrio95
Thank you very much. I have extracted the zip-file, but can you please tell me which of the files I have to copy to the plugin-folder of MuseScore??
In reply to Thank you very much. I have… by johndegier
All. The entire folder