Способы начать Clojure REPL? - PullRequest
       2

Способы начать Clojure REPL?

2 голосов
/ 27 августа 2010

Назовите способы, которыми вы знаете, как запустить Clojure REPL.Какой твой любимый ?Выделяет ли это что-то для вас?

Я знаю о: 1. IDE NetBeans с плагином Enclojure и 2. Сценарий оболочки Leiningen: lein repl

Пока что мне не нравится, иЯ, конечно, хотел бы несколько цветов.

Что еще?

Ответы [ 6 ]

7 голосов
/ 27 августа 2010

Clojure REPL с подсветкой синтаксиса полностью возможен в Emacs - я написал необходимый код в ответ на очень старый вопрос здесь, на SO: Есть ли цветной REPL для Clojure? С тех пор я его настроил правильно обрабатывать подсказку и распечатки из процесса Clojure; обновленная версия доступна в этом Gist . Обратите внимание, что он предназначен для увеличения SLIME REPL и что самая последняя версия основана на достаточно свежем режиме clojure. Я собирался упаковать это должным образом, чтобы слизистые Clojurians могли просто поместить это в свои конфиги Emacs ... возможно, просто сделают это в ближайшее время.

Как еще один вариант, у меня, кажется, очень смутное воспоминание о REPL VimClojure, выделяющем ввод пользователя давно ... Хотя я определенно могу ошибаться.

Да, и, поскольку вам интересно узнать о других возможных способах запуска REPL Clojure - все плагины IDE предоставляют свои собственные REPL; вы можете использовать обычный режим inferior-lisp в Emacs; java -jar clojure.jar запускает REPL с текущим рабочим каталогом на пути к классам; если вы встраиваете swank-clojure в свое приложение, вы можете запускать серверы REPL из него; VimClojure предоставляет хороший опыт REPLing в Vim (и я считаю, что он эквивалентен M-x slime-connect , хотя, опять же, я не использовал его довольно долгое время); вы можете использовать Leiningen или clojure-maven-plugin для запуска автономных REPL или swank-экземпляров (я ожидаю, что другие инструменты сборки, поддерживающие Clojure, тоже смогут это делать); cljr может запускать REPL консоли, REPL, упакованные в окне Swing, и экземпляры swank; может быть больше.

2 голосов
/ 28 августа 2010

Если я нахожусь в Emacs или у меня где-то открыт Emacs, я обычно просто использую SLIME, подключенный к серверу swank. Таким образом, я получаю выделенный REPL и всю мощь Emacs прямо в моем REPL.

Когда у меня нет Emacs, я использую cake , чтобы запустить REPL в терминале. Я не получаю такого выделения, но вы можете получить отличную многострочную поддержку и даже завершение.

2 голосов
/ 27 августа 2010

Cljr - это REPL Clojure и менеджер пакетов Дэвида Либке.

Он удовлетворяет потребность в repl для "просто пробовать вещи".Простой repl командной строки, swing repl и swank-сервер (для использования в режиме Emacs SLIME) можно запустить с легко управляемыми зависимостями clojure и java.

2 голосов
/ 27 августа 2010

Вы можете запустить один с Redcar Editor , используя Enclojure REPL. Это сообщение в блоге содержит снимок экрана в действии. Он поддерживает цветную подсветку синтаксиса. Поддержка RedCar для clojure в целом не очень хорошая сейчас, но я работаю над улучшением опыта. Если вы попробуете, дайте мне знать, что вы думаете.

0 голосов
/ 14 апреля 2011

Вы можете использовать этот небольшой хак, чтобы «внедрить» удаленную реплику Clojure в ваше работающее приложение (с включенной удаленной отладкой, но без изменений): https://github.com/wirde/swank-inject

0 голосов
/ 29 августа 2010
#!/bin/bash
# Start Clojure REPL (assumes clojure.jar and clojure-contrib.jar are in /opt/clojure
# Don't remember where I got this originally

# GUI mode
if [ "$TERM" == "dumb" ]; then
    gnome-terminal -t Clojure -x $0 $* &
    exit
fi

breakchars="(){}[],^%$#@\"\";:''|\\"
rlwrap --remember -c -b "$breakchars" \
    java -Djava.ext.dirs=/opt/clojure clojure.main -i $HOME/.clojurerc --repl
...