Visual Studio Code SQF Extensions: Difference between revisions
(added categories) |
(→Extensions: sqf debugger) |
||
| Line 15: | Line 15: | ||
|- | |- | ||
| [https://marketplace.visualstudio.com/items?itemName=EelisLynne.sqf-wiki SQF Wiki] || Eelis Lynne || Shortcut to go to the Biki page of the selected command/function. | | [https://marketplace.visualstudio.com/items?itemName=EelisLynne.sqf-wiki SQF Wiki] || Eelis Lynne || Shortcut to go to the Biki page of the selected command/function. | ||
|- | |||
| [https://marketplace.visualstudio.com/items?itemName=billw2011.sqf-debugger SQF Debugger] || billw2011 || Debug sqf scripts (callstack, variables, breakpoints, ...) | |||
|} | |} | ||
Revision as of 22:08, 9 July 2021
This page cointains information about Microsoft's Visual Studio Code editor and how it can be used for content creation in Arma.
Extensions
The following is a list of recommended extensions. Note that it might be incomplete or out of date. You can search the marketplace for "sqf" to find new or better extensions in that case.
| Extension | Author | Remark |
|---|---|---|
| SQF Language | Armitxes | Syntax highlighter. |
| SQF-VM Language Server | X39 et al. | Language server for sqf (checks your code for errors). |
| SQF Wiki | Eelis Lynne | Shortcut to go to the Biki page of the selected command/function. |
| SQF Debugger | billw2011 | Debug sqf scripts (callstack, variables, breakpoints, ...) |
Tasks
To add tasks to your project follow these steps:
- Open the folder you are working in with VSCode
- Create a new directory at the root of it called
.vscode - Create a file called
tasks.jsoninside of that direcotry - Add the following content to it:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
// -> Tasks go here <-
]
}
The following snippets will be listed under the "tasks" tag. Tasks are seperated by a comma.
Start Arma 3 (Mission Editing)
This task launches Arma 3 and opens a mission that is located inside of your working folder directly in Eden.
{
"label": "Start Arma 3 (Mission Editing)",
"type": "process",
"options": {
"cwd": "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Arma 3" // Change to your Arma 3 installation path
},
"command": "arma3_x64", // Also possible, if available: arma3profiling_x64, arma3diag_x64
"args": [
"${workspaceFolder}\\mission.sqm", // Loads directly into editor if you have a mission folder open in VSCode
"-mod=!Workshop\\@CBA_A3;!Workshop\\@My Other Mod", // Add mods seperated by ";", absolute paths work as well
"-debug",
"-skipIntro",
"-filePatching",
"-noSplash",
"-showScriptErrors"
],
// Enable launching via shortcut "Tasks: Run Test Task"
"group": {
"kind": "test",
"isDefault": true
}
}
Stop Arma 3
Immediatly closes Arma 3. Closing the game via the X button or Alt+F4 would normally take some time. The name of the exe you are using can be found like this:
- Open task manager
- Select the "Processes" tab
- Find Arma 3
- Expand the entry
- Right click on the first sub entry
- Select "Go to details"
- The "Name" column (by default the first one) contains the exe name
{
"label": "Stop Arma 3 Diag",
"type": "shell",
"command": "taskkill",
"args": [
"/F",
"/IM",
"arma3_x64.exe" // Other values: arma3diag_x64.exe, arma3profiling_x64.exe
],
"problemMatcher": []
}
Track RPT
Changes to the RPT will be written to the Terminal window. You might need to adjust the path $env:USERPROFILE\\AppData\\Local\\Arma` 3 to your needs if you are using the -profiles startup parameter.
{
"label": "RPT Watcher",
"type": "shell",
"command": "powershell -command \"Get-ChildItem -Path $env:USERPROFILE\\AppData\\Local\\Arma` 3 -Filter *.rpt | Sort-Object LastAccessTime -Descending | Select-Object -First 1 | Get-Content -Tail 1 -Wait -Encoding utf8\"",
"problemMatcher": []
}