Skip to content

PythooonUser/vscode-floyd-language-support

Repository files navigation

vscode-floyd-language-support

Language Marketplace Twitter License

This is an extension for the code editor VS Code that adds language support for the programming language Floyd. Floyd is used to write classical text adventures (in German only).

You can find out more about the current development of the project by visiting the extension repository on GitHub.

Features

The Floyd language extension currently adds the following features:

  • Comment Toggling
  • Bracket Autoclosing
  • Bracket Autosurrounding
  • Code Section Folding
  • Indentation Rules
  • Syntax Highlighting
  • Code Snippets

For the future many more features are planned, like more complex syntax highlighting, code intellisense, code completion, signature help for built-in functions etc.

Please note that development goes slowly since this is a free-time project only.

Syntax Highlighting

Advanced syntax highlighting is applied to .floyd source code files, including string colorization for verb definitions, short names and class name display.

The following example is taken from the game Download (Oliver Berse, 2004) using the Dark+ color theme:

Syntax Highlighting Example

Snippets

The extension also adds several snippets in order to enhance the coding experience for power users by providing pre-defined code sections for common-used operations.

  • Include Directive
  • Include Standard Library
  • Define Directive
  • Ifdef Directive
  • Ifndef Directive
  • Class Declaration
  • Abstract Class Declaration
  • Room Declaration
  • Abstract Room Declaration
  • Exit Declaration
  • Abstract Exit Declaration
  • Item Declaration
  • Abstract Item Declaration
  • Creature Declaration
  • Abstract Create Declaration
  • Verb Statement
  • If Statement
  • If-Else Statement
  • Switch Statement
  • Fetch Statement
  • For Loop
  • While Loop
  • Do-While Loop

Known Issues

No known issues.

If you find a bug, have a question or feature request, please feel free to create an issue or reach out to me on Twitter. I try to answer your issue as fast as possible. Please note, however, that my support for this extension is limited, because I build it in my free time and therefore development goes slowly.

Release Notes

For further details please refer to the CHANGELOG.

License

MIT. See the license document for the full text.