workshopper / javascripting

Learn JavaScript by adventuring around in the terminal.
http://nodeschool.io
MIT License
2.86k stars 1.05k forks source link

Core/Javascripting/1.Introduction #215

Open AlexanderOpran opened 6 years ago

AlexanderOpran commented 6 years ago

On Windows 10, in PowerShell, you cannot create an empty file using the type NUL > file.extension command. The only way for the javascripting verifiy command to ever be successful is to create an empty file using the type NUL > file.extension command from CommandPrompt only. This isn't mentioned anywhere in the guide (it just says on Windows). Even if you create an empty file with $null > file.extension, the validation fails and you can't even run it with node file.extension. The same applies when you create the file in a text editor or in an IDE.

Error output when trying to verify a file that was not created in CommandPrompt using the type NUL > file.extensioncommand.

SyntaxError: Invalid or unexpected token
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:152:10)
    at Module._compile (module.js:624:28)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3)
    at Function.Module.runMain (module.js:701:10)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:618:3

    at ChildProcess.exithandler (child_process.js:272:12)
    at ChildProcess.emit (events.js:159:13)
    at maybeClose (internal/child_process.js:943:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:220:5)
  killed: false,
  code: 1,
  signal: null,

My Code

 console.log('hello');
AlexanderOpran commented 6 years ago

Solution (For PowerShell)

Use the following command when creating the empty file: New-Item -Name file.extension -ItemType File

itzsaga commented 6 years ago

Thanks @AlexanderOpran. I'll do my best to test this and see if I can replicate this week. If so, I'll work on updating the wording.