Допомога
MAD приймає список слів. Цей список слів складається з спеціальних слів, відомих як роздільники, або команди. Слова між командами – це аргументи для найближчої команди зліва.
MAD Manage Dependencies 5.4-14-g7810b8d
invoke = mad | mad list
list = [] | command [options] list
command = app [zero|nitro] <name> | deps | clean | compile | strip
| bundle [beam|script] <name> | man | get <repo> | up [name]
| start | stop | attach | repl | static <min>
APP
Створює нову програму із заздалегідь визначеного шаблону прикладу. MAD містить два вбудованих приклади програм: zero та nitro. Нижче наведено приклад програми zero:
$ mad app zero sample
OK
sample.app.src
{application, sample,
[{description, "sample application"},
{vsn, "0.8.0"},
{registered, []},
{applications, [kernel,stdlib]},
{mod, { sample, []}},
{env, []}]}.
sample.erl
-module(sample).
-compile(export_all).
-behaviour(application).
-behaviour(supervisor).
-export([start/2, stop/1, init/1]).
start(_, _) -> supervisor:start_link({local, ?MODULE}, ?MODULE, []).
stop(_) -> ok.
init([]) -> {ok, { {one_for_one, 5, 10}, []} }.
- mad_static — MAD Static
DEPS
$ cd sample
$ cat rebar.config
{sub_dirs,["apps"]}.
{deps_dir,"deps"}.
{deps, [
{erlydtl,".*", {git, "git://github.com/voxoz/erlydtl", [] }},
{cowboy, ".*", {git, "git://github.com/voxoz/cowboy", [] }},
{gproc, ".*", {git, "git://github.com/voxoz/gproc", [] }},
{fs, ".*", {git, "git://github.com/synrc/fs", {tag, "4.10"} }},
{sh, ".*", {git, "git://github.com/synrc/sh", {tag, "2.10"} }},
{mad, ".*", {git, "git://github.com/synrc/mad", {tag, "4.10"} }},
{active, ".*", {git, "git://github.com/synrc/active", {tag, "4.10"} }},
{nitro, ".*", {git, "git://github.com/synrc/nitro", {tag, "3.10"} }},
{n2o, ".*", {git, "git://github.com/synrc/n2o", {tag, "5.10"} }}
]}
$ mad deps
==> dependency: "git://github.com/voxoz/erlydtl" tag: []
==> dependency: "git://github.com/voxoz/cowlib" tag: []
==> dependency: "git://github.com/voxoz/ranch" tag: []
==> dependency: "git://github.com/voxoz/gproc" tag: []
==> dependency: "git://github.com/synrc/fs" tag: {tag,"4.10"}
==> dependency: "git://github.com/synrc/sh" tag: {tag,"2.10"}
==> dependency: "git://github.com/synrc/mad" tag: {tag,"4.10"}
==> dependency: "git://github.com/synrc/active" tag: {tag,"4.10"}
==> dependency: "git://github.com/synrc/nitro" tag: {tag,"3.10"}
==> dependency: "git://github.com/synrc/n2o" tag: {tag,"5.10"}
OK
GET
$ mad get kvx
==> dependency: "https://github.com/synrc/kvx" tag: []
OK
UP
$ mad up
OK
- mad_git — MAD Git
CLEAN
$ mad clean
OK
START
$ mad start
Scripting: "/Users/maxim/depot/synrc/mad/mad"
OK
ATTACH
$ $(mad attach)
Attaching to . (^D to exit)
1>
STOP
$ eval $(mad stop)
Attaching to . (^D to exit)
[EOF]
- mad_run — MAD Runner
COMPILE
$ mad compile
Writing /apps/sample/ebin/sample.app
OK
- mad_compile — MAD Компілятор
- mad_app — Файли OTP Програми
- mad_cubical — cubicaltt файли
- mad_dtl — DTL файли
- mad_erl — Erlang сирцеві файли
- mad_leex — Erlang leex файли
- mad_yecc — Erlang yecc файли
- mad_port — C/C++ файли
- mad_script — .script файли
PLAN
$ mad plan
OK
STRIP
$ mad strip
OK
BUNDLE
$ mad bundle script sample
OK
$ mad bundle beam sample
OK
- mad_release — MAD Bundler
- mad_escript — MAD escript bundler
- mad_systools — MAD BEAM release bundler
REPL
$ mad repl
$ open http://127.0.0.1:8001/app/index.htm
- mad_repl — MAD REPL