projects:emacsandforth:emacs_und_forth
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
projects:emacsandforth:emacs_und_forth [2017-08-27 15:40] – cas | projects:emacsandforth:emacs_und_forth [2018-03-04 03:11] (aktuell) – [Über Emacs] ein freches überflüssiges Leerzeichen verscheucht. yeti | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ====== Emacs und Forth ====== |
- | Emacs ist ein Editor und eine Laufzeitumgebung für allerlei Anwendungen auf Basis von Text (E-Mail Client, Newsgroups, Versionsverwaltung, | + | ===== Über Emacs ===== |
- | Emacs ist alt. Fast so alt wie Forth. Es wurde auf Betriebssystem entwickelt, die heute obsolete sind (wie Forth). Da Emacs erweiterbar ist, wurde es immer angepasst und auf moderne Systeme portiert. Daher benutzt Emacs viele Begriffe, die in anderen Systemen (Windows, macOS X, Linux) anders heissen. Emacs (wie Forth) veraltet nicht und folgt dem Entwickler bei seiner Reise durch die Computerwelt. | ||
- | Emacs ist (wie Forth) am Anfang nicht immer einfach zu verstehen, aber es lohnt sich, Emacs eine Chance zu geben. Am besten mal lernt Emacs in kleinen Happen. Bei Emacs lernt man nie aus, es gibt immer neues und fazinierendes zu entdecken. | + | Emacs ist ein Editor und eine Laufzeitumgebung für allerlei |
+ | Anwendungen auf Basis von Text (E-Mail Client, Newsgroups, | ||
+ | Versionsverwaltung, Tabellenkalkulation, | ||
+ | Webbrowser, Kontaktdatenbank | ||
- | Es gibt viele Emacs Ableger, hier geht es um das original, GNU Emacs. | + | Emacs ist alt. Fast so alt wie Forth. Es wurde (wie Forth) auf Betriebssystemen |
+ | entwickelt, die heute obsolete sind. Da Emacs erweiterbar | ||
+ | ist, wurde es immer angepasst und auf moderne Systeme portiert. Daher | ||
+ | benutzt Emacs viele Begriffe, die in anderen Systemen (Windows, macOS | ||
+ | X, Linux) anders heissen. Emacs (wie Forth) veraltet nicht und folgt | ||
+ | dem Entwickler bei seiner Reise durch die Computerwelt. | ||
+ | |||
+ | Emacs ist (wie Forth) am Anfang nicht immer einfach zu verstehen, aber | ||
+ | es lohnt sich, Emacs eine Chance zu geben. Am besten lernt man Emacs | ||
+ | in kleinen Happen. Bei Emacs lernt man nie aus, es gibt immer Neues | ||
+ | und Fazinierendes zu entdecken. | ||
+ | |||
+ | Es gibt viele Emacs Ableger, hier geht es um das Original, GNU Emacs. | ||
+ | |||
+ | {{ : | ||
===== Emacs Links ===== | ===== Emacs Links ===== | ||
Zeile 24: | Zeile 40: | ||
==== macOS X ==== | ==== macOS X ==== | ||
- | Emacs ist Teil von macOS, die dort mitgelieferte Version 22 ist aber sehr alt. Aktuell (2017) ist Version 25. Aktuelle Emacs Versionen für macOS gibt es von | + | Emacs ist Teil von macOS, die dort mitgelieferte Version 22 ist aber |
+ | sehr alt. Aktuell (2017) ist Version 25. Aktuelle Emacs Versionen für | ||
+ | macOS gibt es von | ||
* https:// | * https:// | ||
Zeile 32: | Zeile 50: | ||
==== Linux/ | ==== Linux/ | ||
- | Emacs gibt es auf diesen Systemen fast immer sehr aktuell aus dem Repositories der Paketverwaltung des Systems. | + | Emacs gibt es auf diesen Systemen fast immer sehr aktuell aus dem |
+ | Repositories der Paketverwaltung des Systems. | ||
+ | |||
+ | ==== MS-DOS ==== | ||
+ | |||
+ | * https:// | ||
+ | |||
+ | ====== Emacs lernen ====== | ||
+ | |||
+ | ===== Bücher ===== | ||
+ | |||
+ | * Mastering Emacs https:// | ||
+ | |||
+ | ===== Webseiten ===== | ||
+ | |||
+ | * Emacs Tutor https:// | ||
+ | * Emacs Manual https:// | ||
+ | * Planet Emacsen https:// | ||
+ | * Sacha Chua Emacs http:// | ||
+ | |||
+ | ===== Videos ===== | ||
+ | |||
+ | * Using Emacs https:// | ||
+ | ===== Referenzkarten ===== | ||
+ | |||
+ | * http:// | ||
+ | |||
+ | ====== Emacs forth-mode ====== | ||
+ | |||
+ | Emacs hat einen Programmiermodus für Forth: '' | ||
+ | |||
+ | Dieser Modus wird derzeit von Lars Brinkhoff betreut. Die Quellen befinden sich auf Github: https:// | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | Das MELPA Repositoriy muss im Emacs-Paketmanager eingetragen sein, in der Emacs-Konfigurationsdatei z.B. mit | ||
+ | |||
+ | < | ||
+ | (setq package-archives ' | ||
+ | (package-initialize) | ||
+ | </ | ||
+ | |||
+ | Emacs starten, den Forth-Mode mit "M-x package-install forth-mode" | ||
+ | |||
+ | Forth-Mode erkennt Forth-Programme an der Dateiendung. Viele gängige Forth-Dateiendungen werden unterstützt. | ||
+ | |||
+ | ====== Emacs serielles Terminal ====== | ||
+ | |||
+ | Emacs hat ein Terminalprogramm für serielle Schnittstellen eingebaut. Dieses wird mit "M-x serial-terminal" | ||
+ | |||
+ | ===== Anpassungen für Mecrisp-Forth ===== | ||
+ | |||
+ | Der folgende ELisp-Code passt das serielle Terminal im Emacs an Mecrisp-Forth an. Zur Installation den Quellcode in die Emacs-Konfigurationsdatei ('' | ||
+ | |||
+ | < | ||
+ | |||
+ | ;; mecrisp emacs term | ||
+ | (defun replace-all (string to-find to-replace) | ||
+ | (let ((index | ||
+ | (pos 0) | ||
+ | (result "" | ||
+ | (while index | ||
+ | (setq result (concat result | ||
+ | | ||
+ | | ||
+ | pos (+ index (length to-find)) | ||
+ | index (cl-search to-find string :start2 pos))) | ||
+ | (concat result (substring string pos)))) | ||
+ | |||
+ | (defun mecrisp-serial-process-filter (process output) | ||
+ | " | ||
+ | (term-emulate-terminal process | ||
+ | | ||
+ | (byte-to-string ?\n) | ||
+ | (string ?\r ?\n)))) | ||
+ | |||
+ | (defun mecrisp-serial-term (port) | ||
+ | " | ||
+ | filtering to translate LF to CR+LF." | ||
+ | (interactive (list (serial-read-name))) | ||
+ | (serial-supported-or-barf) | ||
+ | (let* ((process (make-serial-process | ||
+ | :port port | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | :name (format " | ||
+ | : | ||
+ | : | ||
+ | | ||
+ | (with-current-buffer buffer | ||
+ | (term-mode) | ||
+ | (term-line-mode) | ||
+ | (goto-char (point-max)) | ||
+ | (set-marker (process-mark process) (point))) | ||
+ | (switch-to-buffer buffer) | ||
+ | buffer)) | ||
+ | </ | ||
projects/emacsandforth/emacs_und_forth.1503841244.txt.gz · Zuletzt geändert: 2017-08-27 15:40 von cas