About digit keys in 2.6

hello,

not a bug but just a comment/ask.

First, here are the relevant informations :
- Moc 2.5.0-beta2 on Linux 3.15.8-1-Arch x86_64

Just changed from debian stable (7.0 - don't remember which Moc version was installed) to ArchLinux.
When using my former configuration file, mocp starts with the following message :
- Using digits as keys is deprecated as they may be used for specific purposes in releases 2.6.

It's not really an issue, as the message couldn't be clearer and mocp starts normally. I can use my old shorcuts for fast dir. without any error message.

But...

I'm french, using an azerty keyboard. So, logically, qwerty's keys given in config.example ( !@#$%^&*() ) are largely distributed on an azerty keyboard, which is not the most confortable disposition for fast directories.
As digits keys are deprecated - even if it doesn't cause any real problem, seems it will in 2.6 - I want to follow the indications and find an other way to configurate fast dir's keys.

So, I tried with AZERTY special caracters of digit line on keyboard, which are : &é"'(-è_çà

The problem is that some of those caracters are not allowed and cause a FATAL_EROOR when parsing the ~/.moc/keymap file.
As most alphabetical keys are used, it's not possible to have a range a keys next to each others on other lines. And F1...F9 are used for external commands. KP_1...9 or "eacute" are not allowed.

Is there a way to get round with that ? I mean, scattered keys to access fast dir. is not really an easy and "fast" way.
If digits are not allowed in next version, it will be a problem for non-qwerty users. Or maybe I just didn't catch a better way to do it ?

(And I'm curious about the announced use of digits keys ?)

Thanks in advance (and for the great work done here !)

It's a good observation, and one which I had realised some time ago (and actually part of the reason why digit keys are deprecated).

In MOC 2.6 there will be more commands available, they will be more configurable and their invocation will be more flexible. All of which adds up to a need for more keys to which they can be attached. Given that most of the easily accessible keys are already in use, we have a problem.

The planned remedy is threefold. Firstly, you will be able to use "key chords", so instead of dedicating 10 keys to "fast directories" you would be able to configure "D0" through "D9" as your fast directory keys. Further, you could configure "dR" for your rock music directory and/or "dcB" for your Beethoven and "dcC" for your Chabrier.

Secondly, you will be able to ask MOC what the representation for any key is (even non-ASCII keys) and then use that representation to map your keys to commands.

Thirdly, and this is where the digit deprecation comes in, you will be able to prefix a keypress with a numeric value which the command can use internally. An example of that would be to map "V" to volume control then you'd be able to type "20V" which would set your volume at 20%. (I had been thinking of preceeding the digits with and ESC, as in BASH, but I'm no longer sure that's necessary except as a miskeying prevention mechanism.)

Combining the above, you could, if you wished, set up "VC" to be your preferred listening volume for classical music (15% say), and then "2VC" would take you to twice your preferred classical listening volume (30%, 2 x 15%). Similarly, "V+" could increase your volume by 5 units and then "3V+" would increase the volume by 15 units.

I've taken volume and directories as examples, but it will apply to other commands as well (seeking, for example).

I hope that explains the rationale behind deprecating digit keys.

Is it possible to remove the notification ?
I tried removing anything related to digits but I still get the warning:
Here is my ~/.moc/keymap
https://transfer.sh/1eFfMu/keymap

mocp --version   1  18:36:27   master 

This is : Music On Console
Version : 2.5.0
Revision : 2668
Built : Oct 26 2014 06:41:49
Compiled with : OSS ALSA JACK DEBUG Network streams resample
Running on : Linux 3.19.0-26-generic x86_64
Author : Damian Pietras
Homepage : http://moc.daper.net/
E-Mail : mocmaint@daper.net
Copyright : (C) 2003-2014 Damian Pietras and others
License : GNU General Public License, version 2 or later

I cannot see any entry relevant in the keymap file you provided, nor can I replicate the problem using your keymap file.

The test for digits is sensitive to the locale you are using, so does that offer any clues?

Thanks for the answer
$ locale
LANG=fr_FR.UTF-8
LANGUAGE=fr_FR
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=

I tried running mocp like this
$ LC_ALL="en_US.UTF-8" mocp
Using digits as keys is deprecated as they may
be used for specific purposes in release 2.6.
but it still generates the message.

I tried to send you a debugging patch but apparantly e-mail from the 'daper.net' domain is blocked by Hotmail.

Could you send mocmaint an e-mail with a non-Hotmail contact address, please.

I changed my email to a gmail one, could you please resend the patch ?

This comment's subject line says it all.

Thanks to jcf's patch, I could find that moc was loading another keymap file then the one I was looking at hence problem solved. Thanks !