Feature request: add GDScript (Godot) language support
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 48/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- godot, javascript, lua
Hướng nghiên cứu
Read the Supported Languages section in README.md and the registrations in extraction/languages/index.js; compare how existing language extractors are wired. The issue leaves open whether to use a native tree-sitter grammar or extend extraction/languages/lua.js, so first determine which approach fits the project. Done means .gd files are indexed and the listed GDScript symbols can be queried.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Feature request: add GDScript (Godot) language support
Summary
GDScript — the primary scripting language for Godot Engine 4.x projects — is not currently in the list of supported languages (README.md "Supported Languages" section and extraction/languages/index.js registrations).
Why it matters
GDScript is one of the highest-popularity languages in the indie / open-source game-dev ecosystem, and Godot projects have characteristics that CodeGraph's pre-indexed model is particularly well-suited for:
- Heavy cross-file references: Godot scenes, autoloads, and signals create a dense
extends/class_name/@onready/signalgraph across many.gdfiles. Today this requiresgrep + Readto reconstruct, which is exactly the workflow CodeGraph replaces. - Auto-sync fits the iterative gameplay-loop: CodeGraph's "index updates on every file change" model is a natural fit for the gameplay / UI iteration cycle Godot projects go through.
Concrete repro
- Run
codegraph initin a Godot 4 project (any project with.gdfiles inscripts/). codegraph statusreports0 filesindexed for any language matching.gd.- No
codegraph_explore/codegraph_queryresults return symbols defined in.gdfiles.
Expected: the 145 .gd files in a typical Godot project should appear under Files by Language, and GDScript symbols (class_name, func, signal, extends, var, @onready, preload, load) should be queryable.
Proposed approach
There are two reasonable paths; happy to send a PR either way:
A. Native tree-sitter grammar — tree-sitter-gdscript is maintained (https://github.com/PrestonKnopp/tree-sitter-gdscript) and already vendored by some tools. Mirrors how the other 27 languages in extraction/languages/ are wired.
B. Extend the existing Lua extractor — Given the recent Lua-parser work (#1616, #1617), GDScript's Lua-influenced syntax (block-by-indent, func/var declarations, extends/signal/class_name keywords layered on top) could be supported by extending extraction/languages/lua.js with a thin GDScript overlay rather than maintaining a separate extractor. Faster to land, naturally benefits from the same edge / dynamic-dispatch resolution infrastructure the Lua extractor is being improved with right now. Less accurate than a native grammar, but unblocks Godot users quickly.
Environment
- CodeGraph v1.5.0 (
/opt/homebrew/bin/codegraphvianpm i -g @colbymchenry/codegraph) - macOS arm64
- Test project: a Godot 4 project with ~145
.gdfiles and ~50.tscnscene files
Thanks — happy to iterate on the design.
- Ngôn ngữ chính
- C
- Star
- 73.2k
- Fork
- 4.7k
- Merge trung bình
- 4 giờ 46 phút
- Pull request đã merge (30 ngày)
- 478
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của colbymchenry/codegraph
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
colbymchenry/codegraph#2634 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Windows: bundled Node v24.16.0 can abort at exit (nodejs/node#56645); please bundle Node >= 24.20.0Có thể đã có người làm @Ancienttwo đã nhận 4 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
colbymchenry/codegraph#2617 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Invalid regular expression: /\boperator++\s*(?:<[^<>()]*>)?\s*\(/: Nothing to repeat (v1.6.2)Đang mở
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 72/100
colbymchenry/codegraph#2482 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
codegraph ui - does not workĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
colbymchenry/codegraph#1900 · 2 bình luận · 5 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
colbymchenry/codegraph#1700 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của colbymchenry/codegraph
Issue tương tự
-
[WinReg] update to v12.0.0Đang mởcategory:port-update
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 2 ngày
-
feat(palindrome): add C solutionCó thể đã có người làm @aadiitya2007 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
techcsispit/code-corner#58 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[LOGO] Add Ruxt Linux LogoĐang mởlogo request
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
fastfetch-cli/fastfetch#2661 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Mark ignored Mac OS partitions RecoveryOSContainer and iBootSystemContainerCó thể đã có người làm @meven đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
storaged-project/udisks#1559 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 71/100
awslabs/aws-checksums#121 ·