Erlang 忽略shell中的模块名

Erlang 忽略shell中的模块名,erlang,Erlang,我在Erlangshell中经常使用单个模块。有没有什么快捷方式可以让我在输入命令时省略模块:前缀?我不这么认为 但是您仍然可以在shell中使用制表符补全来简化操作 模块的制表符完成可以通过以下方式实现: > l(foo). 或者第一次从该模块手动调用任何函数。我不这么认为 但是您仍然可以在shell中使用制表符补全来简化操作 模块的制表符完成可以通过以下方式实现: > l(foo). 或者第一次从该模块手动调用任何函数。您不能省略模块名称,但可以使用变量键入较少的内容: 1&

我在Erlangshell中经常使用单个模块。有没有什么快捷方式可以让我在输入命令时省略模块:前缀?

我不这么认为

但是您仍然可以在shell中使用制表符补全来简化操作

模块的制表符完成可以通过以下方式实现:

> l(foo).
或者第一次从该模块手动调用任何函数。

我不这么认为

但是您仍然可以在shell中使用制表符补全来简化操作

模块的制表符完成可以通过以下方式实现:

> l(foo).

或者第一次从该模块手动调用任何函数。

您不能省略模块名称,但可以使用变量键入较少的内容:

1> lists:seq(1,10).
[1,2,3,4,5,6,7,8,9,10]
2> L = lists, S = seq.
seq
3> L:S(1,10).
[1,2,3,4,5,6,7,8,9,10]

不能省略模块名称,但可以使用变量少键入:

1> lists:seq(1,10).
[1,2,3,4,5,6,7,8,9,10]
2> L = lists, S = seq.
seq
3> L:S(1,10).
[1,2,3,4,5,6,7,8,9,10]

您可以通过定义用户默认模块来扩展shell命令:

-module(user_default).

-export([seq/2]).

seq(A,B) -> lists:seq(A,B).
确保编译的模块位于代码路径中

Eshell V5.7.5  (abort with ^G)
1> seq(1,4).
[1,2,3,4]
2>

您可以通过定义用户默认模块来扩展shell命令:

-module(user_default).

-export([seq/2]).

seq(A,B) -> lists:seq(A,B).
确保编译的模块位于代码路径中

Eshell V5.7.5  (abort with ^G)
1> seq(1,4).
[1,2,3,4]
2>

我先做了模块名,然后做了模块名:函数名的开始名,但它从来没有填入名称。这听起来很奇怪。您正在运行哪个版本的Erlang?Zed的方法就是实现您的要求。为了将来参考,5.7.4是Erlang erts版本。正确的Erlang版本类似于R13B04或类似版本。在Emacs下,制表符完成对我也不起作用。尝试在终端中打开Erlang shell,然后尝试在那里完成tab。你可能想提出一个新的SO问题来理解为什么制表符完成在Emacs中不起作用。我先做了模块名,然后做了模块名:函数名的开始名,但它从来没有填入名称。这听起来很奇怪。您正在运行哪个版本的Erlang?Zed的方法就是实现您的要求。为了将来参考,5.7.4是Erlang erts版本。正确的Erlang版本类似于R13B04或类似版本。在Emacs下,制表符完成对我也不起作用。尝试在终端中打开Erlang shell,然后尝试在那里完成tab。您可能想提出一个新的SO问题来理解为什么选项卡完成在Emacs中不起作用。我不知道这件事。简直太棒了我不会使用这个或任何简单的方法,很难,因为我认为一个好的东西总是区分用户定义的模块和非用户定义的模块。+ 1。我不知道这件事。简直太棒了我不会使用这个或任何简单的方法,很难,因为我认为一个好的东西总是区分用户定义的模块和非用户定义的模块。