Настройка обнаружения, если команда не существует, предложите установку

Поддержка rythembox и расширения gstreamer еще не написана. Часть проблемы, описанная в этом отчете об ошибке, заключается в том, что разработчик опасается, что дешифрование не может быть взломанным:

https://bugzilla.gnome.org/show_bug.cgi?id=549184 [!d1 ]

Но в соответствии с этим сообщением об ошибке расшифровка может быть взломана с использованием кода dvdcpxm:

https://bugzilla.gnome.org/show_bug.cgi?id=549184

И этот отчет об ошибке далее показывает, что есть способ играть незашифрованные супердисковые диски, если только разработчики напишут код:

https://bugzilla.gnome.org/ show_bug.cgi? id = 549557

Но разработчик замечает, что он никогда не видел Audio DVD. В целом, похоже, что разработчики не знают, что такое этот формат, не имеют к нему доступа или не хватает людей, требующих добавления поддержки (или оплаты за добавление). [!d9 ]

Моим советом было бы создать комментарий в ошибке 549557 выше, объясняя и ссылаясь на ошибку 549559 и ссылку на vlc, которая поддерживает формат. (mplayer тоже может его поддержать)

1
задан 3 December 2013 в 19:42

4 ответа

Обратите внимание, что вы можете добавить проверку, если файл существует, если вы делитесь своим .zshrc между дистрибутивами, у которых нет файла /etc/zsh_command_not_found:

[[ -a "/etc/zsh_command_not_found" ]] && . /etc/zsh_command_not_found

Также, если вы При использовании oh-my-zsh уже есть плагин command-not-found, который вы можете добавить к своей переменной plugins, которая делает то же самое.

4
ответ дан 25 May 2018 в 22:06

Если вы используете oh-my-zsh, вы можете просто искать «плагины» внутри вашего .zshrc.

Добавить плагин command-not-found в список плагинов для автозагрузки (это плагин уже установлен по умолчанию).

Нравится это:

# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git command-not-found)
1
ответ дан 25 May 2018 в 22:06

Как это работает, с помощью функции command_not_found_handle () в bash. bash предоставляет hook, который в основном является функцией, которая вызывается, когда команда не найдена. Реализация bash Ubuntu ловушки и выполняет поиск пакетов, в то время как bash Debian (и тот же с zsh). Вы можете проверить man-страницу zsh, чтобы увидеть, есть ли у нее подобная функция.

Вот как вы можете начать, надеясь, что zsh схож.

mpandit@mpandit-ubuntu:~$ command_not_found_handle() {echo 'Handler: Command not found!';}
mpandit@mpandit-ubuntu:~$ ddaadada
'Handler: Command not found!
mpandit@mpandit-ubuntu:~$
0
ответ дан 25 May 2018 в 22:06
  • 1
    Это не разница в bash Debian и Ubuntu. Разница в том, что Ubuntu устанавливает command-not-found по умолчанию, а Debian - нет. Функция уже существует и для zsh, она по умолчанию не активируется. – Gilles 15 April 2011 в 03:49
  • 2
    Это предполагает, что command_not_found не входит в систему. Однако это не то, что я ищу. Сказав это, ответ от @Gilles больше похож на то, что я ищу, я просто пытаюсь выяснить, где включить указанную им линию. – Thomas Ward♦ 15 April 2011 в 03:57
  • 3
    Он называется command_not_found_handler в zsh. См. zsh.sourceforge.net/Doc/Release/Command-Execution.html . – Mikel 12 August 2014 в 22:20

Также, если вы не хотите, чтобы zsh имел это поведение в 100% случаев, вы можете просто вручную сделать что-то вроде:

/usr/lib/command-not-found urxvt

или добавить команду-not -found к вашему $ PATH

0
ответ дан 25 May 2018 в 22:06
  • 1
    когда я спросил это, я хотел, чтобы он работал все время: P – Thomas Ward♦ 10 January 2012 в 20:41

Другие вопросы по тегам:

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