La dernière version de l'extension est la 0.1.5 (1er octobre 2010).
Vous pouvez faire vos retours de bogues sur la plateforme d'extensions de Videolan : Extension Dico
Cette extension du logiciel VLC permet de rechercher automatiquement dans un dictionnaire les mots des sous-titres. Elle constitue donc un outil très efficace pour enrichir son vocabulaire en regardant un film avec des sous-titres dans une langue que l'on souhaite apprendre. Pour chaque mot non compris, il suffit d'appuyer sur les flèches droite et gauche du clavier pour afficher immédiatement la définition d'un mot des sous-titres présents à l'écran. (Mieux, d'utiliser une télécommande…)
Pour le tester, il faut impérativement disposer de VLC 1.1 ou + : il est téléchargeable ici (pour ubuntu, on peut suivre le wiki d'ubuntu-fr, mais évitez d'ajouter le dépôt ppa:n-muench/vlc qui a aussi comme conséquence de ne plus faire fonctionner l'audio sur Anki).
Avoir un film sous forme de fichier lisible par VLC (avi, mkv, ogm, etc.).
L'extension ne marche pas pour les DVD !
Il faut que le fichier de sous-titres correspondant à votre vidéo ait le même nom que celle-ci, hormis l'extension qui doit être .srt
; et que ce fichier soit dans le même répertoire que le fichier film.
Il faut que ce fichier soit au format subrip (extension srt) : si ce n'est pas le cas,
gnome-subtitles permet des conversions ;
Il faut aussi que l'encodage soit utf8 ;
Pour vérifier le fonctionnement correct des sous-titres, lancer vlc avec une video (si possible en console, pour avoir des info de débogage), normalement les sous-titres doivent se lancer automatiquement du coup.
Vous pouvez trouver des liens pour les sous-titres sur
opensubtitles , et vérifier préalablement l'existence des sous-titres en utilisant l'extension VLC
subtitles
Le dictionnaire peut être au format stardict/m ou ling. (cf la
page des formats pour des détails sur ceux-ci).
-
Pour le format stardict/m : attention , l'extension ne lit (pour l'instant) pas les .dict.dz !! On peut cependant dezipper un dict.dz en le renommant en dict.gz puis “extraire ici” ;
Pour le format stardict/m : Comment savoir si un dictionnaire stardict est un stardict/m ? Info à regarder sur le *.ifo (sametypesequence = m).
Dictionnaires testés et approuvés:
Langue | Dictionnaire | Téléchargement |
Anglais | Luc Han | stardict/m |
Italien | Italo Franco | ling |
Mettre le script lua traduction.lua
(à télécharger à cette adresse) dans le répertoire lua/extensions qui peut être à divers endroits suivant votre distribution.
Système | chemin |
GNU/linux | ~/.local/share/vlc/lua/extensions |
Windows | %APPDATA%\VLC\lua\extensions |
MAC | Contents/MacOS/share dans le VLC.app |
Modifier le début du script (lignes 35 à 50 pour la version 0.1) en rentrant les chemins appropriés :
du dico (*.ifo ou *.ling), sans lequel l'extension ne pourra évidemment pas proposer de définitions… (lignes 45 de la version 0.1);
des langues de départ et d'arrivée de votre dictionnaire (lignes 48/49 de la version 0.1).
(facultatif) du répertoire où vous voulez que l'extension enregistre les mots que vous lui demandez d'écrire (en appuyant sur la flèche bas du clavier) sur un fichier texte avec leurs définitions, en vue d'un apprentissage ultérieur. Ce chemin se configure à la ligne 54 pour la version 0.1. Ce sera aussi l'emplacement du fichier texte des mots pour lesquels vous n'avez pas trouvé de définition (flèche haut du clavier lors du visionnement du film) en vue d'améliorer le dictionnaire que vous utilisez. Vous pouvez personnaliser le nom des fichiers texte dans le script (lignes 52/53 pour la version 0.1).
Au moment où il y a un sous titre qui contient un mot que vous ne connaissez pas : Faites “pause”, allez dans Vue > Dico LangueA - Langue-B > Suivant ou Précédent pour parcourir le sous titre et afficher la définition à l'écran (mieux : touches →,← au clavier ; encore mieux : configurer votre télécommande pour faire ça de votre canapé…).
si vous souhaitez écrire les définitions des mots que vous ne connaissez pas (en vue d'un exercice de mémorisation avec
anki par exemple), sous-menu “écrire la définition” (ou raccourci clavier : flèche ↓) rajoute la dernière définition dans un fichier texte. (rappel : nom et chemin à paramétrer au début du fichier, cf. précédemment).
L'idéal est bien sûr de pouvoir afficher les définitions avachi sur son canapé : pour ceux qui utilisent une télécommande avec lirc (très bien supportée par VLC), voici l'extrait du fichier de configuration .lircrc
correspondant à l'extension (à adapter) :
begin
prog = irxevent
button = Vol+FF
config = Key Right CurrentWindow
end
begin
prog = irxevent
button = Vol-Rew
config = Key Left CurrentWindow
end
Si le chargement de l'extension s'est bien passée, celle-ci devrait être cochée et disposer de 4 sous-menus…
Quelque soit le problème, lancez VLC en console et regardez les messages d'erreur (vous pouvez les voir aussi en allant dans outils/messages (tools/messages in english).
Si le chargement du sous-titres s'est bien passé, vous devriez avoir comme message : fin de récupération du sous-titre.
.
Si le chargement du dictionnaire s'est bien passé, vous devriez avoir comme message : Fin de chargement du dico.
.
Voici un exemple de séparateurs qui ne doivent pas être interprétés : ( ; ' ! ? )
Le script ne doit donc rien afficher pour ces derniers, ni chercher à les remplacer par des mots.
Si vous observez un tel comportement, vous pouvez :
- Observer la liste des séparateurs du script, présent par exemple à la ligne 64 pour la version 0.1.1, soit :
listesep = {” ”,”%.”,”,”,”;”,”:”,”!”,”?”,”'”,”)”,”%(”,”-”,'”',”\n”,”\t”,”\r”}
- Observer votre fichier de sous-titres : noter l'encodage, et rechercher puis copier coller les phrases présentant les séparateurs mal interprétés.
- Puis transmettre ces informations.
L'efficacité de cette extension dépend bien sûr de la qualité du dictionnaire, mais aussi du type de langue concerné : plus la langue est flexionnelle, voire agglutinante, moins le dictionnaire sera efficace. En effet le script fonctionne ainsi :
on recherche le mot voulu (mettons cavalli) dans la liste des entrées du dictionnaire.
si il le trouve, il affiche le résultat de la recherche.
si il ne le trouve pas, il va rechercher, au voisinage de ce mot (au sens de la distance “alphabétique”, sachant que la liste des entrées est classée selon l'ordre “alphabétique” par défaut du moteur lua), le mot le plus proche au sens de la
distance de Levenshtein. (Ce qui implique aussi que les langues qui ont des flexions en début de mot (augment, etc.) seront mal analysées par le script).