07.09.2011

Prolog режим за (X) Emacs

Original on http://bruda.ca/emacs-prolog/

Така че Prolog режим, който идва с Emacs гадно. Тук е по-добра алтернатива, с всички функции, които бихте очаквали, включително и оцветяване на синтаксиса, автоматично тире, и пълноценно взаимодействие с низша процес Prolog.

Този режим се подкрепя по принцип всяка Prolog система,, че аз съм предимно го поддържа с Swi Prolog в ума. Тя също има някои специални ощипвам за GNU Prolog (започвайки от версия 1.4) и SICStus Prolog, и категорично да подкрепя близки роднини Prolog Eclipse и Меркурий.

Downloads

  • prolog.el версия 1.22 [ gzipped ] работи с Emacs 20, и по-горе и разумно новите версии на XEmacs (тестван на 21.1 и по- висока).

    За промяна дневник виж началото на файла източник.
  • Debian пакет е също на разположение.
  • Крайно неподдържан версия за Emacs 19 е тук.

Инсталация

С две думи, място изтегления файл, където Emacs може да я види, и поставете във вашия ~ / Emacs или ~ /.xemacs / init.el следните редове:

    (autoload 'run-prolog "prolog" "Start a Prolog sub-process." t)
    (autoload 'prolog-mode "prolog" "Major mode for editing Prolog programs." t)
    (autoload 'mercury-mode "prolog" "Major mode for editing Mercury programs." t)
    (setq prolog-system 'swi)
    (setq auto-mode-alist (append '(("\\.pl$". prolog-mode)
                                    ("\\.m$". mercury-mode))
                                   auto-mode-alist))
    

Вижте коментарите в началото на файла източник за кървавите подробности, и с това ръководство за инсталация, за още по-подробно обяснение.

Имайте предвид, че поведението по подразбиране на Prolog поставете предикат-шаблон се е променило в версия 1.15. Новият поведение е просто да вмъкнете първоначалното име, последвано от скоби (за разлика от старото поведение на поставяне на име на предикат, в отговор на скоби и достатъчно commata да се разделят всички аргументи). Всъщност, изглежда по-продуктивни само да въведете тези commata и затваряща скоба. Ако старата поведение е желано, Пролог-електрически точки пълен предикат-шаблон (група “Prolog Keyboard”)-нула.

Имайте предвид, че във версия 1.9 са добавени две нови адаптивни променливи:

  • Prolog-paren-тире-р (група “Prolog Отстъп”) урежда начина, по който скоби изрази (различни от съставни термини) са отстъп. Ако променливата е нула (по подразбиране), тогава компоненти са отстъп един под друг (точно както при комбинираните отношение), в противен случай втория и следващите редове са отстъп, Prolog-paren тире “знаци на дясно (старото поведение).
  • Prolog-харак-цитат-заобиколно решение (група “Prolog Други”) позволява по някакъв начин правилното боравене с характер бягство на 0 “, чрез определяне на 0 като цитат характер (когато не нула), определяне на променлива нула (по подразбиране) игнорира 0 “конструкт.

    Това не трябва да бъдат адаптивни (бягство характер трябва да бъде признат като такъв, без значение какво), но на текущото изпълнение е kludgy (и аз нямам идея как да го направя по-добре), така че за момента аз предоставям начин да забраните всичко. Моля да ме уведомите за всяка идея да се направи това по-добре и най-важното за всяко счупване, причинени от текущото изпълнение.

Допълнителна обърнете внимание, че някои по-адаптивни променливи са добавени (и може да се добави в бъдещите версии), моля, проверете промените, предвидени в началото на файла източник.

Comments are closed.