code: function global_names(ctx, options) {
      try {
          var ans = vm.runInContext(options.enum_global, ctx);
          ans = ans.concat(all_keywords);
          ans.sort();
          var seen = {};
          ans.filter(function (item) { 
              if (Object.prototype.hasOwnProperty.call(seen, item)) return false;
              seen[item] = true;
              return true;
          });
          return ans;
      } catch(e) {
          console.log(e.stack || e.toString());
      }
      return [];
  }
docs: tab-completion