huyng/bashmarks

UTF-8 support in bookmark names

uusijani opened this issue · 0 comments

I'm in a UTF-8 environment and a lot of my directories' names have characters above ASCII in them. For many of those it'd be natural to assign bookmark names that also have characters beyond ASCII. For example, my "Desktop" directory is localized as ~/Työpöytä, and I'd like to name that bookmark "työpöytä".

jani@saegusa:Työpöytä$ s työpöytä
bookmark name is not valid

This fails because bashmarks validates names using the regexp /[^A-Za-z0-9_]/. It's simple enough to patch to account for the 6 additional characters in my Scandinavian locale, but bashmarks also derives an environment variable name from the bookmark name, and apparently Bash does not support UTF-8 for those:

jani@saegusa:~$ LC_MESSAGES=C export DIR_työpöytä=$HOME/Työpöytä/
bash: export: `DIR_työpöytä=/home/jani/Työpöytä/': not a valid identifier

There may be other obstacles as well, those are just the two I could find at a glance.

Obviously I can work around this by not using UTF-8 in bookmark names, but it needlessly increases the mental effort required to recall the names and also the chances of name collisions.