GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - NullSablex/PawnPro-Engine: Motor LSP nativo em Rust para a linguagem Pawn — análise de includes transitivos, diagnósticos, auto-complete, hover, signature help, CodeLens e semantic tokens.

This repository was archived by the owner on Sep 20, 2026. It is now read-only.
BranchesTags
Open more actions menu

Latest commit

 

History

52 Commits
52 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
changelogs
changelogs
 
 
docs
docs
 
 
images
images
 
 
src
src
 
 
.gitignore
.gitignore
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CLAUDE.md
CLAUDE.md
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
Cargo.lock
Cargo.lock
 
 
Cargo.toml
Cargo.toml
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
SUPPORT.md
SUPPORT.md
 
 
mkdocs.yml
mkdocs.yml
 
 

Repository files navigation

Important

Este repositório foi arquivado. O motor de análise passou a fazer parte do PawnPro-Core, onde o desenvolvimento continua — é de lá que saem o código, as releases e a documentação, e é lá que vão issues e pull requests.

O histórico e as releases publicadas aqui ficam de pé, para referência.

PawnPro Engine

CI Release Rust LSP Clippy Security Audit OpenSSF Scorecard Stars License

Windows x64 Linux x64 · arm64 macOS x64 · arm64

Motor de análise para a linguagem Pawn (SA-MP / open.mp) — um servidor LSP escrito em Rust, que dá à extensão PawnPro o IntelliSense e os diagnósticos.

O que é

pawnpro-engine é o núcleo de análise do PawnPro. Roda como processo separado e conversa com o editor pelo Language Server Protocol sobre stdin/stdout — o mesmo protocolo do rust-analyzer e do clangd.

Estar fora do processo do editor é o que permite analisar um gamemode inteiro, com todos os seus includes transitivos, sem travar a digitação. Não é realce por expressão regular: o código é tokenizado e analisado de verdade, e é daí que vêm a resolução de símbolos entre arquivos, a contagem de referências e os diagnósticos com posição exata.

A extensão inicia o motor automaticamente quando encontra o binário; ele acompanha a instalação e não exige Rust nem nada instalado à parte.

Capacidades

  • Diagnósticos — 19 códigos PP#### cobrindo erros de estrutura, código morto, símbolos não declarados, depreciação, indentação, nomenclatura e #pragma malformado; 13 deles com correção automática (ver docs/diagnostics.md).
  • Completions — símbolos de todos os includes transitivos com snippets de parâmetros; itens depreciados marcados.
  • Hover — assinatura e comentário de documentação formatado (Javadoc @param e XMLdoc <summary>, o formato do omp-stdlib); em #include mostra o caminho resolvido.
  • Signature Help — parâmetro ativo destacado ao digitar ( e ,.
  • CodeLens — contagem de referências para todas as funções; clicável.
  • References — textDocument/references (Shift+F12).
  • Semantic Tokens — coloração semântica com suporte a chamadas multiline.
  • Formatação — documento inteiro e seleção de intervalo.
  • Assistente de nomenclatura — convenções de caixa por categoria, com padrão próprio por expressão regular para o que os estilos prontos não descrevem.
  • Code actions — correção automática para 13 dos diagnósticos.
  • Invalidação granular — ao salvar um include, o motor republica automaticamente os diagnósticos de todos os arquivos abertos que dependem dele, transitivamente.

Para detalhes do protocolo e das opções de configuração, consulte docs/lsp.md.

Plataformas

Plataforma Artefato
Linux x64 pawnpro-engine-linux-x64
Linux arm64 pawnpro-engine-linux-arm64
Windows x64 pawnpro-engine-win32-x64.exe
macOS x64 pawnpro-engine-darwin-x64
macOS arm64 pawnpro-engine-darwin-arm64

Os binários são compilados com LTO, strip e panic = abort — sem dependências externas em runtime.

Desenvolvimento

Pré-requisitos: Rust stable (rustup install stable)

git clone https://github.com/NullSablex/PawnPro-Engine
cd pawnpro-engine
cargo build          # debug
cargo build --release
cargo test
cargo fmt --all --check
# Exatamente o que o CI roda — sem as flags, um lint pedantic ou um aviso
# num teste passa aqui e reprova lá.
cargo clippy --all-targets -- -W clippy::pedantic -D warnings

O binário de debug é detectado automaticamente pela extensão PawnPro se estiver em ../pawnpro-engine/target/debug/ ou ../pawnpro-engine/target/release/.

Licença

PawnPro Engine License v1.0 — Source-Available (não Open Source).
Uso pessoal e comercial permitido ✅ · Redistribuição e venda proibidas ❌ · Detalhes: LICENSE.md

About

Motor LSP nativo em Rust para a linguagem Pawn — análise de includes transitivos, diagnósticos, auto-complete, hover, signature help, CodeLens e semantic tokens.

nullsablex.github.io/PawnPro-Engine/

Topics

autocompletecodelensdiagnosticsintellisenselanguage-serverlspopen-mppawnrustsampsemantic-tokensstatic-analysis

Resources

Readme
License

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity

Stars

1 star

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.