A rebar3 plugin for auto running compile on source file change reloading modules in the shell.
Inspired by rebar3_auto
.
- Mac: fsevent
- Linux: inotify
- Windows: inotify-win
- Support custom valid extensions:
reloader_extra_exts
(default:[]
); - Support custom compile cmd:
reloader_compile_cmd
(default:rebar3 compile
); - Support custom monitor extra file directories:
reloader_extra_dirs
(default:[src, c_src]
) - Support custom compile interval:
reloader_wait_stop_change_time
(default:500
millisecond) - Strategy of auto reloading modules:
- blacklist of application:
reloader_excluded_apps
(default:[]
); - blacklist of module:
reloader_excluded_modules
(default:[]
); - save the
beam
file's compile time ,and if had new file will reload.
- blacklist of application:
Add the plugin to your rebar.config
or your global config ~/.config/rebar3/rebar.config
:
{plugins, [
{rebar3_reloader, "0.1.0"}
]}.
Then just call rebar3 reloader
directly in an existing application:
$ rebar3 reloader
1>
It will start a eshell
just like use rebar3 shell
, but different is this time it will auto compile and load the new code when you change your source code file.