Guitar Notation

• Jul 28, 2011 - 12:25

In my professional life, I transcribe Guitar music for major publishers. Does the development team need/want any help with notation features as they relate to guitar music, specifically tablature? I'd be willing to contribute a couple of hours a week to testing nightlies and putting together examples and suggestions.

Peace,

David


Comments

Hi David, feedback on the way the current tablature notation works in the MuseScore nightlies is very welcome. As the lead developer Werner Schweer is no guitar player, nor does he use tablature software, I'm sure he can use good feedback, suggestions and references to improve things.

Hello David,

I wrote most of the current code for tabulatures (no intention to step on Werner's feet, of course!). The background I have is mostly with historic tabulatures (for lute and viol); I have little to no experience about modern tabulatures.

I know the current implementation is incomplete and I would be very glad of suggestions and examples.

However, the trunk code just underwent major re-factoring and has been highly unstable for a few months. This is why I suspended working on the tabulatures, waiting for it to 'recover' (which is starting to happen now). I plan to resume it shortly.

So, any help will be VERY welcome, with 2 caveats:

1) I firstly have to go back and review if and how the global re-factoring affected the tabulature part; until this is done, the time you will spend risks to be wasted.
2) the internal working of tabulatures is to some extent separate from the 'regular' musical notation and I deal only with them; so, specific guitar aspects of 'regular' notation is not my department...

Thanks indeed,

M.

Hi, just tried out MuseScore and specifically the r4620 nightly because of the guitar tabulature. I'm not a professional as David is, but I've done a lot of guitar tabulatures for private use.

First off, I don't know if this is the right place to put, but the save/load function for editing staff types is greyed out and does not work. So at the moment it is not possible to turn off the stems of a note in the tabulature. This is probably just disabled in the current nightly and not intended. If needs be I can send in a bug description, though.

My main point however, would be that tabulature editing should be more string-centered. At least I, as a guitarist, often think more of where my fingers should be instead of which note (in which octave) I am playing. At least if I want to create a tabulature. Right now tabulature-creation in the nightly is note-centered (for lack of a real word). If I press 'e' on the (qwerty) keyboard it inputs that 'e' in which octave it is, irregardless of which string I have selected with the cursor. e.g. if I have selected the A-string of the guitar and input an 'e' it will create an open-string note on the low E-string. So the system prefers the internal octave over which string I have selected. In my opinion the system should be more string-centered, so that if I select a string and press a note on the (qwerty) keyboard it creates the lowest possible note on that string. E.g. if I have selected the A-string and input an 'e' it should create a note on the 7th fret on the A-string.

There is a second input-method that could be implemented, but which will probably be hard to program. If I select a string and input a number it creates the note on the corresponding fret. E.g. if I have selected the A-string and press '7' it would input the note on the 7th fret, which is an e. This would be nigh-perferct as it would be very intuitive to use. But I doubt it is possible, since inputing numbers already determines note length.

That being said, I really enjoy the intuitive way of how MuseScore works, especially the drag-and-drop feature. Time and again I am impressed of the high standard that free software has these days and MuseScore is certainly one of them. A big thank you to everybody involved.

In reply to by Buddz

@Buddz:
the save/load function for editing staff types is greyed out and does not work. So at the moment it is not possible to turn off the stems of a note in the tabulature.

The save/load button in staff type editing dlg box is a place holder for a future feature (sort of having a storage of presets ready to reuse) and has nothing to do with individual control of the dlg being working or not. The controls which exist should work.

In fact, some of the check boxes no longer work, because of recent changes in other parts of the program; I know this and I will fix them as soon as the bulk of the program stabilizes a bit.

Note entering in tabulature:

I know this is currently sub-optimal. My feeling is that working with note names (i.e. using the 'A', 'B', ... keys to enter an A, a B,...) is largely out of mark when working with tabulature; if there is a consensus, it may be improved, but with a rather low priority.
- - - - - -
Using numbers would indeed be the most obvious way; but we have to resolve 2 points:
1) the conflict with the current default assignment for note value selection (yes, all key assignments can be changed, but the default proposed should be reasonable and consistent).
2) There is currently no way to "select a string": having a simple and reasonable way to tell "set fret 3 on this string" is useless if there is no way to tell which "this string" is!
- - - - - -
Currently, the only reliable way to enter notes in a tabulature staff is by mixed mouse / kbd operation:
*) click on the relevant string: this places a '0' on that string
*) press [Up] several times until the proper fret number is obtained.

