297 Commits

Author SHA1 Message Date
Nathan Lovato
b6b864e3bf Use with-eval-after-load for hideshow
From the dev of Doom Emacs: "That package isn't guaranteed to be loaded when
this major mode activates, and it will throw a void-variable error if it isn't."
2020-02-15 20:11:38 -06:00
Nathan Lovato
2909ff0c35 Use constants and eval on compile for completion keywords 2020-02-15 20:08:56 -06:00
Nathan Lovato
98274b4b52 Add autoload cookies to gdscript-mode.el
When installing packages from a package-manager, this will help defer execution
and loading of the package until the corresponding symbols are actually called.*

*At least, if I understood this correctly.
2020-02-15 19:54:36 -06:00
Nathan Lovato
2e31a15c95 Add basic auto-completion support
This adds support for all the keywords found in the data/* directory using
Emacs's built-in completion system.
2020-02-15 18:18:25 -06:00
Nathan Lovato
50822e7189 Rename data files to *.txt
This makes it clear they're plain text files, and lists of strings.
2020-02-15 16:33:29 -06:00
Nathan Lovato
2c05bed515 Supress unused lexical argument warnings 2020-02-15 14:25:16 -06:00
Nathan Lovato
fabbc7a7bb Split package into several modules
Closes #19
2020-02-15 14:23:49 -06:00
Nathan Lovato
0c3791e885 Add gitinore 2020-02-15 14:14:44 -06:00
Nathan Lovato
b352c3d592 Fix error when calling imenu in a gdscript file 2020-02-14 21:36:04 -06:00
Nathan Lovato
e9bee17a36 Fix compilation error in gdscript-rx 2020-02-14 21:33:07 -06:00
Nathan Lovato
15042b1f02 Move language keywords to individual text files
This will make it easier to update the keywords from Godot's source code, using
the shell.
Also, this makes the gdscript-mode buffer faster to parse and more performant
when viewing it.

Part of #19
2020-02-14 21:30:59 -06:00
Nathan Lovato
d174438496 Move imenu code to its own file, gdscript-imenu.el 2020-02-14 21:30:14 -06:00
Nathan Lovato
615b3e19b5 Fix incorrect regex to detect static function
Fix #17
2020-02-14 18:23:47 -06:00
Nathan Lovato
ff2d400e9a Add class_name built-in keyword
Fix #16
2020-02-14 18:15:54 -06:00
Nathan Lovato
d195993c60 Add CHANGELOG, add code formatting instructions to README 2020-02-14 18:12:11 -06:00
Nathan Lovato
884c544f03 Update gdscript-mode description and update comment 2020-02-14 17:58:20 -06:00
Nathan Lovato
1f0e45da3b Add module to format code using gdformat
Closes #22
2020-02-14 17:57:36 -06:00
Nathan Lovato
b5eb183d44 Revert "Load file gdscript-rx.el in Emacs 26 and before"
This reverts commit 8026003323.
I'm having an error that the file gdscript-rx can't be found in Spacemacs, but
I'm not sure why.
2020-02-14 10:18:37 -06:00
Nathan Lovato
8026003323 Load file gdscript-rx.el in Emacs 26 and before 2020-02-14 08:36:01 -06:00
Nathan Lovato
a9902964a9 Remove obsolete alias in gdscript-rx 2020-02-14 08:35:48 -06:00
Nathan Lovato
086445a6be Add missing version check to support Emacs 27 2020-02-05 08:45:57 -06:00
Nathan Lovato
c4a5976ebb Merge branch 'ofrank123-master' 2020-02-05 08:37:01 -06:00
Oliver Frank
3d4adf08b5 Add support for .tres and .tscn files
This uses conf-toml-mode
2020-02-05 08:35:39 -06:00
Oliver Frank
acc503078d Add support for Emacs 26
This adds a copy of the rx package from Emacs 27 and adds some code that checks
the version of Emacs.
2020-02-05 08:35:07 -06:00
Oliver Frank
5111cad171 Add static keyword to block starters 2020-02-05 08:34:03 -06:00
Nathan Lovato
32d4622357 Mark utility functions as private top-level functions 2020-02-01 09:51:32 -06:00
Nathan Lovato
0b640e5a8c Remove unused utility functions 2020-02-01 09:49:34 -06:00
Nathan Lovato
0d142f3d77 Remove obsolete variable definition 2020-02-01 09:46:01 -06:00
Nathan Lovato
2e3cb46ad3 Remove unecessary docstring-related code
GDScript doesn't have docstrings, unlike Python.
2020-02-01 09:44:00 -06:00
Nathan Lovato
e6f390ef1a Replace eql with eq when checking for INT 2020-02-01 09:43:44 -06:00
Nathan Lovato
0eb5dd3209 Replace defsubst with define-inline
defsubst is apparently an obsolete macro, define-inline would offer better performances.
2020-02-01 09:32:54 -06:00
Nathan Lovato
b2c4ae72dd Remove unused function 2020-02-01 09:23:55 -06:00
Nathan Lovato
9a110dda31 Move the code to update the syntax table to the mode definition 2020-02-01 09:13:57 -06:00
Nathan Lovato
ce8a71cfd5 Remove obsolete aliases 2020-02-01 09:04:42 -06:00
Nathan Lovato
06afaea940 Add package header 2020-02-01 09:03:52 -06:00
Nathan Lovato
191265bc92 Rename use-tab-mode variable to use-tab-indents 2020-02-01 08:56:12 -06:00
Nathan Lovato
95cd7a3f57 Add list of available features to the README 2020-01-31 10:28:24 -06:00
Nathan Lovato
bb7876008f Add folding and hideshow support
Closes #9
2020-01-31 10:17:54 -06:00
Nathan Lovato
916813a621 Rename *tab-mode variable to *use-tab-mode 2020-01-31 10:17:54 -06:00
Nathan Lovato
9ae35cae52 Add customizable variable for type hints
I use it for contextual yas snippets here, to include in a future version of the
tool or as a separate package
2020-01-31 10:17:54 -06:00
Oliver Frank
3c1aa9a6d2 Fixed indentation with static functinos (#8)
* Bumped version; added doom docs; added .tscn support

* Bumped version; added doom docs; added .tscn support

* adding static to block starters
2020-01-19 18:33:57 +01:00
Oliver Frank
6f1fe6d392 Add .tscn support, bump minimum required version, update the README 2020-01-15 18:13:26 +01:00
Nathan Lovato
c5e49b6e8f Fix indent functions not working
A symbol was split into two. I also formatted the function

Fix #1
2020-01-15 09:57:39 +01:00
Nathan Lovato
147d1bd444 Port syntax, shortcuts, and regex from python.el
This adds support for imenu and correct indentation size
2020-01-14 23:03:14 +01:00
Nathan Lovato
dbc8528c0d Add syntax indent code based on Emacs 27's python.el
Add regex to read GDScript code
Add functions to detect the indents of code
2020-01-14 22:16:41 +01:00
Nathan Lovato
d936e5ce09 Add README 2020-01-14 21:46:33 +01:00
Nathan Lovato
72de1b30d5 Add the first version of GDScript-mode.el
Syntax highlighting for most keywords and built-in classes
Default variables for tab-based indents that are 4 spaces wide
2020-01-14 21:45:02 +01:00