Я хочу использовать Prolog в SublimeREPL. Я правильно настроил интерпретатор (swipl или gprolog) в конфигурационном файле SublimeREPL, и все работает нормально, за исключением одного: the start character "?-"
строки никогда не отображаются, и если я получаю результат вроде "X=1"
, когда я нажимаю Enter, что происходит в терминал печатает точку "X=1."
и создает новую строку, начинающуюся с "?-".
В SublimeREPL нет точки, и новая строка ни с чего не начинается. Есть ли решение для такого же поведения терминала?
Неправильный запуск пролога в SublimeREPL
Ответы (1)
У меня есть частичный успех с Sublime Text 2, работающим в MacOS X, с использованием следующего содержимого файла Main.sublime-menu
:
[
{
"id": "tools",
"children":
[{
"caption": "SublimeREPL",
"mnemonic": "r",
"id": "SublimeREPL",
"children":
[
{"command": "repl_open",
"caption": "Prolog",
"id": "repl_prolog",
"mnemonic": "l",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["gprolog"],
"cwd": "$file_path",
"external_id": "prolog",
"syntax": "Packages/Logtalk/Logtalk.tmLanguage"
}
}
]
}]
}
]
Я получаю баннер запуска GNU Prolog, могу вводить запросы и получать результаты запросов. Но есть проблема, которую я еще не решил с обработкой новых строк: когда я набираю ;
, чтобы запросить у интерпретатора Пролога следующее доказательство, я не могу получить последнее. Например:
GNU Prolog 1.4.4 (64 bits)
Compiled Apr 23 2013, 17:24:33 with /opt/local/bin/gcc-apple-4.2
By Daniel Diaz
Copyright (C) 1999-2013 Daniel Diaz
| ?- member(X, [1,2,3]).
X = 1 ? ;
;
X = 2 ?
yes
| ?-
Кажется, проблема с обработкой эха и новых строк. Первый ;
повторяется, но затем у меня нет возможности ввести второй ;
после получения второго решения.
person
Paulo Moura
schedule
31.08.2013
Используя SWI-Prolog в качестве интерпретатора, я также не получаю приглашение, но нет проблем с
;
при просмотре всех решений.
- person Paulo Moura; 31.08.2013
Я пробовал с вашими настройками, но ничего не изменилось (я использую Linux Mint).
- person Chiara Doppiomalto; 31.08.2013
Какие версии GNU Prolog и SWI-Prolog вы используете? В своих тестах я использовал GNU Prolog 1.4.4 и SWI-Prolog 6.5.2.
- person Paulo Moura; 31.08.2013
GNU Prolog 1.3.0 и swipl 5.10.4 (это версия, которую я установил через apt-get)
- person Chiara Doppiomalto; 31.08.2013
Это очень старые версии. Возможно, стоит установить последние, скомпилировав из исходников, и попробовать еще раз.
- person Paulo Moura; 31.08.2013
Обновление до gprolog 1.4.2 ничего не меняет. Проблема не в старой версии.
- person Chiara Doppiomalto; 31.08.2013
@PauloMoura, не могли бы вы рассказать мне, как настроить sublimeREPL в Windows? Я скачал это для Windows swi -prolog.org/download/stable, но я не знаю, как установить его в sublimeREPL, кроме того, я скачал плагин пролога на ST2 и не смог найти способ его интерпретировать.
- person Tarek; 05.10.2013
Я не пользователь Windows, но предполагаю, что конфигурация будет аналогична той, что я написал выше. Вероятно, вам потребуется убедиться, что исполняемый файл SWI-Prolog можно найти с помощью системной переменной PATH. Однако не уверен, что вы подразумеваете под интерпретацией плагина. Плагин представляет собой каталог, и внутри него вы должны найти файл синтаксиса Prolog, путь которого ведет к конфигурации REPL.
- person Paulo Moura; 05.10.2013