Giter VIP home page Giter VIP logo

vscode-nand2tetris's Introduction

Nand2Tetris Language README

The Visual Studio Code extenstion for Nand2Tetris Language support.

Features

  1. Support the Language HDL snippets

  2. Auto load the .tst script to check your .hdl program

  3. Auto load the .tst script to check your .asm program

  4. Quckly compress the course source to a zip that can easily commit

  5. Auto add necessary files like prog.txt into zip when compress the source

Installation

Install it from VS Code Marketplace

Run Code

Commands

  • Nand2Tetris: Run Code

    Run the HDL Code.

  • Nand2Tetris: Open Hardware Simulator

    Open the Hardware Simulator.

  • Nand2Tetris: Open Assembler Simulator

    Open the Assembler Simulator.

  • Nand2Tetris: Open CPU Simulator

    Open the CPU Simulator.

  • Nand2Tetris: Stop Running

    Stop Running Code.

  • Nand2Tetris: Compress course source to a zip

    Quckly Compress the course source.

Release Notes

Version 1.1.1

  • Support the parameter with bus

Version 1.1.0

  • Auto add necessary files like prog.txt into zip when compress the source

Version 1.0.0

  • Fixed the bug when Compress in WIN

Version 0.4.0

  • Support Compress the Course Source to a zip.

Version 0.3.1

  • Add CPU Simulator Command.

Version 0.3.0

  • Support Run Code for ASM File.

Version 0.2.8

  • Output error message when java in not installed.

Version 0.2.7

  • Add CHIP Class snippets.

  • Change extension icon.

Version 0.2.6

  • Modify the description of snippets.

Version 0.2.5

  • Fixed the bug of syntaxes.

Version 0.2.4

  • Fixed the bug of Run Code.

  • Support open Hardware Simulator in vscode.

Version 0.2.3

  • Fixed the highlight bug of chip inner.

Version 0.2.2

  • Support Run Code in OutputChannel.

Version 0.2.1

  • Add Language configuration.

Version 0.2.0

  • Add Snippets for HDL Language.

Version 0.1.1

  • Fixed the Run Code bug in windows.

Version 0.1.0

  • Support Run Code for HDL Language.

  • Add Run Code Button to Content Titile.

Version 0.0.2

  • Fixed hightlight bugs.

Version 0.0.1

  • Create the tmLanguage.

vscode-nand2tetris's People

Contributors

leafvmaple avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

vscode-nand2tetris's Issues

Fails to execute commands when the username contains blacks on Windows

This is the log from the development window console:

abstractExtensionService.ts:717 Activating extension 'leafvmaple.nand2tetris' failed: ENOENT: no such file or directory, open 'c:/Users/Sangwoo" "Shim/.vscode/extensions/leafvmaple.nand2tetris-1.1.1/assets/zip.json'.
_logMessageInConsole @ abstractExtensionService.ts:660
_logOrShowMessage @ abstractExtensionService.ts:728
$onExtensionActivationError @ mainThreadExtensionService.ts:57
_doInvokeHandler @ rpcProtocol.ts:396
_invokeHandler @ rpcProtocol.ts:330
_receiveRequest @ rpcProtocol.ts:269
_receiveOneMessage @ rpcProtocol.ts:208
(anonymous) @ rpcProtocol.ts:90
fire @ event.ts:525
fire @ ipc.net.ts:449
_receiveMessage @ ipc.net.ts:785
(anonymous) @ ipc.net.ts:642
fire @ event.ts:525
acceptChunk @ ipc.net.ts:191
(anonymous) @ ipc.net.ts:191
t @ ipc.net.ts:925
emit @ events.js:223
addChunk @ _stream_readable.js:309
readableAddChunk @ _stream_readable.js:290
Readable.push @ _stream_readable.js:224
onStreamRead @ internal/stream_base_commons.js:181
notificationsAlerts.ts:40 Command 'Nand2Tetris: Run Code' resulted in an error (command 'nand2tetris.run' not found)

Syntax Highlight Issue

See attached image. It doesn't like the multiple 'out' values with that last one being a subset. Perfectly valid syntax. Whether or not the HDL is correct or not... well... still working on that ;)

syntax highlight issue

Run VM Emulator command

Hi there, thanks for this plugin.

It would be great if there was a command to open the VM emulator tool.

Updates to ALU-nostat.hdl are not detected, unless ALU.hdl is modified

I'm working on the simplified ALU in project 2 (ALU-nostat), however, I've found an odd behavior.

I've created a file called ALU-nostat.hdl, with the contents attached.

However, what happens is that, unless I perform modifications to ALU.hdl, when running the code, the out file is not updated.

To reproduce:

  1. Save the attached file as ALU-nostat.hdl in the project/02 directory
  2. Run the code; the output file will have 0000000000000000 in the output pin
  3. Convert the (only) part to be Or16(a=false, b=true, out=out);
  4. Run the code; the output file won't change
  5. Open ALU.hdl and save it with any modification
  6. Run ALU-nostat.hdl
  7. The output file will now have 1111111111111111 in the output pin

https://open-vsx.org

Hi leafmaple,

thanks for your nand2tetris extension. It works really nice. Have you heared of codium?
The thing is, that microsoft develops vs-code in the following way:
They have a free open source project licensed under MIT license called "Code - OSS"
From this code base they build vs-code after adding proprietary extension and telemetry (data sharing).
Now for users concerned with free open source software that want the "original" MIT code editor without proprietary blobs and telemetry addons there is a repo, which uses the same code basis to build a real free alternative called "codium".

To use extensions with codium they offer an alternative marketplace
https://open-vsx.org

I would really apreciate, if you could publish your extension also on this platform, so users who are concerned about free software in the sence of freedom could enjoy using it.

For an explanation on the difference of vs-code and codium see:
https://www.roboleary.net/tools/2022/05/31/vscode-vscodium-which-should-i-use.html

Alternatively can you explain, where I can find the "*.vsix" file of your extension so I could download it and install it in the command line with "codium --install-extension xxx.vsix"

Best regards
Micha

`Run Code` output doesn't autoscroll

When executing Run Code (for HDL files), the Output panel doesn't autoscroll. This is quite annoying, since it's typical to run the code multiple times in order to debug it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.