<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek</id>
	<title>Deklaratív programozás - Emacs telepítési lépések - Laptörténet</title>
	<link rel="self" type="application/atom+xml" href="https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek"/>
	<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;action=history"/>
	<updated>2026-04-20T09:35:05Z</updated>
	<subtitle>Az oldal laptörténete a wikiben</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;diff=177825&amp;oldid=prev</id>
		<title>Szikszayl: Szikszayl átnevezte a(z) Telepítési lépések lapot a következő névre: Deklaratív programozás - Emacs telepítési lépések</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;diff=177825&amp;oldid=prev"/>
		<updated>2014-02-15T17:24:56Z</updated>

		<summary type="html">&lt;p&gt;Szikszayl átnevezte a(z) &lt;a href=&quot;/index.php?title=Telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Telepítési lépések (a lap nem létezik)&quot;&gt;Telepítési lépések&lt;/a&gt; lapot a következő névre: &lt;a href=&quot;/Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&quot; title=&quot;Deklaratív programozás - Emacs telepítési lépések&quot;&gt;Deklaratív programozás - Emacs telepítési lépések&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;hu&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Régebbi változat&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;A lap 2014. február 15., 19:24-kori változata&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;hu&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Nincs különbség)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key my_wiki:diff:1.41:old-137115:rev-177825 --&gt;
&lt;/table&gt;</summary>
		<author><name>Szikszayl</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;diff=137115&amp;oldid=prev</id>
		<title>Unknown user: Új oldal, tartalma: „{{GlobalTemplate|Infoalap|DeklaPoEmacsHowTo}}  Egy rövid összefoglaló emacs, Sicstus Prolog és moSML rendszerek összehangolásáról Windows XP alatt.  Felhasznál…”</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Deklarat%C3%ADv_programoz%C3%A1s_-_Emacs_telep%C3%ADt%C3%A9si_l%C3%A9p%C3%A9sek&amp;diff=137115&amp;oldid=prev"/>
		<updated>2012-10-21T19:54:47Z</updated>

		<summary type="html">&lt;p&gt;Új oldal, tartalma: „{{GlobalTemplate|Infoalap|DeklaPoEmacsHowTo}}  Egy rövid összefoglaló emacs, Sicstus Prolog és moSML rendszerek összehangolásáról Windows XP alatt.  Felhasznál…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Új lap&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{GlobalTemplate|Infoalap|DeklaPoEmacsHowTo}}&lt;br /&gt;
&lt;br /&gt;
Egy rövid összefoglaló emacs, Sicstus Prolog és moSML rendszerek összehangolásáról Windows XP alatt.&lt;br /&gt;
&lt;br /&gt;
Felhasznált programverziók:&lt;br /&gt;
* GNU [[EMacs]] 21.3&lt;br /&gt;
* Sicstus Prolog 3.12.3&lt;br /&gt;
* moSML 2.01, a beépített 3.33-as smlmode csomaggal  &lt;br /&gt;
&lt;br /&gt;
==Emacs:==&lt;br /&gt;
	1 Az &amp;#039;&amp;#039;&amp;#039;emacs&amp;#039;&amp;#039;&amp;#039; -ot a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtárba csomagoltam ki, majd futtattam a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs\bin\addpm.exe&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; telepítőfájlt. A programhoz tartozó &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; konfigurációs fájlt a &amp;#039;&amp;#039;&amp;#039;HOME&amp;#039;&amp;#039;&amp;#039; környezeti változó által meghatározott helyre kell tenni - ez nálam a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtárra lett felvéve. &lt;br /&gt;
==Sicstus Prolog 3.12.3==&lt;br /&gt;
	2 A Prologot a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; fájl könnyebb kitöltése érdekében a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs\SICStus Prolog&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtárba telepítettem.&lt;br /&gt;
	3 Beszúrtam a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; fájlba a következő sorokat:&lt;br /&gt;
			&lt;br /&gt;
&amp;lt;pre&amp;gt;(load &amp;quot;c:/emacs/SICStus Prolog/emacs/sicstus_emacs_init&amp;quot;)&lt;br /&gt;
(setq load-path&lt;br /&gt;
	(cons (expand-file-name &amp;quot;c:/emacs/SICStus Prolog/emacs&amp;quot;)&lt;br /&gt;
			load-path))&lt;br /&gt;
