rsklippy / amxxpawn-language Goto Github PK
View Code? Open in Web Editor NEWAMXXPawn Language Service for Visual Studio Code
AMXXPawn Language Service for Visual Studio Code
Add the property to detect 'definitions' and 'constants' from all 'include' elements. and their appearance like forward, natives.
https://forums.alliedmods.net/showpost.php?p=2753638&postcount=167
The latest version of this extension doesn't work with the latest version of VS Code.
Because when you click on Compile Plugin or Compile Plugin Locally, it will always give an error "command amxxpawn.compile not found".
I searched through stackoverflow and found that you need to activate the commands on "activation events" section in the "package.json" file and then recompile it.
After recompiling, it works fine as it is expected.
Klippy please update the extension by doing the following fixes, else if no one is going to do these, then I might publish the fixed version in the market place.
There is a bug using switch() - default. Here is an example: https://i.imgur.com/krUdpX9.jpg
if a function is not defined as stock/native/public the "Go to Definition" is not working.
It looks like the first character of the symbol is missing, if there is no stock/native/public in front of the function name.
(I verified that with the "Code Outline" Extension)
my settings:
"amxxpawn.compiler.executablePath": "C:\\Users\\grs\\Downloads\\amxxpc.exe", "amxxpawn.compiler.includePaths": [ "C:\\Users\\grs\\source\\repos\\tower-defense\\addons\\amxmodx\\scripting\\include" ], "editor.renderWhitespace": "all", "amxxpawn.compiler.showInfoMessages": true
All paths are proper. Go to definition not working, but syntax highlight works
Is not possible to set global settings in paths for code highlighting & compilation settings.
As example for i want:
/.vscode/settings.json
"amxxpawn.compiler.includePaths": [
"${workspaceRoot}/hlds/cstrike/addons/amxmodx/scripting/include",
// Local folder with working AMXMODX & another default includes.
"${env:AMXX_PATH}/scripting/include"
]
Now it's not works.
But, vscode supports them (Environment variables) in tasks.json as i know.
Configuration example:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "Compile AMXX Plugin with all debug (D3)",
"type": "shell",
"windows": {
"command": "${env:AMXX_PATH}/scripting/amxxpc.exe",
},
// "linux": {
// "command": "${workspaceRoot}/scripting/amxxpc",
// },
"args": [
"${workspaceRoot}/hlds/cstrike/addons/amxmodx/scripting/plugin.sma",
"-i${env:AMXX_PATH}/scripting/include",
"-i${workspaceRoot}/hlds/cstrike/addons/amxmodx/scripting/include",
"-o${env:AMXX_PATH}/plugins/plugin.amxx",
"-d3"
],
"promptOnClose": false,
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
// "reveal": "never", // "never" or "always" when we need to see also console output
"reveal": "always",
"panel": "dedicated",
"clear": true
},
"problemMatcher": {
"fileLocation": "absolute",
"pattern": {
// Group 1 - filename (absolute path for filename)
// Group 2 - beginning line
// Group 3 - ending line (optional)
// Group 4 - error | warning (severity)
// Group 5 - message
"regexp": "(.+?)\\((\\d+)(?:\\s--\\s(\\d+))?\\)\\s:\\s(warning|error)\\s\\d+:\\s(.*)",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
}
]
}
as example, windows environment variables settings.
%AMXX_PATH% = F:\\hlds\\cstrike\\addons\\amxmodx
jumping to enum(s) like Ham_Think doesn't work, which makes more difficult to refer to those constants. Please support that.
Is it possible to define a main file for a project, where the project is starting?
I'm working with a lot of different include files e.g. main.pwn with includes file1.inc and file2.inc, ...
If I'm working in file1.inc, I do not "see" the functions of file2.inc (as it is if I'm working in main.pwn)
It would be great to define the main.pwn as starting point.
Thanks in advance
Jürgen
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.