Bonjour,
J'essaie tant bien que mal de développer un plugin très simple pour le logiciel VSS. Je n'ai quasiment aucune connaissance en js, je fais ça par mimétisme à partir de plugins déjà existant.
J'ai, en fait, 2 problèmes :
- l'un au niveau de la condition if(LineArrayLen == 2){ qui n'est jamais vraie...
- l'autre, charAt ne semble pas défini
Je suppose que le code sera bien plus explicite, alors le voilà :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
 
var DebugMode = false;
 
VSSPlugin = {
  // ----- Plugin constant -----
  Name : 'Tirets manquants',
  Description : 'Détecte et corrige les dialogues à la belge.',
  Color : 0xE9B63A,
  Message : 'Tiret manquant',
 
 
 
  HasError : function(CurrentSub, PreviousSub, NextSub) {
 
    //Récupérer le texte brut
    var SubText = CurrentSub.StrippedText;
    var LineArray = SubText.split('\r\n');
    var LineArrayLen = LineArray.lenght;
 
    //ScriptLog() est une fonction permettant d'afficher
    //l'argument dans une fenêtre du logiciel.
    //retourne 'undefined'
    ScriptLog(typeof(LineArrayLen));
    //retourne bien 'string'
    ScriptLog(typeof(LineArray[0]));
 
    //condition jamais vraie, je suppose du fait que
    //LineArrayLen soit 'undefined'
    if(LineArrayLen == 2){
 
      //vérifie que la condition ne soit jamais vraie...
      ScriptLog('test');
 
      //ReferenceError: charAt is not defined in
      //missing_dashes.js at line 29 (comprendre line 30)
      var a1 = charAt(LineArray[0],0);
      var a2 = charAt(LineArray[1],0);
      if(a1 != '-' && a2 == '-'){
        return 'error';
      }
      else {
        return '';
      }
    }
    else {
      return '';
    }
 
  },
 
  FixError : function(CurrentSub, PreviousSub, NextSub) {
  }
}
Voilà, merci de m'aider, si possible quant à mes 2 problèmes, et s'il y a besoin de plus d'informations, je les fournirai.

Merci d'avance.