2 votes

open dict://"$word" a cessé de fonctionner pour le chinois après la mise à niveau vers Big Sur

Je ne suis pas sûr que cette question soit appropriée pour ce forum. Si ce n'est pas le cas, veuillez me le faire savoir et je la supprimerai (si je le peux).

J'ai un shell script open dict://"$word" qui a bien fonctionné dans Catalina pour l'anglais et le chinois. Il ouvrira le Dictionnaire.app et chercher le mot pour moi.

Problème :

Après la mise à niveau vers Big Sur il ne fonctionne maintenant que pour l'anglais, et plus pour le chinois. Si j'essaye de chercher un mot chinois, par exemple, exécuter open dict://"" il y aura une erreur dans la fenêtre Terminal.app : The file /Users/USERNAME/dict:/ does not exist . En cherchant un mot anglais, dites open dict://'hello' L'ordinateur se comporte normalement (c'est-à-dire qu'il ouvre Dictionary.app et recherche "Hello" dans l'application). Je peux toujours chercher des mots chinois en utilisant l'interface de Dictionary.app.

Je suis un amateur en programmation. Je ne sais pas ce que je peux essayer pour résoudre ce problème.

Toute aide est appréciée ! Merci d'avance !

1voto

aaplmath Points 2850

Il semble s'agir d'un bogue avec le open lors de la manipulation de certains caractères, par exemple, open http://www.google.com?q= donne un message d'erreur similaire. Il pourrait être utile de signaler ce bogue à Apple ; en attendant, vous pouvez utiliser la solution de rechange suivante (qui n'est certes pas très élégante) :

osascript -l JavaScript -e "(a = Application.currentApplication()).includeStandardAdditions=true; a.openLocation('dict://' + encodeURIComponent(''))"

Cela utilise JavaScript for Automation pour coder et ouvrir l'URL, tout comme open fait. Pour utiliser le générique $word vous devez simplement effectuer la substitution suivante :

osascript -l JavaScript -e "(a = Application.currentApplication()).includeStandardAdditions=true; a.openLocation('dict://' + encodeURIComponent('$word'))"

0 votes

Bonjour @aaplmath, Merci beaucoup ! Je vais chercher à le signaler à Apple. Votre solution fonctionne pour moi ! Merci beaucoup !

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X