How to use the web-ext-native-msg.isExecutable function in web-ext-native-msg

To help you get started, we’ve selected a few web-ext-native-msg examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github asamuzaK / withExEditorHost / modules / setup.js View on Github external
const handleEditorPathInput = async editorFilePath => {
  let editorPath;
  if (isFile(editorFilePath) && isExecutable(editorFilePath)) {
    editorPath = editorFilePath;
  } else {
    const ans = readline.questionPath("Input editor path: ", {
      isFile: true,
    });
    if (isExecutable(ans)) {
      editorPath = ans;
    } else {
      console.warn(`${ans} is not executable.`);
      editorPath = await handleEditorPathInput();
    }
  }
  return editorPath;
};
github asamuzaK / withExEditorHost / modules / setup.js View on Github external
const handleEditorPathInput = async editorFilePath => {
  let editorPath;
  if (isFile(editorFilePath) && isExecutable(editorFilePath)) {
    editorPath = editorFilePath;
  } else {
    const ans = readline.question("Input editor path: ");
    if (isExecutable(ans)) {
      editorPath = ans;
    } else {
      console.warn(`${ans} is not executable.`);
      editorPath = await handleEditorPathInput();
    }
  }
  return editorPath;
};
github asamuzaK / withExEditorHost / modules / main.js View on Github external
const exportEditorConfig = async (data, editorConfigPath) => {
  if (!isString(data)) {
    throw new TypeError(`Expected String but got ${getType(data)}.`);
  }
  let func;
  data = data && JSON.parse(data);
  if (isObjectNotEmpty(data)) {
    const {editorPath} = data;
    const editorName = await getFileNameFromFilePath(editorPath);
    const executable = isExecutable(editorPath);
    const timestamp = await getFileTimestamp(editorConfigPath);
    const reg =
      new RegExp(`\\$(?:${TMP_FILE_PLACEHOLDER}|{${TMP_FILE_PLACEHOLDER}})`);
    const keys = Object.keys(editorConfig);
    for (const key of keys) {
      const value = data[key];
      if (key === "editorPath") {
        editorConfig[key] = value;
      }
      if (key === "cmdArgs") {
        editorConfig[key] = new CmdArgs(value).toArray();
        editorConfig.hasPlaceholder = reg.test(value);
      }
    }
    const msg = {
      [EDITOR_CONFIG_RES]: {
github asamuzaK / withExEditorHost / modules / setup.js View on Github external
const handleEditorPathInput = async editorFilePath => {
  let editorPath;
  if (isFile(editorFilePath) && isExecutable(editorFilePath)) {
    editorPath = editorFilePath;
  } else {
    const ans = readline.question("Input editor path: ");
    if (isExecutable(ans)) {
      editorPath = ans;
    } else {
      console.warn(`${ans} is not executable.`);
      editorPath = await handleEditorPathInput();
    }
  }
  return editorPath;
};
github asamuzaK / withExEditorHost / modules / setup.js View on Github external
const handleEditorPathInput = async editorFilePath => {
  let editorPath;
  if (isFile(editorFilePath) && isExecutable(editorFilePath)) {
    editorPath = editorFilePath;
  } else {
    const ans = readline.questionPath("Input editor path: ", {
      isFile: true,
    });
    if (isExecutable(ans)) {
      editorPath = ans;
    } else {
      console.warn(`${ans} is not executable.`);
      editorPath = await handleEditorPathInput();
    }
  }
  return editorPath;
};
github asamuzaK / withExEditorHost / modules / main.js View on Github external
const spawnChildProcess = async (file, app = editorConfig.editorPath) => {
  if (!isFile(file)) {
    throw new Error(`No such file: ${file}`);
  }
  if (!isExecutable(app)) {
    throw new Error("Application is not executable.");
  }
  const {cmdArgs, hasPlaceholder} = editorConfig;
  const opt = {
    cwd: null,
    encoding: CHAR,
    env: process.env,
  };
  let args, proc;
  if (Array.isArray(cmdArgs)) {
    args = cmdArgs.slice();
  } else {
    args = new CmdArgs(cmdArgs).toArray();
  }
  if (hasPlaceholder) {
    const [filePath] = new CmdArgs(quoteArg(file)).toArray();