Code Monkey home page Code Monkey logo

sqdev's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

shemhamphorash

sqdev's Issues

Save problem

Sometimes the editor won't save with the error reort:

java.util.ConcurrentModificationException

Add framework to append code snippets on export

By this I mean something that (pre-)appends some code snippets to the actual SQF code written in the editor during export of the script.

(This could be useful in order to implement a call trace between scripts/functions or any similar things)

Restructure grammar

Restructure the grammar so that declaration references and the use of brackets gets simplified/possible.

Watch for manually added files

Process files that are manually put in the mission folder -> Ask to preserve them when exporting and eventually import them into the workspace

Make keywords case insensitive

As SQF is not case sensitive it's not necessary to make the syntax highlighting to be case sensitive.
Eventually an auto correct will be implemented that makes the commands to be spelled so that it is better readable (hintsilent -> hintSilent)

Can't open SQDevFile-editor

Caused by: java.lang.NullPointerException
    at raven.sqdev.editors.sqdevEditor.SQDevFileEditor.setKeywords(SQDevFileEditor.java:60)
    at raven.sqdev.editors.sqdevEditor.SQDevFileEditor.<init>(SQDevFileEditor.java:22)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:184)

Template framework

Implement a framework for custom code templates that can be imported and exported easily

Remove terminal duplicates

The GrammarGenerator has to refactor terminal rules so that there aren't some terminals sharing the same keywords

Implement multi syntax highlighting

The current framework of the BasicCodeEditor has to be expanded so that multiple categories of keywords can be highlighted in different colors.

Relocate some atomicContent in baseRule

If the baseRule only contains a ruleCall for the respective atomicRule the atomicRule should get deleted and the atomicRule content should get moved into the baseRule -> Less unnecessary rules

Create AST

Create an AST for the current code in the editor

Merge alternative commands

Commands that have an alternative syntax on a different command page (e.g. all those "_array" commands) should be merged into the actual command instead of being skipped.

Notes that refer to this alternative syntax should get marked as such

Remove unused ParserRules from grammar

After the grammar generation there are several rules which are not needed anymore as they are never referred to from another rule. These rules should be removed due to readability of the generated grammar.

Parse Grammar.header into ParserRules

Implement algorithm to parse the grammar content stored in the Grammar.header (user injected) as ParserRules, so that these get processed in the algorithms that fix (left-) recurison.

Add Import and Export wizards

Add these wizards so that the user can manually export his project (if he doesn't activate autoExport) and - more important - import projects into the workspace.

Code Templates

Implement the ability to use code templates in the editor

missing dependencies

vllt sollte in die readme noch ein hinweis auf erforderliche plugins. dies sind fehlermeldungen die ich hatte beim installieren:

  Missing requirement: raven.sqf 1.0.0.201506042135 (raven.sqf 1.0.0.201506042135) requires 'bundle org.eclipse.xtext [2.8.0,3.0.0)' but it could not be found

Use different thread for working

The creation of files as well as the export of a project should run in a different thread so the UI thread does not get suspended

autoExport only changed files

Currently the complete project gets exported every time a respective file is saved (when autoExport is enabled), but it should be sufficient to simply copy the saved file instead of the whole project.

Generate mission.sqm

When creating a SQDevProject an empty mission.sqm should be created within that project

Rewrite ArmACommands

Rewrite the ArmACommands using an object oriented approach.
Should lead to a better readability and better error-handling.

Wrong syntax highlighting

Sometimes parts of a word are getting highlighted although it should only get highlighted when it's seperated properly (by balnks/brackets/etc)

Improve character completion

The editor should only complete characters, when the first one is followed by a blank or EOF, but not when it's follwoed by a word...
Furthermore the completion should be disabled in strings

Add test cases

Add test cases for every function in the misc-programm.

Add format function

Add a function that formats the content taken from the BIKI into the proper format for the ArmACommands programm.

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.