{"id":36941606,"url":"https://github.com/nullsablex/pawnpro","last_synced_at":"2026-03-09T02:03:16.907Z","repository":{"id":326792348,"uuid":"1104228272","full_name":"NullSablex/PawnPro","owner":"NullSablex","description":"Extensão VS Codium/Code para Pawn/SA-MP com compilação integrada, controles de servidor RCON, hover de documentação e diagnóstico de includes.","archived":false,"fork":false,"pushed_at":"2026-03-08T19:26:08.000Z","size":381,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-03-08T22:53:46.912Z","etag":null,"topics":["gta","pawn","pawno","sa-mp"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NullSablex.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-25T23:43:16.000Z","updated_at":"2026-03-08T18:50:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/NullSablex/PawnPro","commit_stats":null,"previous_names":["nullsablex/pawnpro"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/NullSablex/PawnPro","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NullSablex%2FPawnPro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NullSablex%2FPawnPro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NullSablex%2FPawnPro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NullSablex%2FPawnPro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NullSablex","download_url":"https://codeload.github.com/NullSablex/PawnPro/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NullSablex%2FPawnPro/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30280350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T01:43:35.720Z","status":"online","status_checked_at":"2026-03-09T02:00:08.011Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gta","pawn","pawno","sa-mp"],"created_at":"2026-01-13T10:55:53.657Z","updated_at":"2026-03-09T02:03:16.894Z","avatar_url":"https://github.com/NullSablex.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PawnPro\n\nExtensão moderna para desenvolver **Pawn** no Visual Studio Code — diagnóstico de `#include`, compilação rápida, IntelliSense, CodeLens, painel de includes, *hovers* de funções e controles de servidor SA-MP.\n\n## Recursos principais\n- **Compilação em 1 clique**: _PawnPro: Compilar arquivo atual_ (`Ctrl+Alt+B`).\n- **Diagnóstico de `#include`**: marca includes inexistentes (nome simples busca em `includePaths`; caminhos relativos/absolutos resolvem a partir do arquivo).\n- **Detecção de símbolos não utilizados**: alerta para variáveis (`new`/`static`/`const`) e funções `stock` declaradas mas não usadas.\n- **CodeLens**: exibe contagem de referências acima de cada função; clique para listar todas.\n- **Signature Help**: mostra assinatura e parâmetro ativo ao digitar `(` e `,`.\n- **Auto-complete**: sugestões de funções e macros de includes e API indexados.\n- **Hover inteligente**:\n  - Em `#include`: exibe **caminho resolvido** e **Doc** do topo do `.inc` (se houver).\n  - Em funções `native/forward`: mostra **assinatura** e **Doc** (indexadas a partir das suas includes + fallbacks de nativos comuns).\n- **Aba “Includes”**: navegação pelos `.inc` ativos, com abertura direta nas assinaturas.\n- **Temas de sintaxe**: clássico e moderno (claro/escuro), com aplicação automática.\n- **Servidor SA-MP**:\n  - Start/Stop/Restart integrados e envio de comandos via **RCON (UDP)**.\n  - Canal único **”PawnPro Server”** (log + respostas RCON), *follow* configurável e *tail* do `server_log.txt` (Linux/macOS).\n  - **Segurança**: bloqueia RCON se a senha for vazia ou `changename`.\n- **Internacionalização**: mensagens em PT-BR e EN via `vscode-nls`.\n\n## Como usar (rápido)\n1. **Compilar**: abra um `.pwn` → `Ctrl+Alt+B`.\n2. **Includes**: passe o mouse sobre `#include` para ver caminho/Doc; use a aba **Includes** para explorar.\n3. **Funções**: passe o mouse sobre chamadas (ex.: `CreateVehicle`) para ver assinatura/Doc.\n4. **Servidor**: configure o executável → _PawnPro: Start Server_; envie comandos no painel do servidor (RCON).\n\n## Configuração\nTodas as configurações são gerenciadas via arquivos JSON — **não** nas configurações do VS Code:\n\n| Arquivo | Escopo |\n|---------|--------|\n| `~/.pawnpro/config.json` | Global (todos os projetos) |\n| `.pawnpro/config.json` | Projeto (sobrescreve global) |\n| `.pawnpro/state.json` | Estado do projeto (favoritos, histórico) |\n\n**Exceção:** `pawnpro.ui.separateContainer` (bool) permanece nas configurações do VS Code para controlar o posicionamento dos painéis na Activity Bar.\n\n### Principais chaves de `.pawnpro/config.json`\n\n**Compilação**\n- `compiler.autoDetect` — detectar `pawncc` automaticamente\n- `compiler.path` — caminho do executável `pawncc`\n- `compiler.args` — argumentos adicionais (ex.: `[“-i/caminho/include”]`)\n- `includePaths` — diretórios de includes; aceita `${workspaceFolder}`\n- `output.encoding` — `utf8` ou `windows1252`\n\n**Servidor SA-MP**\n- `server.path` — caminho do executável do servidor\n- `server.cwd` — diretório de trabalho\n- `server.args` — argumentos adicionais\n- `server.logPath` — caminho do `server_log.txt`\n- `server.logEncoding` — `windows1252` ou `utf8`\n- `server.clearOnStart` — limpar log ao iniciar\n- `server.output.follow` — `visible` | `always` | `off`\n\n**Interface**\n- `ui.showIncludePaths` — exibir caminhos na árvore de includes\n- `syntax.scheme` — `classic_white` | `classic_dark` | `modern_white` | `modern_dark` | `auto`\n- `syntax.applyOnStartup` — aplicar tema automaticamente na inicialização\n\n## Comandos\n- `pawnpro.compileCurrent` — Compilar arquivo atual\n- `pawnpro.detectCompiler` — Detectar compilador automaticamente\n- `pawnpro.applySyntaxScheme` / `pawnpro.resetSyntaxScheme` — Esquemas de sintaxe\n- `pawnpro.server.start` / `pawnpro.server.stop` / `pawnpro.server.restart` — Servidor SA-MP\n- `pawnpro.server.show` — Mostrar **Console**\n- `pawnpro.server.showLog` — Mostrar **Log**\n- `pawnpro.cacheStats` — Estatísticas do cache interno (debug)\n- `pawnpro.whatsNew` — Exibir painel \"O que há de novo\"\n- `pawnpro.newScript` — Criar novo script Pawn (Gamemode/Filterscript) com template padrão SA-MP\n\n## Leitura do `server.cfg`\nA extensão **lê localmente** (não modifica) para configurar o RCON:\n- `rcon_password` — senha usada para RCON (bloqueia envio se vazia ou `changename`).\n- `port` — porta do servidor (UDP). Padrão: `7777`.\n- `bind` — IP local. Se ausente ou `0.0.0.0`, assume `127.0.0.1`.\n\n\u003e **Privacidade:** o `server.cfg` é processado **apenas** no seu computador. Nenhum dado é enviado externamente. O tráfego de rede ocorre somente quando você envia um comando RCON ao seu servidor.\n\n## Requisitos\n- **Compilação:** `pawncc` acessível no caminho configurado.\n- **Servidor (opcional):** `server.cfg` com `rcon_password`; no Linux/macOS, aponte `server.logPath` para o `server_log.txt` para *tail* contínuo.\n\n## Avisos\n- Use aspas em caminhos com espaços.\n- Firewalls/antivírus podem bloquear RCON (UDP); libere a porta local se necessário.\n- Ajuste `server.output.follow` para controlar a rolagem automática do console.\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnullsablex%2Fpawnpro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnullsablex%2Fpawnpro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnullsablex%2Fpawnpro/lists"}