xdg-откройте использование неправильная кодировка символов на LTSP

Я пытаюсь открыть файлы в локальном приложении в системе LTSP. Но если путь содержит символы с диакритикой, как é, это не может быть открыто, потому что URI, кажется, кодируется неправильно.

Проблемы, кажется, расположены в gvfs-открытом пути, отправляет файлу URI:

gvfs-open /home/user/testé/test.mov
VLC is unable to open the MRL 'file:///home/user/test303251/test.mov'.

Открытие того же файла из самого приложения (использующий Файл> Открытый..) не дает проблем.

Пробелы и запятая, кажется, кодируются по-другому, с %20, и не дают проблем.

gvfs-open /home/user/this is testé/test.mov
VLC is unable to open the MRL 'file:///home/user/this%20is%20test303251/test.mov'.

Какая-либо идея, как это может быть зафиксировано?

1
задан 5 May 2015 в 18:11
1 ответ

Я нашел решение и зарегистрировал ошибку: https://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/1451915

Это было вызвано тем, как LTSP открывает локальные приложения: LTSP устанавливает свойство X, содержащее команду и аргументы, которые читается на клиенте и затем выполняется.

/usr/bin/vlc --started-from-file %U

заменяется на клиентах на

xprop -root -f LTSP_COMMAND 8s -set LTSP_COMMAND "/usr/bin/vlc --started-from-file %U"

, но здесь используется 8-битное кодирование. Если вы измените «8s» на «8u», будет использоваться строка Unicode UTF-8, которая, похоже, решит проблему.

Файл, который необходимо изменить, это:

/opt/ltsp/i386/usr/bin/ltsp-genmenu
0
ответ дан 4 December 2019 в 07:50

Теги

Похожие вопросы