Я часто использую один модуль в оболочке Erlang. Есть ли ярлык, который позволит мне пропустить модуль: префикс при вводе команд?
Вы можете расширить команды оболочки, определив модуль user_default:
-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>
Вы не можете опустить имя модуля, но вы можете ввести меньше, используя переменные:
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]
Я так не думаю.
Но вы все равно можете использовать завершение табуляции в оболочке, чтобы упростить его.
Заполнение вкладки для модуля можно выполнить, загрузив его:
> l(foo).
Или путем ручного вызова любой функции из этого модуля в первый раз.