-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please add support for Curv #411
Comments
Extracted from this XML: Keywords1: show_ifield i_linear i_radial i_concentric i_gyroid i_animate Keywords2: complement union difference intersection symmetric_difference row smooth chamfer Keywords3: move rotate reflect scale at stretch shear local_taper_x local_taper_xy twist bend colour extrude revolve repeat offset shell pancake morph loft perimeter_extrude make_texture texture swirl Keywords4: circle ellipse square rect regular_polygon polygon vertices stroke polyline half_plane slice sphere ellipsoid cylinder cone capped_cone torus box prism tetrahedron cube octahedron dodecahedron icosahedron capsule half_space gyroid make_shape dist nothing everything Keywords5: if else for let in do local until while by exec select parametric Keywords6: pi tau phi e abs sign floor ceil trunc round frac max min sum product sort mod rem sqrt log clamp lerp smoothstep deg sin cos tan cis asin acos atan phase sec csc cot sinh cosh tanh asinh acosh atanh mag cmul csqr not and or xor bit mag normalize dot cis perp cross idmatrix transpose count concat reverse map filter reduce contains defined fields merge match call compose id Keywords7: file include lipschitz show_axes show_bbox set_bbox show_dist show_gradient Keywords8: is_bool is_num is_symbol is_string is_list is_record is_vec2 is_vec3 is_func is_primitive_func ensure test print warning error assert assert_error @SpartanJ This language has so many keywords. As I know, ecode only supports up to |
"keywords" are just used to identify each set of symbols between a group, in a highlighter case it's just a reference for a color in a set. In this case there was a coincidence that they use also "keyword[number]" to refer for these group sets, but it's not necessary to match 1 to 1 or anything like that, you'll just need to pick a color for each group. Current colors are (i'll add this to the documentation after this post):
So you can basically use any of these for coloring Curv keywords groups. |
It's up to the OP who is the user of this language and is assumed to understand this language to categorize these keywords into |
@SpartanJ Is |
"symbol" fallbacks the word captured into the "symbols" list and matches against any word in that list, if not word is found it will be the same as "normal", but "symbol" is used with the intention of searching the word in a list. Example: captures that pattern as a symbol and searches the symbol into the "symbols" list, let's say symbol was "then", so then in that list uses the type name "keyword" as a color, if captured word isn't on that list, we will fallback to type "normal".
Updated documentation is here. |
Website: https://curv3d.org/
Notepad++ UDL:
https://codeberg.org/doug-moen/curv/src/branch/master/lib/Curv_notepad_plusplus.xml
The text was updated successfully, but these errors were encountered: