Changeset 8960 for lang/javascript

Show
Ignore:
Timestamp:
04/06/08 09:41:03 (5 years ago)
Author:
drry
Message:

lang/javascript/userscripts/ldrize.user.js:

  • var 忘れグローバルを修正しました。
  • パーザを変更しました。
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/userscripts/ldrize.user.js

    r8542 r8960  
    179179          window.Minibuffer.addShortcutkey(Object.extend({key: "C-["}, opt)); 
    180180          if(this.disable) return; 
    181           for(key in KEYBIND){ 
     181          for(var key in KEYBIND){ 
    182182                  if(KEYBIND[key] == 'Iframe'){ 
    183183                          window.Minibuffer.addShortcutkey({key:key,command: function(){self.blurIframe()}}); 
     
    12981298        var ldrize = function(siteinfo){new LDRize(siteinfo)} 
    12991299        var parser = function(res){ 
    1300                 var trim = function(t){return t.replace(/^\s+|,$/g,'').replace(/^'|'$/g,'');} 
    1301                 var content=new RegExp("^ ([^:]+):(.+)"), sep=new RegExp("^[^ ].+"); 
     1300                var content=new RegExp("^ ([^:]+): *'?((?:\\'|[^'])*?)'? *,? *$"); 
    13021301                var lines=res.responseText.split(/(?:\r?\n|\r)+/), res=[], current_info={}; 
    1303                 for(var i=0, l =lines.length; i < l; i++){ 
    1304                         var line = lines[i]; 
     1302                lines.forEach(function(line){ 
    13051303                        if(line.indexOf("//") == 0){ // comment 
    1306                                 continue; 
    1307                         }else if(sep.test(line)){ 
     1304                                return; 
     1305                        }else if(line.indexOf(" ") != 0){ // delimiter 
     1306                                res.push(current_info); 
    13081307                                current_info = {}; 
    1309                                 res.push(current_info); 
    13101308                        }else if(content.test(line)){ 
    13111309                                var property = RegExp.$1; 
    1312                                 var val = trim(RegExp.$2).replace(/\\\\/g,'\\'); 
    1313                                 if(val.toLowerCase() == 'true' || val.toLowerCase() == 'false') val = eval(val); 
    1314                                 current_info[property] = val; 
     1310                                var val = RegExp.$2; 
     1311                                current_info[property] = val.toLowerCase() == 'true' ? true 
     1312                                                       : val.toLowerCase() == 'false' ? false 
     1313                                                       : val.replace(/\\\\/g,'\\'); 
    13151314                        } 
    1316                 } 
     1315                }); 
    13171316                return res; 
    13181317        }