projects:emacsandforth:emacs_und_forth
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| projects:emacsandforth:emacs_und_forth [2017-08-27 15:14] – angelegt 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 | + | ====== |
| + | |||
| + | ===== Über Emacs ===== | ||
| + | |||
| + | |||
| + | Emacs ist ein Editor und eine Laufzeitumgebung für allerlei | ||
| + | Anwendungen auf Basis von Text (E-Mail Client, Newsgroups, | ||
| + | Versionsverwaltung, | ||
| + | Webbrowser, Kontaktdatenbank und vieles mehr). | ||
| + | |||
| + | 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 ===== | ||
| + | |||
| + | * Homepage https:// | ||
| + | * Wikipedia über Emacs https:// | ||
| + | * Emacs Wiki https:// | ||
| + | * nicht Emacs (der andere Editor: vi/vim) http:// | ||
| + | |||
| + | ===== Emacs download ===== | ||
| + | |||
| + | ==== Windows ==== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ==== 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 | ||
| + | |||
| + | * https:// | ||
| + | * http:// | ||
| + | * https:// | ||
| + | |||
| + | ==== Linux/ | ||
| + | |||
| + | 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.1503839664.txt.gz · Zuletzt geändert: 2017-08-27 15:14 von cas