Как вставить многострочный текст в nodejs REPL без спама терминала
Я работаю с nodejs REPL через терминал Linux. У меня большая часть кода, который я хочу вставить в nodejs. Однако вставка кода приводит к тому, что терминал ненадолго станет неактивным. Это связано с тем, что REPL накладывает следующий текст на каждую строку выражения:
Array Boolean Date Error EvalError
Function Infinity JSON Math NaN
Number Object RangeError ReferenceError RegExp
String SyntaxError TypeError URIError decodeURI
decodeURIComponent encodeURI encodeURIComponent eval isFinite
isNaN parseFloat parseInt undefined
ArrayBuffer Buffer DataView FMM Float32Array
Float64Array GLOBAL Int16Array Int32Array Int8Array
Uint16Array Uint32Array Uint8Array Uint8ClampedArray _
assert buffer child_process clearImmediate clearInterval
clearTimeout cluster console crypto dgram
dns domain escape events fs
global http https module net
os path process punycode querystring
readline require root setImmediate setInterval
setTimeout stream string_decoder tls tty
unescape url util vm zlib
__defineGetter__ __defineSetter__ __lookupGetter__ __lookupSetter__ constructor
hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString
valueOf
Это немного раздражает. Я знаю, что могу обойти это, вставив его в файл и загрузив его в REPL:
.load some-file.js
Но я хочу знать, есть ли способ сделать это, вставив один, и я уверен, что для этого должно быть время и место.
Ответы
Ответ 1
Проблема заключается в том, что ваш код использует вкладки для отступов, а Node.js REPL обрабатывает вкладки как подсказки для автозаполнения.
Чтобы устранить эту проблему, используйте команду .editor
, которая игнорирует вкладки:
$ node
> .editor
// Entering editor mode (^D to finish, ^C to cancel)
function a() {
console.log('hello world');
}
a();
// type ^D here
hello world
undefined
>
.editor
- это функция, добавленная в Node.js v6.4.0, поэтому, если вы используете версию старше, чем что вам не повезло.
Ознакомьтесь с Node.js documentation для получения дополнительной информации об этих специальных командах REPL.
Ответ 2
Просто поместите двойные кавычки вокруг всего
"aaa bbb ccc ddd"
и вставьте его, включая те кавычки