Добавление пользовательских команд в терминал по стороннему приложению - PullRequest
0 голосов
/ 02 февраля 2020

Я работаю над приложением, в котором мы используем xterm js и node-pty внутри электронного приложения. Мы добавляем терминал в наше приложение и хотели бы добавить некоторые пользовательские команды, которые используются в терминале и которые связаны с нашим приложением.

Какие есть варианты для добавления этих команд?

  • Мы хотим, чтобы они были установлены вместе с приложением.
  • Их не нужно использовать внутри «внешнего» терминала, но это нормально, если они есть. Под внешним я имею в виду ваш обычный терминал. Не наша реализация xterm & node-pty.
  • И мы хотим, чтобы они вели себя так же, как и другие обычные команды unix. Где вы можете передавать с другими командами && их вместе и тому подобное.

Я поиграл с перехватом команд между xterm и node-pty, и это было катастрофой. Сейчас я подумываю о том, чтобы просто написать bash сценарии для команд и попросить установщика разместить их там, где они должны быть, чтобы их можно было использовать.

Просто интересно, какие у меня варианты, спасибо.

1 Ответ

1 голос
/ 02 февраля 2020

Вы можете просто поместить все свои исполняемые файлы в каталог, который вы добавляете в PATH при вызове оболочки в эмуляторе терминала.

Команды будут доступны пользователю, как и любые другие, в любом конструкция, которая принимает команды, независимо от пользовательской оболочки или версии оболочки (т.е. она будет одинаково хорошо работать в bash, zsh и fish).

Если вам нужно, чтобы команды координировались с вашим эмулятором терминала (например, если вы хотите обработать команду в JS в вашем Node.js процессе), вы можете организовать это с помощью второй переменной среды, содержащей, например, хост / порт для подключения.

...