📄 erlang_appwiz.el
字号:
Example: '((\"Func1\" function-one) (\"SubItem\" ((\"Yellow\" function-yellow) (\"Blue\" function-blue))) nil (\"Region Funtion\" spook-function midnight-variable))Call the function `erlang-menu-init' after modifying this variable.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Prefixing space removed from date string;;(defun erlang-skel-d-mmm-yyyy () "Return the current date as a string in \"DD Mon YYYY\" form.The first character of DD is *not* space if the value is less than 10." (let ((date (current-time-string))) (format "%d %s %s" (string-to-int (substring date 8 10)) (substring date 4 7) (substring date -4))))(defvar erlang-skel-date-function 'erlang-skel-d-mmm-yyyy "*Function which returns date string.Look in the module `time-stamp' for a battery of functions.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Fixed skeletons. erlang-add-quotes-if-needed introduced where needed.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Server templates.(defvar erlang-skel-small-server '((erlang-skel-include erlang-skel-large-header) "-export([start/0,init/1])." n n n "start() ->" n> "spawn(" (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", init, [self()])." n n "init(From) ->" n> "loop(From)." n n "loop(From) ->" n> "receive" n> p "_ ->" n> "loop(From)" n> "end." ) "*Template of a small server.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Behaviour templates.(defvar erlang-skel-application '((erlang-skel-include erlang-skel-large-header) "-behaviour(application)." n n "%% application callbacks" n "-export([start/2, stop/1])." n n (erlang-skel-separator) "%%% Callback functions from application" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: start/2" n "%% Returns: {ok, Pid} |" n "%% {ok, Pid, State} |" n "%% {error, Reason} " n (erlang-skel-separator 2) "start(Type, StartArgs) ->" n> "case 'TopSupervisor':start_link(StartArgs) of" n> "{ok, Pid} -> " n> "{ok, Pid};" n> "Error ->" n> "Error" n> "end." n n (erlang-skel-separator 2) "%% Func: stop/1" n "%% Returns: any "n (erlang-skel-separator 2) "stop(State) ->" n> "ok." n n (erlang-skel-separator) "%%% Internal functions" n (erlang-skel-separator) ) "*The template of an application behaviour.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;(defvar erlang-skel-supervisor '((erlang-skel-include erlang-skel-large-header) "-behaviour(supervisor)." n n "%% External exports" n "-export([start_link/1])." n n "%% supervisor callbacks" n "-export([init/1])." n n (erlang-skel-separator) "%%% API" n (erlang-skel-separator) "start_link(StartArgs) ->" n> "supervisor:start_link({local, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) "}, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", StartArgs)." n n (erlang-skel-separator) "%%% Callback functions from supervisor" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: init/1" n "%% Returns: {ok, {SupFlags, [ChildSpec]}} |" n "%% ignore |" n "%% {error, Reason} " n (erlang-skel-separator 2) "init(StartArgs) ->" n> "AChild = {'AName',{'AModule',start_link,[]}," n> "permanent,2000,worker,['AModule']}," n> "{ok,{{one_for_all,4,3600}, [AChild]}}." n n (erlang-skel-separator) "%%% Internal functions" n (erlang-skel-separator) ) "*The template of an supervisor behaviour.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;(defvar erlang-skel-supervisor-bridge '((erlang-skel-include erlang-skel-large-header) "-behaviour(supervisor_bridge)." n n "%% External exports" n "-export([start_link/0])." n n "%% supervisor callbacks" n "-export([init/1, terminate/2])." n n "-record(state, {})." n n (erlang-skel-separator) "%%% API" n (erlang-skel-separator) "start_link() -> " n> "supervisor_bridge:start_link({local, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) "}, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", [])." n n (erlang-skel-separator) "%%% Callback functions from supervisor_bridge" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: init/1" n "%% Returns: {ok, Pid, State} |" n "%% ignore |" n "%% {error, Reason} " n (erlang-skel-separator 2) "init([]) ->" n> "case 'AModule':start_link() of" n> "{ok, Pid} ->" n> "{ok, Pid, #state{}};" n> "Error ->" n> "Error" n> "end." n n (erlang-skel-separator 2) "%% Func: terminate/2" n "%% Purpose: Synchronized shutdown of the underlying sub system." n "%% Returns: any" n (erlang-skel-separator 2) "terminate(Reason, State) ->" n> "'AModule':stop()," n> "ok." n n (erlang-skel-separator) "%%% Internal functions" n (erlang-skel-separator) ) "*The template of an supervisor_bridge behaviour.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;(defvar erlang-skel-generic-server '((erlang-skel-include erlang-skel-large-header) "-behaviour(gen_server)." n n "%% External exports" n "-export([start_link/0])." n n "%% gen_server callbacks" n "-export([init/1, handle_call/3, handle_cast/2, " "handle_info/2, terminate/2])." n n "-record(state, {})." n n (erlang-skel-separator) "%%% API" n (erlang-skel-separator) "start_link() -> " n> "gen_server:start_link({local, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) "}, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", [], [])." n n (erlang-skel-separator) "%%% Callback functions from gen_server" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: init/1" n "%% Returns: {ok, State} |" n "%% {ok, State, Timeout} |" n "%% ignore |" n "%% {stop, Reason}" n (erlang-skel-separator 2) "init([]) ->" n> "{ok, #state{}}." n n (erlang-skel-separator 2) "%% Func: handle_call/3" n "%% Returns: {reply, Reply, State} |" n "%% {reply, Reply, State, Timeout} |" n "%% {noreply, State} |" n "%% {noreply, State, Timeout} |" n "%% {stop, Reason, Reply, State} | (terminate/2 is called)" n "%% {stop, Reason, State} (terminate/2 is called)" n (erlang-skel-separator 2) "handle_call(Request, From, State) ->" n> "Reply = ok," n> "{reply, Reply, State}." n n (erlang-skel-separator 2) "%% Func: handle_cast/2" n "%% Returns: {noreply, State} |" n "%% {noreply, State, Timeout} |" n "%% {stop, Reason, State} (terminate/2 is called)" n (erlang-skel-separator 2) "handle_cast(Msg, State) ->" n> "{noreply, State}." n n (erlang-skel-separator 2) "%% Func: handle_info/2" n "%% Returns: {noreply, State} |" n "%% {noreply, State, Timeout} |" n "%% {stop, Reason, State} (terminate/2 is called)" n (erlang-skel-separator 2) "handle_info(Info, State) ->" n> "{noreply, State}." n n (erlang-skel-separator 2) "%% Func: terminate/2" n "%% Purpose: Shutdown the server" n "%% Returns: any (ignored by gen_server)" n (erlang-skel-separator 2) "terminate(Reason, State) ->" n> "ok." n n (erlang-skel-separator) "%%% Internal functions" n (erlang-skel-separator) ) "*The template of a generic server.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;(defvar erlang-skel-gen-event '((erlang-skel-include erlang-skel-large-header) "-behaviour(gen_event)." n n "%% External exports" n "-export([start_link/0, add_handler/0])." n n "%% gen_event callbacks" n "-export([init/1, handle_event/2, handle_call/2, " "handle_info/2, terminate/2])." n n "-record(state, {})." n n (erlang-skel-separator) "%%% API" n (erlang-skel-separator) "start_link() ->" n> "gen_event:start_link({local, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) "}). " n n "add_handler() ->" n> "gen_event:add_handler(" (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", [])." n n (erlang-skel-separator) "%%% Callback functions from gen_event" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: init/1" n "%% Returns: {ok, State} |" n "%% Other" n (erlang-skel-separator 2) "init([]) ->" n> "{ok, #state{}}." n n (erlang-skel-separator 2) "%% Func: handle_event/2" n "%% Returns: {ok, State} |" n "%% {swap_handler, Args1, State1, Mod2, Args2} |" n "%% remove_handler " n (erlang-skel-separator 2) "handle_event(Event, State) ->" n> "{ok, State}." n n (erlang-skel-separator 2) "%% Func: handle_call/2" n "%% Returns: {ok, Reply, State} |" n "%% {swap_handler, Reply, Args1, State1, Mod2, Args2} |" n "%% {remove_handler, Reply} " n (erlang-skel-separator 2) "handle_call(Request, State) ->" n> "Reply = ok," n> "{ok, Reply, State}." n n (erlang-skel-separator 2) "%% Func: handle_info/2" n "%% Returns: {ok, State} |" n "%% {swap_handler, Args1, State1, Mod2, Args2} |" n "%% remove_handler " n (erlang-skel-separator 2) "handle_info(Info, State) ->" n> "{ok, State}." n n (erlang-skel-separator 2) "%% Func: terminate/2" n "%% Purpose: Shutdown the server" n "%% Returns: any" n (erlang-skel-separator 2) "terminate(Reason, State) ->" n> "ok." n n (erlang-skel-separator) "%%% Internal functions" n (erlang-skel-separator) ) "*The template of a gen_event.Please see the function `tempo-define-template'.");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;(defvar erlang-skel-gen-fsm '((erlang-skel-include erlang-skel-large-header) "-behaviour(gen_fsm)." n n "%% External exports" n "-export([start_link/0])." n n "%% gen_fsm callbacks" n "-export([init/1, state_name/2, state_name/3, handle_event/3," n> "handle_sync_event/4, handle_info/3, terminate/3])." n n "-record(state, {})." n n (erlang-skel-separator) "%%% API" n (erlang-skel-separator) "start_link() ->" n> "gen_fsm:start_link({local, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) "}, " (erlang-add-quotes-if-needed (erlang-get-module-from-file-name)) ", [], [])." n n (erlang-skel-separator) "%%% Callback functions from gen_fsm" n (erlang-skel-separator) n (erlang-skel-separator 2) "%% Func: init/1" n "%% Returns: {ok, StateName, StateData} |" n "%% {ok, StateName, StateData, Timeout} |" n "%% ignore |" n "%% {stop, StopReason} " n (erlang-skel-separator 2) "init([]) ->" n> "{ok, state_name, #state{}}." n n (erlang-skel-separator 2) "%% Func: StateName/2" n "%% Returns: {next_state, NextStateName, NextStateData} |" n "%% {next_state, NextStateName, NextStateData, Timeout} |" n "%% {stop, Reason, NewStateData} " n (erlang-skel-separator 2) "state_name(Event, StateData) ->" n> "{nextstate, state_name, StateData}." n n (erlang-skel-separator 2) "%% Func: StateName/3" n "%% Returns: {next_state, NextStateName, NextStateData} |" n "%% {next_state, NextStateName, NextStateData, Timeout} |" n "%% {reply, Reply, NextStateName, NextStateData} |" n "%% {reply, Reply, NextStateName, NextStateData, Timeout} |" n "%% {stop, Reason, NewStateData} |" n "%% {stop, Reason, Reply, NewStateData} " n (erlang-skel-separator 2) "state_name(Event, From, StateData) ->" n> "Reply = ok," n> "{reply, Reply, state_name, StateData}." n n (erlang-skel-separator 2) "%% Func: handle_event/3" n "%% Returns: {next_state, NextStateName, NextStateData} |" n "%% {next_state, NextStateName, NextStateData, Timeout} |" n "%% {stop, Reason, NewStateData} " n (erlang-skel-separator 2) "handle_event(Event, StateName, StateData) ->" n> "{nextstate, StateName, StateData}." n n (erlang-skel-separator 2) "%% Func: handle_sync_event/4" n "%% Returns: {next_state, NextStateName, NextStateData} |" n "%% {next_state, NextStateName, NextStateData, Timeout} |" n "%% {reply, Reply, NextStateName, NextStateData} |" n "%% {reply, Reply, NextStateName, NextStateData, Timeout} |" n "%% {stop, Reason, NewStateData} |" n "%% {stop, Reason, Reply, NewStateData} " n (erlang-skel-separator 2) "handle_sync_event(Event, From, StateName, StateData) ->" n> "Reply = ok," n> "{reply, Reply, StateName, StateData}." n n (erlang-skel-separator 2) "%% Func: handle_info/3" n "%% Returns: {next_state, NextStateName, NextStateData} |" n "%% {next_state, NextStateName, NextStateData, Timeout} |" n "%% {stop, Reason, NewStateData} " n (erlang-skel-separator 2) "handle_info(Info, StateName, StateData) ->" n> "{nextstate, StateName, StateData}." n
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -