Show
Ignore:
Timestamp:
09/10/08 09:14:38 (4 months ago)
Author:
drry
Message:
  • fixed to check for the case of extension.
  • added long opts for the command line.
  • et cetera.
Location:
lang/javascript/ijscript
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/ijscript/ijsc.js

    r5576 r19106  
    2222      var src = ""; 
    2323      if (_p.fso.FolderExists(path)) { 
    24         for (var fs = files(path, /\.js$/), n = 0, m = fs.length; n < m; ++n) 
     24        for (var fs = files(path, /\.js$/i), n = 0, m = fs.length; n < m; ++n) 
    2525          src += _p.read_f(fs[n]); 
    2626      } else { 
     
    9090 
    9191  function read(file) { 
    92     return file.match(/^http(?:s?):\/\//) ? _p.read_u(file) : _p.read_f(file); 
     92    return file.match(/^https?:\/\/\S/) ? _p.read_u(file) : _p.read_f(file); 
    9393  } 
    9494 
     
    142142      _p.envs[key] = {}; 
    143143      for (e = new Enumerator(_p.shell.environment(key)); !e.atEnd(); e.moveNext()) { 
    144         if (e.item().match(/^(.+)=(.+)$/)) 
     144        if (e.item().match(/^([^=]+)=(.+)$/)) 
    145145          _p.envs[key][RegExp.$1.toLowerCase()] = RegExp.$2; 
    146146      } 
     
    161161      ['-q', 'quit'] 
    162162    ]; 
    163     print('command line options:') 
     163    print('command line options:'); 
    164164    for (var opt, i = 0, m = opts.length; i < m; ++i) { 
    165165      opt = opts[i]; 
     
    167167    } 
    168168 
    169     print('shell commands:') 
     169    print('shell commands:'); 
    170170    var cmds = [ 
    171171      ['c2a', ['c'], 'Collection to Array'], 
     
    173173      ['dump', ['obj'], 'dump obj'], 
    174174      ['envs', [], 'return the environment variable object, print(envs().system.path)'], 
    175       ['files', ['dir', '[re]'], 'files(".", /\\.js$/)'], 
     175      ['files', ['dir', '[re]'], 'files(".", /\\.js$/i)'], 
    176176      ['help', [], 'print this message'], 
    177177      ['print', ['val'], 'print val'], 
     
    192192  with ({ n: 0, m: 0, item: "", fquit: false, feval: false, libs: [] }) { 
    193193    try { 
    194       libs = files('lib', /\.js$/); 
     194      libs = files('lib', /\.js$/i); 
    195195    } catch (_e) { 
    196196    } 
     
    200200    for (n = 0, m = WScript.Arguments.length; n < m; ++n) { 
    201201      item = WScript.Arguments.Item(n); 
    202       if (item.match(/^-(\w+)$/)) { 
    203         if (RegExp.$1 == 'q') { 
    204           fquit = true; 
    205         } else if (RegExp.$1 == 'e') { 
    206           feval = true; 
    207           fquit = true; 
     202      if (item.match(/^-([-\w]+)$/)) { 
     203        switch (RegExp.$1) { 
     204          case 'e': 
     205          case '-eval': 
     206            feval = true; 
     207          case 'q': 
     208          case '-quit': 
     209            fquit = true; 
     210          default: 
     211            break; 
    208212        } 
    209213 
  • lang/javascript/ijscript/util/env-proxy.js

    r5576 r19106  
    33  for (var s, o = envs(), keys = ['process', 'user'], i = 0, m = keys.length; i < m; ++i) { 
    44    s = o[keys[i]].http_proxy; 
    5     if (s && s.match(/(http:\/\/)(?:(.+):(.+)@)?(.+)/)) { 
     5    if (s && s.match(/(http:\/\/)(?:([^:]+):([^@]+)@)?(.+)/)) { 
    66      proxy( 
    77        RegExp.$2 && RegExp.$3 
  • lang/javascript/ijscript/util/funcs.js

    r17912 r19106  
    1111function map(a, f) { 
    1212  var r = []; 
    13   for (var i = 0, m = a.length; i < m ; ++i) 
     13  for (var i = 0, m = a.length; i < m; i++) 
    1414    r.push(f(a[i])); 
    1515  return r; 
     
    1818// 
    1919function each(a, f) { 
    20   for (var i = 0, m = a.length; i < m ; ++i) 
     20  for (var i = 0, m = a.length; i < m; i++) 
    2121    f(a[i]); 
    2222} 
     
    3131      function() { return true }; 
    3232  return f; 
    33 }; 
     33} 
    3434 
    3535// 
     
    3737  var f = cond(p); 
    3838  var r = []; 
    39   for (var i = 0, m = a.length; i < m ; ++i) { 
     39  for (var i = 0, m = a.length; i < m; ++i) { 
    4040    if (f(a[i])) 
    4141      r.push(a[i]); 
     
    9292        function(d) { ret = ret.concat(handler(fso, d, f)) }); 
    9393      return ret; 
    94     } 
     94    }; 
    9595    files = handler(fso, fso.GetFolder(path), f); 
    9696  } 
     
    9999 
    100100function unzip(file, dir) { 
    101   if (!file || !file.match(/\.zip$/)) 
     101  if (typeof file != 'string' || !file.toLowerCase().match(/\.zip$/)) 
    102102    return false; 
    103103