Я считаю, что rlwrap (оболочка readline) хорошо работает с ansi-term и scala в emacs.Просто назовите «rlwrap scala», и у вас будет обычное редактирование строк bash, а также история, работающая правильно.В качестве бонуса ваша история будет охватывать несколько вызовов scala, поэтому вы не потеряете все, что набрали, после выхода из Scala REPL.
Если rlwrap не работает для вас, просто переключитесь на строку-Режим ansi-term (Cx Cj по умолчанию) позволит вам использовать редактирование в стиле emacs в строке, но без таких тонкостей оболочки, как история и завершение.
Ensime уже упоминался, поэтому я будуво-вторых, это отличный вариант, если вы не возражаете против установки.