GithubHelp home page GithubHelp logo

doublefint / vscode-cos Goto Github PK

View Code? Open in Web Editor NEW
14.0 10.0 12.0 232 KB

Add Caché ObjectScript support for vscode

License: MIT License

Apex 18.53% TypeScript 81.47%
intersystems intersystems-cache cache-objectscript cacheobjectscript-udl

vscode-cos's Introduction

Known Vulnerabilities Gitter

vscode-cos (deprecated)

Note: This extension has been deprecated in favor of the vscode-objectscript.


Initial Cache ObjectScript ( COS ) language support for Visual Studio Code

Features

  • Initial InterSystems ObjectScript code highlighting support. example
  • Export existing sources to the working directory: press Ctrl+Shift+P, type 'COS', press Enter.
  • Save and compile a class: press Ctrl+F7 or select "COS: Save and compile" from Ctrl+Shift+P menu.

Installation

Install Visual Studio Code first. Open VSCode. Go to extensions and search for "ObjectScript" like it is shown on the attached screenshot and install it. Or install from ObjectScript extension page on Visual Studio Marketplace

Configure connection

To be able to use many plugin features, you need to configure the connection to Caché server first.

  • Find a 'cos.conn' section in workspace settings (File - Preferences - Settings)
  • Change settings according to your Caché instance and reload VSCode ( as temporary solution )
  • You will see Caché-related output in "Output" while switched to "cos" channel (right drop-down menu on top of the output window)

Notes

For Caché instance with maximum security level, add '%Development' role for '/api/atelier/' web-application ( More )

Language support based on https://github.com/RustamIbragimov/atom-language-cos

vscode-cos's People

Contributors

bitcomposer avatar daimor avatar doublefint avatar evshvarov avatar gevorg95 avatar nikitaeverywhere avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vscode-cos's Issues

cos->isc

Caché ObjectScript renamed to InterSystems ObjectScript.
So cos should be renamed to isc for better adoption from InterSystems IRIS users and new users.

Compile on Save

Instead of doing two separate actions save and compile better to have the option to compile on save.
With status compilation notification, when output not visible.

Import and Compile stopped working

Compile does not work at all.
In console error:

log is not a function
	at /Users/DAiMor/.vscode/extensions/doublefint.vscode-cos-0.3.3/is-api-error.js:22:9
	at Export (/Users/DAiMor/.vscode/extensions/doublefint.vscode-cos-0.3.3/extension.js:74:14)
	at IncomingMessage.res.on (/Users/DAiMor/.vscode/extensions/doublefint.vscode-cos-0.3.3/node_modules/cos-api4node/api.js:44:13)
	at emitNone (events.js:91:20)
	at IncomingMessage.emit (events.js:188:7)
	at endReadableNT (_stream_readable.js:975:12)
	at _combinedTickCallback (internal/process/next_tick.js:80:11)
	at process._tickCallback (internal/process/next_tick.js:104:9)

Different version on server

After compile server version has a different version of code, at least without any descriptions.
And automatically exported class looks different too.

Tag list in marketplace

Что за интересный набор тегов по которым предлагется искать этот плагин в marketplace?
image
cacheobjectscript так не находит
зачем в тегах COS.INC, и keybindings
почему нет тега intersystems, это первое как я пытался найти плагин для установки. пришлось искать на community ссылку в marketplace. Здесь в readme тоже бы наверно было бы хорошо дать ссылку на marketplace.

License

Could you add a license to this project?
I would like to know if this project ist also under the MIT license like your project "cos-api4node".

Thx =)

mac routine does not compile

Got error when tried to compile mac routine

You tried to compile '.' in file 'ZAUTHENTICATE.mac' 
Rename the file or routine to correspond to each other.

File with correct first line

ROUTINE ZAUTHENTICATE [Type=MAC]

Feature-Request: Import classes like Atelier it does

Is it possible that your plugin imports the classes in directories like Atelier (Eclipse) does it?
At the moment the flat-structur is very hard to use. I think it shouldnt be a big problem to create folders for each part of the classname. =)

Navigation in class by class members

In menu, Go to Symbol in File, should show the list of items where to go, and it could be the list of method names properties and other class members

Code coloring can get confused by the 'less than' operator

Try this code:

YJMbad1 ;
 s a=1
 i a<1 q
 s a=1
tag ; comment
 w $zversion
 i a'="" w (a'="")
 q

Unless you add at least one space between the < and the 1 on the third line the code colorer seems to treat <1 as the start of an HTML / XML tag, so it colors the remaining code incorrectly.

Add the space to see things as they should be.

New files after compile

when I compile file this extension creates a new file for this class, and it does not care if have another point of view how I would like to store files. I have folders for packages and files for classes, and it just ignores my structure and creates files with the full name of the class, outside of packages folders.

Compiled class should be exported after compiling

The class can be changed by compiler (e.g. introduce Storage). Storage block is the MUST to be with class definiton.
So the code should be exported in case of successful compilation and change initial file.

Atelier version is v2 no matter what you set

When trying to connect to older versions (Caché 2016) with Atelier v1, it does not get the version setting and always tries v2, so no way to connect to older version :-(
It seems like a simple change, but I have no clue about Visual Studio extensions, so can't help too much. Great Job anyway!

Compile error

Source example

Class REST.DocServer Extends %CSP.REST
{

XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
</Routes>
}

}

Compilation started on 05/31/2018 13:47:00 with qualifiers 'cuk'
ERROR #5559: The class definition for class 'REST.DocServer' could not be parsed correctly, possibly due to non-matching {} or () characters. Edit the class and correct the problem.

ERROR #5030: An error occurred while compiling class 'REST.DocServer'
Detected 1 errors during compilation in 0.011s.

if remove XMLNamespace in XData, compiles successfully.

Unrecognized system function

When you define a parameter in a class like this:

/// The programm to unzip a release
Parameter ZIPPROGRAMMVMS = "$ZIP";

you get a error: Unrecognized system function

Same issue with this line of code:

if ..toUpper(part)["$HEADER" quit ""

View Others

Ability to see generated files, View Others.

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.