Parley diz “Falha ao determinar intérprete para scriptfile” para todos os scripts de ações no Mint 17 (com o Python 2.7.6)

0

Quando eu tentei usar o Parley 1.0.0 (que eu tinha instalado usando o Gerenciador de Software em Mint 17, 32-bit), eu baixei muitos arquivos vocab através do mecanismo embutido, e quando eu tentei o primeiro, ele me disse que todos os cinco complementos do script de ações falharam, todos com a mensagem no título. Ele também diz que, para qualquer um deles, eu tento reativar o item de menu do Parley Scripts - > Gerenciador de scripts.

Se eu abrir um terminal:

$ python --version
Python 2.7.6

Então ... não sei o que significa ou como consertar. (O intérprete de um arquivo .py não seria Python? Por que não seria possível encontrá-lo em uma instalação de estoque?)

O erro completo fornecido é:

Error in file /usr/share/kde4/apps/parley/plugins/example.py at line -1: Failed to determine interpreter for scriptfile "/usr/share/kde4/apps/parley/plugins/example.py"

Se eu executar o Parley a partir de um Terminal, ele fornecerá mais informações, mas a última linha será a única informada no momento real do erro, e não fornecerá nada além do pop-up:

$ parley
Could not add child element to parent element because the types are incorrect.
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_lesson_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_wordtype_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_inflection_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_comparison_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_multiplechoice_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_synonym_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_antonym_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_falsefriend_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_pronunciation_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_image_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_summary_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_audio_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_browser_dock" with KXMLGUIFactory! 
parley(10341)/kdeui (kdelibs): Attempt to use QAction "show_latex_dock" with KXMLGUIFactory! 
parley(10341)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "google_images"
parley(10341)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "parley_example_script"
parley(10341)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "google_dict"
parley(10341)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "wiktionary_sound"
parley(10341)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "leo_dict"

(parley:10341): Gtk-CRITICAL **: IA__gtk_widget_get_direction: assertion 'GTK_IS_WIDGET (widget)' failed

(parley:10341): Gtk-CRITICAL **: IA__gtk_widget_get_direction: assertion 'GTK_IS_WIDGET (widget)' failed
Kross: "Error error=Failed to determine interpreter for scriptfile "/usr/share/kde4/apps/parley/plugins/example.py" lineno=-1 trace=
" 

A primeira linha é impressa imediatamente. As seguintes linhas kdelibs foram impressas quando cliquei em Editor (depois de carregar um arquivo vocab baixado). Os próximos cinco vieram quando eu cliquei em Scripts- > Script Manager. As linhas CRÍTICAS foram impressas quando eu cliquei para alternar a caixa de seleção para a posição ativada, ao lado de Exemplo Parley Script. A última linha foi impressa (e o erro apareceu) quando cliquei em OK.

    
por Kev 03.12.2014 / 15:34

1 resposta

1

O Bash não define o intérprete com base na extensão do arquivo. Ele usa a primeira linha do arquivo, comumente referida como "shebang" ou "crunchbang". Isto é o que permite que um script python executável seja executado diretamente.

Alguns exemplos:

#!/bin/bash
#!/usr/bin/python2
#!/usr/bin/env python
#!/usr/bin/env ruby

Você deve inspecionar esses "scripts de estoque" e ver se eles têm uma linha shebang. Se não, relate-o como um bug para o projeto upstream. Eu não estou familiarizado com o parley, mas você também deve verificar se eles têm uma opção para um intérprete padrão.

    
por 03.12.2014 / 16:19