Skip to content

Commit 7a77186

Browse files
committed
Merge branch 'master' into file-icons
2 parents e6c42ab + 4c90f79 commit 7a77186

19 files changed

+725
-248
lines changed

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# Change Log
22

3+
## [1.4.1] 14-Jan-2022
4+
- Fixes
5+
- Version 1.4.0 is failing to activate (#827)
6+
7+
## [1.4.0] 14-Jan-2022
8+
- Enhancements
9+
- Make `Ctrl / Cmd+T` lookup (Open Symbol by Name) check all servers connected to a multi-root workspace (#815)
10+
- Improve exporting (#818)
11+
- Improve client-side DFI workflow (#808)
12+
- Improve behavior when no Source Control class is enabled (#171)
13+
- Fixes
14+
- Displace incorrectly-published pre-release version.
15+
- Point to correct line when debugging through code with multi-line method arguments (#804)
16+
- Show menu options from correct namespace for `Studio Actions` in ObjectScript Explorer (#812)
17+
- Fix `Attempted Edit` Studio Action handling (#781)
18+
- Properly return options for the Server Command menu for isfs-readonly files (#811)
19+
- Remove `vscode-objectscript-output` language from selector (#805)
20+
321
## [1.2.2] 07-Dec-2021
422
- Fixes
523
- Exporting not working with new version 1.2.1 (#799)

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ To unlock these features (optional):
5656

5757
1. Download and install a beta version from GitHub. This is necessary because Marketplace does not allow publication of extensions that use proposed APIs.
5858
- Go to https://github.com/intersystems-community/vscode-objectscript/releases
59-
- Locate the beta immediately above the release you installed from Marketplace. For instance, if you installed `1.2.2`, look for `1.2.3-beta.1`. This will be functionally identical to the Marketplace version apart from being able to use proposed APIs.
60-
- Download the VSIX file (for example `vscode-objectscript-1.2.3-beta.1.vsix`) and install it. One way to install a VSIX is to drag it from your download folder and drop it onto the list of extensions in the Extensions view of VS Code.
59+
- Locate the beta immediately above the release you installed from Marketplace. For instance, if you installed `1.4.1`, look for `1.4.2-beta.1`. This will be functionally identical to the Marketplace version apart from being able to use proposed APIs.
60+
- Download the VSIX file (for example `vscode-objectscript-1.4.2-beta.1.vsix`) and install it. One way to install a VSIX is to drag it from your download folder and drop it onto the list of extensions in the Extensions view of VS Code.
6161

6262
2. From [Command Palette](https://code.visualstudio.com/docs/getstarted/tips-and-tricks#_command-palette) choose `Preferences: Configure Runtime Arguments`.
6363
3. In the argv.json file that opens, add this line (required for both Stable and Insiders versions of VS Code):

docs/Configuration.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ nav_order: 4
66
---
77
# Configuration
88

9-
VS Code settings enable you to customize various aspects of its function. The InterSystems extensions provide settings used to configure VS Code for ObjectScript development.
9+
VS Code settings enable you to customize various aspects of its function. The InterSystems extensions provide settings used to configure VS Code for ObjectScript development. You may find these videos from InterSystems Learning Services useful for creating a configuration that works best for you:
10+
11+
- [Working with ObjectScript Classes in VS Code for Client-Side Editing](https://learning.intersystems.com/course/view.php?id=1778&ssoPass=1)
12+
- [Configuring VS Code Workspaces for Multiple ObjectScript Connections](https://learning.intersystems.com/course/view.php?id=1783&ssoPass=1)
1013

1114
{: #code-workspaces}
1215
## VS Code Workspaces

docs/RunDebug.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ The InterSystems ObjectScript Extension provides support for ObjectScript debugg
1111
- [Debugging Intro Video](https://code.visualstudio.com/docs/introvideos/debugging)
1212
- [Debugging User Guide](https://code.visualstudio.com/docs/editor/debugging)
1313

14+
Also, InterSystems Learning Services has produced [a short video](https://learning.intersystems.com/course/view.php?id=1795&ssoPass=1) which walks through the steps in this documentation page that you may find useful.
15+
1416
## Debug Configurations
1517

1618
In order to run or debug an ObjectScript class or routine or attach to a running process, you must create a debug configuration. Some other languages default to running the currently active file, but to run ObjectScript, you must specify the routine or ClassMethod to use or the running process to attach to.

package-lock.json

Lines changed: 12 additions & 74 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "vscode-objectscript",
33
"displayName": "InterSystems ObjectScript",
44
"description": "InterSystems ObjectScript language support for Visual Studio Code",
5-
"version": "1.2.3-SNAPSHOT",
5+
"version": "1.4.2-SNAPSHOT",
66
"icon": "images/logo.png",
77
"aiKey": "9cd75d51-697c-406c-a929-2bcf46e97c64",
88
"categories": [
@@ -52,7 +52,8 @@
5252
"enableProposedApi": true,
5353
"enabledApiProposals": [
5454
"fileSearchProvider",
55-
"textSearchProvider"
55+
"textSearchProvider",
56+
"outputChannelLanguage"
5657
],
5758
"activationEvents": [
5859
"onDebug",
@@ -72,6 +73,7 @@
7273
"onCommand:vscode-objectscript.hideExplorerForWorkspace",
7374
"onCommand:vscode-objectscript.showExplorerForWorkspace",
7475
"onLanguage:objectscript",
76+
"onLanguage:objectscript-int",
7577
"onLanguage:objectscript-class",
7678
"onLanguage:objectscript-macros",
7779
"onLanguage:xml",
@@ -415,7 +417,15 @@
415417
"ObjectScript"
416418
],
417419
"extensions": [
418-
".mac",
420+
".mac"
421+
]
422+
},
423+
{
424+
"id": "objectscript-int",
425+
"aliases": [
426+
"ObjectScript INT"
427+
],
428+
"extensions": [
419429
".int"
420430
],
421431
"icon": {
@@ -465,10 +475,7 @@
465475
},
466476
{
467477
"id": "vscode-objectscript-output",
468-
"aliases": [],
469-
"mimetypes": [
470-
"text/x-code-output"
471-
]
478+
"aliases": []
472479
}
473480
],
474481
"grammars": [
@@ -482,6 +489,11 @@
482489
"text.js": "js"
483490
}
484491
},
492+
{
493+
"language": "objectscript-int",
494+
"scopeName": "source.objectscript",
495+
"path": "syntaxes/objectscript.tmLanguage.json"
496+
},
485497
{
486498
"language": "objectscript-class",
487499
"scopeName": "source.objectscript_class",
@@ -506,6 +518,11 @@
506518
"language": "objectscript-csp",
507519
"scopeName": "source.objectscript_csp",
508520
"path": "syntaxes/objectscript-csp.tmLanguage.json"
521+
},
522+
{
523+
"language": "vscode-objectscript-output",
524+
"scopeName": "source.vscode_objectscript_output",
525+
"path": "syntaxes/vscode-objectscript-output.tmLanguage.json"
509526
}
510527
],
511528
"snippets": [
@@ -516,6 +533,10 @@
516533
{
517534
"language": "objectscript",
518535
"path": "./snippets/objectscript.json"
536+
},
537+
{
538+
"language": "objectscript-int",
539+
"path": "./snippets/objectscript-int.json"
519540
}
520541
],
521542
"commands": [
@@ -1063,6 +1084,9 @@
10631084
{
10641085
"language": "objectscript"
10651086
},
1087+
{
1088+
"language": "objectscript-int"
1089+
},
10661090
{
10671091
"language": "objectscript-class"
10681092
}
@@ -1205,7 +1229,7 @@
12051229
"glob": "^7.1.6",
12061230
"iconv-lite": "^0.6.0",
12071231
"mkdirp": "^1.0.4",
1208-
"node-fetch": "3.0.0",
1232+
"node-fetch-cjs": "3.1.1",
12091233
"vscode-cache": "^0.3.0",
12101234
"vscode-debugadapter": "^1.41.0",
12111235
"vscode-debugprotocol": "^1.41.0",

snippets/objectscript-int.json

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
{
2+
"ForOrder": {
3+
"prefix": ["For"],
4+
"body": [
5+
"Set ${1:key} = \"\"",
6+
"For {",
7+
"\tSet $1 = \\$ORDER(${2:array}($1))",
8+
"\tQuit:$1=\"\"",
9+
"\t${3:// process $2($1)}",
10+
"}"
11+
],
12+
"description": "Iterate array with $Order"
13+
},
14+
"SQL Statement": {
15+
"prefix": ["sql"],
16+
"body": [
17+
"Set rs = ##class(%SQL.Statement).%ExecDirect(,\"SELECT ${1:*} FROM ${2:table}\")",
18+
"While rs.%Next() {",
19+
"\t${0:Write rs.ID, !}",
20+
"}"
21+
],
22+
"description": "Prepare and execute SQL Query, then iterate result set 'rs'"
23+
},
24+
"For": {
25+
"prefix": ["For"],
26+
"body": [
27+
"For ${1:i} = ${2:1}:${3:1}:${4:9} {",
28+
"\t${0:Write $1, !}",
29+
"}"
30+
],
31+
"description": "Typical For loop"
32+
},
33+
"For Each": {
34+
"prefix": ["For"],
35+
"body": [
36+
"For ${1:value} = \"${2:Red}\",\"${3:Green}\",\"${4:Blue}\" {",
37+
"\t${0:Write $1, !}",
38+
"}"
39+
],
40+
"description": "Loop through series of values"
41+
},
42+
"Do While": {
43+
"prefix": ["Do", "While"],
44+
"body": [
45+
"Do {",
46+
"\t$0",
47+
"} While (${1:1 /* condition */})"
48+
],
49+
"description": "Do While loop"
50+
},
51+
"While": {
52+
"prefix": ["While"],
53+
"body": [
54+
"While (${1:1 /* condition */}) {",
55+
"\t$0",
56+
"}"
57+
],
58+
"description": "While loop"
59+
},
60+
"Try Catch": {
61+
"prefix": ["Try"],
62+
"body": [
63+
"Try {",
64+
"\t$0",
65+
"}",
66+
"Catch ex {",
67+
"\tSet tSC=ex.AsStatus()",
68+
"}"
69+
],
70+
"description": "Try Catch"
71+
}
72+
}

0 commit comments

Comments
 (0)