Autocompletion and #include improvements#53
Autocompletion and #include improvements#53FalsePattern wants to merge 25 commits intormordechay:mainfrom
Conversation
|
I'm looking very much forward to these improvements, but what happened to the .glsl_idea_root marker file you mentioned in the other PR? I read the code from my phone, and I'm unfamiliar with both the language and architecture, so maybe I just missed it? It would be great if instructions for either solutions were documented somewhere. Anyway thank you very much for your work 🙏 |
|
oops, i accidentally missed that commit while splitting up the PR, thanks for pointing it out! |
(cherry picked from commit cb85067)
(cherry picked from commit a946fe0)
(cherry picked from commit 785d40f)
(cherry picked from commit f2e6191)
(cherry picked from commit c2bea6a)
(cherry picked from commit dc804ec)
(cherry picked from commit bed3874)
(cherry picked from commit 938bcdf)
(cherry picked from commit caf06f5)
(cherry picked from commit 6a8fec0)
(cherry picked from commit 0ba4abc)
(cherry picked from commit 3c8a6e7)
(cherry picked from commit 24e4a12)
(cherry picked from commit f4a8eb3)
(cherry picked from commit a1d243b)
(cherry picked from commit a2368e9)
(cherry picked from commit c16f9ae)
|
Sorry about taking so long to fix this pr, but the rebased version should work properly. Commit 6f39fa8 slightly modifies the infinite recursion guard to work on the current chain of includes instead of a list of total encountered included files |
…ifferent nested includes This makes patterns like this work: /frag/main.glsl: #include "/common/utils.glsl" #include "/frag/lighting.glsl" ... /frag/lighting.glsl: #include "/common/utils.glsl" ...
|
Any progress on this? |
(cherry picked from commit 3a45a57)
|
Additional changes by @drouarb:
|
With this one, something like
#include "/foo.glsl"will walk up the file tree, looking for this directory:shaderpacks/<any directory name>/shaders/, and evaluates the absolute path as a child path of this directory#versionversion number, and also added autocompletion for thecore/compatibility/esversion suffixes#includeautocompletion#import <sodium:include/fog.glsl>statement#importand#includeclickable referenceuint *data;bool a = true==true;Supersedes #47 (part 3 of 4)
Unfortunately I was not able to break up this batch of commits into even smaller PRs, as a lot of them depend on changes in preceding commits, and removing those cross-commit dependencies would make merging the split pull requests a pain.