Giter Club home page Giter Club logo

vscode-gcode-syntax's Introduction

Version Installs Rating

GitHub Issues Github Stars Github Last Commit MIT License

Follow @appliedengdesign




VSCode G-Code Syntax is the premier extension for editing G-Code inside of VSCode. Going past the simple syntax highlighting, this extension aims to turn your editor into a full blown g-code management suite. Building on the features of VSCode like Intellisense, snippets, debugging and more, we are able to offer nearly all of the features you would see in very expensive proprietary editors.

Additionally, by editing your G-Code inside of VSCode, you can take advantage of source control using Git to manage your g-code file versions.

Screenshot

VSCode or Visual Studio Code is a FREE (as in beer), open source application for editing code of all kinds of programming languages. To make it even better, there is a great marketplace where you can download and add extensions to the application to support other languages, add features and more.

Support VSCode-G-Code-Syntax

G-Code Syntax is generously offered to everyone free of charge, if you find it useful, please consider supporting the project by becoming a sponsor, sharing it, and letting your friends know!

Also, please write a review, star me on GitHub, and follow me on Twitter or Instagram.

You can also subscribe to our videos over on YouTube.

Features

This extension adds language syntax for CNC G-Code, code snippets, and colorization.

Tree View

  • Tree View shows an overview of the operations in the G-Code Program

Tree Screenshot

Stats View

  • Stats View shows a number of stats like tool changes, runtime, etc.

Stats Screenshot

Hovers

  • Hovering over G/M codes will show a short description of the code
  • Descriptions for the codes are taken from the sister project: gcode-reference
  • Hovers are dependent on the machine type selected

Hovers Screenshot

Status Bars

  • G-Code adds three informative sections to the VSCode status bar area
    • Tree Status (Dirty or Up to Date) depending on Refresh needed
    • Current units as set by settings (Auto, Inch or Metric)
    • Machine Type as set by settings
    • Ok there's a little heart there too.

Status Bar Screenshot

Context Menu

  • G-Code adds several commands to the context menu when viewing g-code
    • Change selected code into a comment
    • Refresh Stats
    • Refresh Tree
    • Remove Comment from selected code

Context Menu Screenshot

Current Supported File Extensions

| .001   | .apt | .aptcl | .cls   | .cnc | .din | .dnc | .ecs |
| .eia   | .fan | .fgc   | .fnc   | .g   | .g00 | .gc  | .gcd |
| .gcode | .gp  | .hnc   | .knc   | .lib | .m   | .min | .mpf |
| .mpr   | .msb | .nc    | .ncc   | .ncd | .ncf | .ncg | .nci |
| .ncp   | .ngc | .out   | .pim   | .pit | .plt | .ply | .prg |
| .pu1   | .rol | .sbp   | .spf   | .ssb | .sub | .tap | .xpi | 

If you would like another file extension supported by this extension, please open an issue.

Installation

Install from Extensions Marketplace or manually install the vsix file.

Usage

Install & activate extension. Extension activates when you open a file marked for the gcode language.

Tree view is enabled by default and can be access from the G icon on the activity bar.

G-Code Syntax Settings

G-Code Syntax is customizable and provides many configuration settings to allow the personalization of almost all features.

Name Description
gcode.general.hovers.enabled Enable or Disable the hovers to show G-Code information
gcode.general.machineType Choose the machine type for extension (Mill is default)
gcode.general.statusBars.enabled Enable or Disable the G-Code status bars
gcode.general.statusbars.alignment Choose the alignment of the status bars (Left is default)
gcode.general.units Choose the units for the file. Options are Auto, Inch or Metric
gcode.views.maxAutoRefresh Value for limiting the autoRefresh maximum lines
gcode.views.navTree.autoRefresh Tree auto-refreshes as changes are made to the g-code. ( Disabled by default )
gcode.views.stats.autoRefresh Auto-refresh the stats view when changes are made to the g-code. (Disabled by default)
gcode.views.webviews.enabled Enable or disable the webviews

Settings Screenshot

Known Issues

Please visit our GitHub Issues page for any open issues.

TODO

  • Add more snippets
  • Add additional tree items.
  • More Statistics
  • Line Numbering
  • G-Code Debugging
  • Backplotter
  • Semantic Highlighting
  • Programmatic Language Server

Visit our projects page for future roadmaps.

Changelog

Latest Version: v0.6.2

Please refer to our CHANGELOG doc.

Contributing

If you work like to help contribute to the code or this project, please fork away and submit pull requests!

For more information on contributing, please refer to the CONTRIBUTING doc.

About Applied Eng & Design

We are a full service engineering and design firm, specializing in CAD/CAM, CNC milling, rapid prototyping, training and more. We also like to dabble in Arudino / RaspberryPi projects, electronics, drones and robotics projects! Subscribe to our YouTube channel for videos on our projects, screencast tutorials, and more!

Follow us on Twitter & Instagram, and like our Facebook Page!

License

This extension is licensed under the MIT License.

vscode-gcode-syntax's People

Contributors

imgbotapp avatar mikecentola avatar patcon avatar

Watchers

 avatar  avatar

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.