Giter VIP home page Giter VIP logo

vscode-s-quirrel's Introduction

vscode-(s)quirrel

Setup

  • Run VS Code;
  • Open extension marketplace panel, find and install (S)quirrel language support extension;
  • Open settings window (Ctrl+<,>) and find Extensions/(S)quirrel section;
  • Setup path to static code analyzer Squirrel/Syntax Checker/File Name executable, which default value is sq3_static_analyzer-dev. Note: you can setup name of environment variable that contains pat, either full path to file or short file name that should be discoverable by system PATH environment variable;
  • Setup path to the squirrel code runner Squirrel/Code Runner/File Name executable, with default value csq-dev. Note: you can also use name of the environmental variable, full path or short file name;
  • You are ready to go;

Some hints on usage

  • Start typing identifier name finishing with = symbol. If this key is known tou will get list of appropriate substitution values;
  • Set cursor to require() method argument with module path and press F12. If module found it will be opened in new tab;
  • Type require(" with some known characters of module file name and press Ctrl+ to get list of paths to suitable files from workspace;
  • Save document to run code checker. All found code errors will be displayed at common Problems panel;
  • Create or open document from disk and press Ctrl+ to run it. Found compile time or run time errors will be displayed at Problems pabel. All output will be displayed and highlighted at Output panel;

References

Language and syntax highlighting

Repositories

Roadmap

  • Basic squirrel syntax highlighting
  • Editor key binding to open selected module file path in new tab
  • Capture inner blocks of interpolated strings ($"{block}")
  • External syntax static analyzer
  • Whiteboard for code quick check
  • Set of common key-value pairs for table fields autocompletion (key = val1|val2 ...)
  • Definitions for common global classes, functions and constants
  • Local and cross module go to declaration
  • Autocompletion for workspace files path while typing
  • Tooltips over code tokens
  • Remove trailing spaces on document save
  • Color variance for identifiers based on their's name
  • Highlighting of JSDOC tags in documentation comment blocks /** */
  • Traversing blocks, tables, strings interpolation, function arguments etc
  • Autoidentation

vscode-s-quirrel's People

Contributors

dependabot[bot] avatar mepsoid avatar pusateam avatar vasiliyryabtsev avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

vscode-s-quirrel's Issues

Support for Electric Imp builder syntax highlighting

It would be great if this package also supported Builder syntax highlighting:

image

In the above example, it would be nice if the @if, @else, and @end all shared the same highlighting, to denote Builder branching directives.

Other builder directives, e.g. @include or @set, would benefit from highlighting as well, but I'd suggest that they be a different color than the branching directives.

Thanks for the package!

switch case indentation bug

Type the following:

switch( idx )
{
	case 1:
		break;
	case 2:
		break;
}

Go to the beginning of line case 2: and press enter

Result:

switch( idx )
{
	case 1:
		break;

		case 2:
		break;
}

Expected:

switch( idx )
{
	case 1:
		break;

	case 2:
		break;
}

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.