(autoload &amp;#039;run-prolog &amp;quot;prolog&amp;quot; &amp;quot;Start a Prolog sub-process.&amp;quot; t)&lt;br /&gt;
(autoload &amp;#039;prolog-mode &amp;quot;prolog&amp;quot; &amp;quot;Major mode for editing Prolog programs.&amp;quot; t)&lt;br /&gt;
(setq prolog-use-sicstus-sd t)&lt;br /&gt;
(setq auto-mode-alist (cons &amp;#039;(&amp;quot;\\.pl$&amp;quot; . prolog-mode) auto-mode-alist))&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==moSML 2.01==&lt;br /&gt;
	4 Az moSML-t a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs\mosml&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtárba telepítem. A fájlok másolása utána a következő beállításokat kell megtenni:&lt;br /&gt;
** A PATH környezeti változónak tartalmaznia kell az moSML elérési útját, ez nálam: &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;c:\emacs\mosml\bin&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Fel kell venni egy új környezeti változót MOSMLLIB néven, értéknek pedig a mosml library könyvtárat kell megadni. Ez nálam: c:\emacs\mosml\lib&lt;br /&gt;
** Ezen beállítások tesztelhetőek úgy, hogy a DOS parancssorból egy mosml-t beírunk. Ha minden működik, akkor elindul a mosml.&lt;br /&gt;
	5 Az mosml telepítési könyvtárán belül van egy &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;utility/sml-mode-3.3b&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtár, azon belül egy &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;sml_site.el&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; ott (a jelenlegi változatban) az 56. sort ki kell cserélni (értelemszerűen cserélve az mosml telepítési útvonalát):&lt;br /&gt;
	  * Régi: =(defvar sml-lisp-directory &amp;quot;/usr/share/emacs/site-lisp/sml-mode&amp;quot;)=&lt;br /&gt;
	  * Új: =(defvar sml-lisp-directory &amp;quot;c:/emacs/mosml/utility/sml-mode-3.3b&amp;quot;)=&lt;br /&gt;
	6 Ahhoz, hogy az sml-lel kapcsolatos súgó elérhető legyen az emacsban, a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;utility/sml-mode-3.3b&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; könyvtárból át kell másolni a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;sml-mode.info&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; fájlt a telepített emacs info könyvtárába (nálam __c:\emacs\info__)&lt;br /&gt;
	7 Ezután a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; fájlt kell kiegészíteni az alábbiaknak megfelelően:&lt;br /&gt;
** Ahhoz, hogy az emacs az sml-fájlok megnyitásakor összekapcsolja a fájlt a fordítóval, és kiszínezze a kódot, az alábbi sorokat kell beilleszteni  a &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; fájlba (útvonal értelemszerűen cserélendő, a ~ karakternél megtört sorokat a fájlban nem kell törni): &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;(load-file &amp;quot;c:/emacs/mosml/utility/sml-mode-3.3b/sml-site.el&amp;quot;)&lt;br /&gt;
(add-hook &amp;#039;sml-load-hook &amp;#039;(lambda()&lt;br /&gt;
				 (require &amp;#039;sml-font)&lt;br /&gt;
				 (load-library &amp;quot;sml-mosml&amp;quot;)))&lt;br /&gt;
&lt;br /&gt;
(global-font-lock-mode t)&lt;br /&gt;
(setq font-lock-maximum-decoration t)&lt;br /&gt;
&lt;br /&gt;
;;;&lt;br /&gt;
;;; Mode specific keywords&lt;br /&gt;
;;;&lt;br /&gt;
(font-lock-add-keywords&lt;br /&gt;
 &amp;#039;sml-mode&lt;br /&gt;
 &amp;#039;(&lt;br /&gt;
	;; Simple keywords&lt;br /&gt;
	&amp;quot;\\&amp;lt;\\(not\\|andalso\\|orelse\\)\\&amp;gt;&amp;quot;&lt;br /&gt;
	;; (data)type declarations&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(type\\|datatype\\)\\&amp;gt;\\( +\\(&amp;#039;&amp;#039;?_?[a-z]+\\|\\sw+\\)\\( +\\sw+\\)*\\)&amp;quot;&lt;br /&gt;
	 (1 font-lock-keyword-face)&lt;br /&gt;
	 (2 font-lock-type-face))&lt;br /&gt;
	;; variable declarations&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(val\\) +\\(\\sw+\\)&amp;quot;&lt;br /&gt;
	 (1 font-lock-keyword-face)&lt;br /&gt;
	 (2 font-lock-variable-name-face))&lt;br /&gt;
	(&amp;quot;! *\\(\\sw+\\)&amp;quot; 1 font-lock-variable-name-face)&lt;br /&gt;
	(&amp;quot;\\(\\sw+\\) *:=&amp;quot; 1 font-lock-variable-name-face)&lt;br /&gt;
	;; function declarations&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(fun\\|and\\)\\&amp;gt; +\\(\\sw+\\)&amp;quot;&lt;br /&gt;
	 (1 font-lock-keyword-face)&lt;br /&gt;
	 (2 font-lock-function-name-face))&lt;br /&gt;
	(&amp;quot;| *\\(\\sw+\\)[^=\n]*=\\([^&amp;gt;]\\|$\\)&amp;quot; 1 font-lock-function-name-face)&lt;br /&gt;
	;; Fully specified function calls&lt;br /&gt;
	(&amp;quot;\\([A-Za-z]\\sw*\\)\\.\\([A-Za-z_]\\sw*\\)&amp;quot;&lt;br /&gt;
	 (1 font-lock-type-face)&lt;br /&gt;
	 (2 font-lock-function-name-face))&lt;br /&gt;
	;; Character constants&lt;br /&gt;
	(&amp;quot;#\&amp;quot;.[^\&amp;quot;]*\&amp;quot;&amp;quot; . font-lock-string-face)&lt;br /&gt;
	;; Exceptions&lt;br /&gt;
	(&amp;quot;\\(exception\\|raise\\|handle\\)[ (]+\\(\\sw+\\|_\\)&amp;quot; 2 font-lock-variable-name-face)&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(Bind\\|Chr\\|Domain\\|Div\\|Fail\\|Graphic\\|Interrupt\\|Io\\|Match\\|Option\\|Ord\\|Overflow\\|Size\\|Subscript\\ ~ &lt;br /&gt;
|SysErr\\)\\&amp;gt;&amp;quot; . font-lock-variable-name-face)&lt;br /&gt;
	;; Builtin functions&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(a\\(bs\\|pp\\)\\|before\\|c\\(eil\\|hr\\|oncat\\)\\|div\\|explode\\|f\\(loor\\|old[lr]\\)\\|h\\(d\\|elp\\)\\|i\\ ~ &lt;br /&gt;
(gnore\\|mplode\\)\\|length\\|m\\(ap\\|od\\)\\|null\\|o\\(rd\\)?\\|print\\(Val\\)?\\|r\\(ev\\|ound\\)\\|s\\(ize\\|tr\\)\\|t\\ ~ &lt;br /&gt;
(l\\|runc\\)\\)\\&amp;gt;&amp;quot; . font-lock-builtin-face)&lt;br /&gt;
	;; Builtin types&lt;br /&gt;
	(&amp;quot;\\(\\&amp;lt;\\(bool\\|char\\|exn\\|int\\|order\\|real\\|\\(sub\\)?string\\|unit\\|word8?\\)\\&amp;gt;\\|&amp;#039;&amp;#039;?_?[a-z]+\\)\\( +\\sw+\\)*&amp;quot; . ~&lt;br /&gt;
font-lock-type-face)&lt;br /&gt;
	;; User defined types with type operators&lt;br /&gt;
	(&amp;quot;\\sw*\\( +\\(array\\|frag\\|list\\|option\\|ref\\|vector\\)\\)+\\&amp;gt;&amp;quot; . font-lock-type-face)&lt;br /&gt;
	(&amp;quot;[^:]:[ (]*\\(\\sw+\\)&amp;quot; 1 font-lock-type-face)&lt;br /&gt;
	;; Builtin constants&lt;br /&gt;
	(&amp;quot;\\[ *\\]&amp;quot; . font-lock-constant-face)&lt;br /&gt;
	(&amp;quot;\\&amp;lt;\\(nil\\|true\\|false\\|\\(ANTI\\)?QUOTE\\|NONE\\|SOME\\|LESS\\|EQUAL\\|GREATER\\)\\&amp;gt;&amp;quot; . font-lock-constant-face))) &amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
** Ahhoz pedig, hogy az előadáson látható módon újabb panelen nyissa meg a fordítót, még a következő sorokat kell mellékelni:&lt;br /&gt;
&amp;lt;pre&amp;gt;(add-hook &amp;#039;sml-mode-hook&lt;br /&gt;
	&amp;#039;(lambda ()&lt;br /&gt;
		(setq sml-nested-if-indent t&lt;br /&gt;
		sml-dedicated-frame nil)))&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Részletes leírások==&lt;br /&gt;
* Prolog emacs-integrációja: http://www.sics.se/sicstus/docs/latest/html/sicstus/Emacs-Interface.html&lt;br /&gt;
* Emacs FAQ Windows alatt: http://www.gnu.org/software/emacs/windows/ntemacs.html&lt;br /&gt;
* moSML telepítési útmutató a tárgyhonlapon: http://dp.iit.bme.hu/mosml/doc/telepites-mosml20.txt&lt;br /&gt;
* moSML emacs-integrációról a tárgyhonlapon: http://dp.iit.bme.hu/mosml/doc/telepites-emacs-sml.txt&lt;br /&gt;
		&lt;br /&gt;
&lt;br /&gt;
==Hibaforrások:==&lt;br /&gt;
* Az elérési utak PATH-hoz adásakor a különböző elérési utak közé nem szabad szóközt tenni. &lt;br /&gt;
* A &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;.emacs&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; állomány és az SML-illesztő állomány szerkesztésekor a Windows alatt szokásos \ helyett / vagy \\ karakterekkel kell elválasztani a különböző mappaszinteket.&lt;br /&gt;
* Ha kiderül, hogy egy környezeti változó nem került beállításra, az érintett alkalmazásokat újra kell indítani, különben nem veszik tudomásul a környezeti változó létrejöttét/módosulását.&lt;br /&gt;
&lt;br /&gt;
==A végleges konfigurációs fájl==&lt;br /&gt;
&lt;br /&gt;
* {{InLineFileLink|Infoalap|DeklaPoEmacsHowTo|.emacs|.emacs}}: A létrehozott .emacs fájl - itt már csak az elérési utakat kell frissíteni.&lt;br /&gt;
&lt;br /&gt;
-- [[UjhelyiZoltan|Stampie]] - 2006.05.23&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Infoalap]]&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>