diff --git a/src/emulator/commands/set-hostname.js b/src/emulator/commands/set-hostname.js index 9c53630..1cc7916 100644 --- a/src/emulator/commands/set-hostname.js +++ b/src/emulator/commands/set-hostname.js @@ -1,7 +1,6 @@ const { Terminal } = require("xterm"); -const original_data = Object.freeze(data); -global.orig = original_data; +const orig_ip = data.ip; /** * @@ -9,22 +8,21 @@ global.orig = original_data; * @param {Terminal} terminal */ module.exports = (argv, terminal, zsh) => { - if (argv.indexOf('--help') !== -1) { - terminal.writeln(` -Usage: ${argv[0]} [hostname] [-R] [--help] - -R Reset it to original IP (${original_data.ip}) + if (argv.indexOf('--help') !== -1 | (!argv[1])) { + terminal.writeln(`Usage: ${argv[0]} [hostname] [-R] [--help] + -R Reset it to original IP (${orig_ip}) --help Show this page` ); return 0; } if (argv.indexOf('-R') !== -1) { - data.ip = original_data.ip; + data.ip = orig_ip; zsh.update_prompt(); return 0; } - data.ip = argv[1] || 'resume.js'; + data.ip = argv[1]; zsh.update_prompt(); return 0; } \ No newline at end of file diff --git a/src/emulator/zsh.js b/src/emulator/zsh.js index ec52e87..f863c38 100644 --- a/src/emulator/zsh.js +++ b/src/emulator/zsh.js @@ -8,13 +8,6 @@ global.fs = fs; const cmds = require('./commands'); const sleep = require('../lib/sleep'); -// ZSH api to be used in commands (see references) -const zshapi = { - update_prompt, - text_prompt, - pr_char -}; - /** * @type { Terminal } */ @@ -25,6 +18,15 @@ let terminal; */ let dom; +// ZSH api to be used in commands (see references) +const zshapi = { + update_prompt, + text_prompt, + pr_char, + terminal, + dom +}; + let prompt = `\x1b[1;32muser@${data.ip} \x1b[36m~ $ \x1b[0m`; let cmd = ''; let lastcmd = window.sessionStorage.getItem('last_cmd') || ''; @@ -40,6 +42,14 @@ function text_prompt() { /** * * @param { string } char +// ZSH api to be used in commands (see references) +const zshapi = { + update_prompt, + text_prompt, + pr_char, + terminal, + dom +}; * @param { KeyboardEvent } dom */ function pr_char(char, dom) {