An improvement could be a mouse-only operation:
* ) click on the string and then, without releasing the mouse, drag up to increase the fret number.

Would this be better?

Thanks,

M.

In reply to by Miwarre

how tough would it be to "cycle through" the available notes?

So if I press "e", it start with 0 on the low string...I press again (perhaps within a timeout period?) and it moves to the 12th fret on the low string (because I've said "13" frets in the configuration). I press again and it moves to the 7th fret on the "A" string (second-lowest string), again and it goes to the second fret on the "D" string...and so-on.

Miwarre,
I posted a topic in the "Features" forum suggesting that the current way of handling Tab isn't very "friendly". I did this as I read somewhere (I think) that V2 may only be a couple of months away and I thought it would be a mistake to go live with the current method.

You may recall that we had some discussion via email at the turn of the year about how MS could handle guitar tab. Do you still have that correspondence? If not would you like me to resurrect it here to stimulate some discussion?

Steve

In reply to by fatwarry

This is all very interesting and I'll have to go digest the other thread linked by thomas.

If MuseScore were to emulate Sibelius in the way it handles tab input, a note in tab (a letter or number on a 'string'), once selected, would "listen" for number inputs via the numbers in the top row of a qwerty keyboard (i.e. NOT the number pad).

For example, after selecting a note that has already been copied to a tab staff or input via a mouse click (or any other input means), pressing the number "1" on the number row would set the fret position of that note to the first fret (and modify the pitch according to the tablature staff's pitch configuration). Pressing "9" would change the fret position to the ninth fret. Pressing "1" shortly followed by "0" would result in a fret position of "10."

Does this make sense? Is it do-able from a coding standpoint?

In reply to by dstocker

I'm not sure if I've understood you correctly, dstocker, but I'm a bit concerned that your suggestion could cause problems to anyone who uses the numbers in the top row of a keyboard for their current purpose (note length). I use a laptop which doesn't have a separate number pad, and it is *much* easier to use the top row of the keyboard than to switch backwards and forwards (using Fn/NmLk) between the "number pad" mode and the "normal" mode of the keyboard.

In reply to by Jon Foote

It's a valid point. Perhaps the perfect solution (but probably more difficult for the programmers and interface designers) might be to allow assigning shortcut keys or have them hard-coded in the program for tablature numbers. For example, Alt+1 for first fret, and so forth. I don't have an encyclopedic knowledge of the shortcut keys that are already taken, but this would seem logical.

Also, I recognize that this is probably approached with a "wish list" kind of priority level.

I'm actually most interested in helping out with advice on style and appearance of tablature and standard guitar notation elements.

Speaking of which, are the nightlies now appropriate for trying out? I grabbed a Windows nightly about a week ago and tried out some tablature and enjoyed some of what I saw, between crashes :0)

Should I be having a look at this now, or will it be time wasted on old and outdated features that have already been improved but not released for testing?

Miwarre?

In reply to by dstocker

Hey david, crash reports are always welcome. We will need to steps the reproduce the crash plus your nightly build number. Obviously you can report your thoughts on improving the style and appearance all the time.

I can't answer for Miwarre, but I would be surprised if he has a different local MuseScore with more out phased or newer features. So my guess would be that the latest nightly is the current state of MuseScore.

I Just had a thought on the problem of entering numbers to indicate frets in Tab entry mode conflicting with the existing use of numbers to select note value in note entry mode.....................

Currently, one way of entering note entry mode is to hit "N". Would it make it easier to program round this problem if you had to hit "T" to enter tab entry mode? Then the program would know what the numbers represent because it would know the currently selected entry mode. I realise it's an extra keystroke but I doubt that people would want to switch between modes very often

This still leaves the problem of how you tell the program which string to use. Following this logic you could use "S" (for String) but maybe that's getting a bit cumbersome

In reply to by fatwarry

Hello Fatwarry and dstocker and everybody else!

Just a short note to let everybody know that I'm still alive and still committed to continue the work on the tab stuff. I'm sorry for these months of silence, but 'real world' kicked in and I had no spare time to spend on this. As things should be routine now, I can spend more time.

Thanks for all the proposals: there are several promising ideas. Most of them, however, require some changes in the program 'deep structure' which are outside my responsibility (and my 'authority'): some discussion is needed with the core developers (this mostly means Werner, of course!) to see what is compatible with the general program architecture and what risks to be a shot in the dark.

More to come soon!

(As a general indication, what is currently in the nightly/SVN is indeed there for testing: I'm aware of a few bugs / weak points, which will be corrected, but any report / suggestion / comment is welcome.)

Thanks,

M.

Aloha from sunny Northern Ireland!

I'm a tabber "hobbyist" with many transcriptions on various tab sites. I have a great deal of experience with guitar tab software, especially Guitar Pro. I started using tab software in around 1999 and have been ever since. Despite how comfortable I am with using and creating tablature I have never been able to get to grips with the tab systems offered by the likes of Sibelius or Finale. The tab system is always extremely (I don't use that word lightly) convoluted and time-consuming. I've just finished having a play around with the latest nightly build of Musescore and I've found it to have the same basic but significant problem with regards to its note entry function for tablature.

The great thing about tab from a transcriber's perspective is that it's all numbers (and the great thing about numbers is that our keyboards are equipped with dedicated buttons for each of them). Guitar Pro, and all other guitar tab applications, take advantage of this by allowing the user to navigate to a string with either the mouse or the cursor keys and to then simply type the fret number he/she desires directly onto the string (if it's a double-digit fret number you just type each digit in quick succession). For a tabber to be using both the mouse and the keyboard to cycle through the fret numbers - and to do so for every note - is like pulling teeth.

When I use Guitar Pro I have one hand on the NUMPAD and the other hand on the cursor keys, only using the mouse to add articulations which aren't bound to keyboard shortcuts. This is the fastest way I've been able to tab over the years and it's so intuitive that it took virtually no practice to get the hang of it.

Here's a diagram showing the functions of the NUMPAD in Guitar Pro:

http://img839.imageshack.us/img839/1893/numpad.png

To have this (or something similarly intuitive) available to us in Musescore would be beyond awesome.

Given that this is an open source project I think it might be worth checking out another open source project for ideas - TuxGuitar. It's a tablature editor with much of the same functionality as Guitar Pro (in fact it supports Guitar Pro's file format). Perhaps the code used for the note entry system can be a source of inspiration.

I'm not a programmer so I hope I don't sound like a dumbo haha.

Cheers,
Paddy.

In reply to by Paddy_

The problem with using numbers is that they are currently linked to durations in MuseScore.

I have been using the nightlies for creating TAB for about 3 months now, although I tend to use a dual notation/TAB format, and write the notation first. I do find that using letter names on the keyboard for note entry is perfectly acceptable when entering directly to TAB, however, and is a vast improvement on the clunky system provided in Finale.

There are also hidden things about the UI in TAB which are not immediately apparent eg CTRL up/down will shift a note across strings.

HTH
Michael

In reply to by ChurchOrganist

I wonder if it's feasible to have the keyboard layout switch depending on whether you're using the tab stave or the standard notation, so that the tab numbers are available via the NUMPAD/keyboard and then for them to switch back if you move to the notation stave. That is, context-sensitive keyboard layouts.

In reply to by Paddy_

That indeed would be excellent if it can be done.

We may have to use things as they are for version 2.0.

I will, however be opening an official feature request for this to be added to the next major version.

My only misgiving is - how will those users using laptops and netbooks without keypads be affected by this?

In reply to by ChurchOrganist

I use the NUMPAD because it's more "aerodynamic" and speedy but the standard number keys along the top of the keyboard work in Guitar Pro in the same way, and if possible it would make sense to have it that way in Musescore too.

I'm stoked that the idea is being considered! I can't wait to see what becomes of it in the future :D

Cheers!
Paddy.

In reply to by Paddy_

The idea to improve TAB entry is there since long. Also the idea to use context-depedent hot key sets (some hot keys while 'not-editing', some while editing 'regular' staves, some hot keys while editing tab staves) has been discussed and sounds feasible in prnciple (as an added advantage, hot keys for each context would be customizable).

However, it requires some very deep change in the program architecture, so it has been postponed until after the move from SVN to Gitub; as this move is now over, I'll try to push things a little...

Thanks,

M.

You need to create a new "TAB mode", where you

- select a string and start typing numbers
- Right arrow key advances to the next note
- Left arrow key previous note
- Up arrow, up a string (in pitch e.g. 6 string to 5 string)
- Down arrow, down a string (in pitch e.g. 4 string to 5 string)

This is the method GuitarPro and Sibelius use.

If MuseScore adopts this method, not only is TAB entry SUPER EASY, MuseScore would be contributing to a standard for TAB entry.

This method is easily the best comparing all notation programs.

MuseScore in it's current for is not realistically useable for TAB input.

Do you still have an unanswered question? Please log in first to post your question.