aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/guide/getting_started.asciidoc
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2024-11-21 15:55:37 +0100
committerLoïc Hoguin <[email protected]>2024-11-22 14:47:20 +0100
commita6f9a450af99a7a95848dde671de658bb53a43dc (patch)
tree2852c4760ff7df0ae13a4241d191580712cf919d /doc/src/guide/getting_started.asciidoc
parentebe31ee0d271642fe7e038df150f11c66ab8aa11 (diff)
downloaderlang.mk-a6f9a450af99a7a95848dde671de658bb53a43dc.tar.gz
erlang.mk-a6f9a450af99a7a95848dde671de658bb53a43dc.tar.bz2
erlang.mk-a6f9a450af99a7a95848dde671de658bb53a43dc.zip
Move templates outside the source .mk files
Templates now no longer use Make variables for substitution but instead replace strings with their equivalent: template_name: Corresponds to n=template_name project_name: Corresponds to $(PROJECT) or in=project_name This allows defining templates outside of Makefiles. For example an external plugin could define their templates in templates/my_template.erl and then have the following in the included Makefile: tpl_my_template = $(file < $(THIS)/templates/my_template.erl) By default the created file will be in src/template_name.erl. This can be overriden with the tplp_* variable: tplp_my_template = src/model/my_template.erl Substitution is applied both to the template contents and to its path. In addition, attempting to overwrite an existing file when creating a template will result in failure.
Diffstat (limited to 'doc/src/guide/getting_started.asciidoc')
-rw-r--r--doc/src/guide/getting_started.asciidoc14
1 files changed, 13 insertions, 1 deletions
diff --git a/doc/src/guide/getting_started.asciidoc b/doc/src/guide/getting_started.asciidoc
index 5f782ca..c1e7589 100644
--- a/doc/src/guide/getting_started.asciidoc
+++ b/doc/src/guide/getting_started.asciidoc
@@ -271,8 +271,20 @@ You can list all available templates with the `list-templates`
target:
[source,bash]
+----
$ make list-templates
-Available templates: cowboy_http cowboy_loop cowboy_rest cowboy_ws gen_fsm gen_server gen_statem ranch_protocol supervisor
+Available templates:
+ cowboy_http_h
+ cowboy_loop_h
+ cowboy_rest_h
+ cowboy_websocket_h
+ gen_fsm
+ gen_server
+ gen_statem
+ module
+ ranch_protocol
+ supervisor
+----
To generate a module, let's say a `gen_server`, all you need to
do is to call `make new` with the appropriate arguments: