Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Emacs 20.x und Umlaute im LaTeX-Modus

27 views
Skip to first unread message

Roland Rosenfeld

unread,
Sep 26, 1998, 3:00:00 AM9/26/98
to
[X-Post&F'up2: de.comp.gnu]

Peter Wyzlic <p...@pwyz.rhein.de> wrote:

> PS> (define-key tex-mode-map [?ä] "^Q\"a")

> Ich kenne die Hinter- und Abgründe der Lisp-Änderungen zwischen
> (GNU) emacs 19 => 20 nicht, aber Du solltest mal iso-cvt.el
> ausprobieren. Das funktioniert hier mit xemacs 20.x problemlos.

Das kann er sich bei Emacs 20 sparen, da ist das nämlich defekt oder
sagen wir es so: Ich habe es nicht zur Mitarbeit überreden können und
auch in den Newsgroups (und Dejanews) habe ich niemanden finden
können, der mir helfen konnte, nur ein paar Leidensgenossen.

Bei XEmacs würde ich zu dem Zwecke übrigens das Paket x-symbol
verwenden, das kümmert sich um Umlaut-Konvertierungen ganz einfach
nebenbei.

Jetzt aber zu peti's Problem. Ich habe das bei Emacs 20 mit folgender
Variante gelöst (für HTML, denn bei LaTeX kann man ja problemlos mit
\usepackage[latin1]{inputenc} umgehen und dann direkt Umlaute
eingeben, die man auch mit ispell und flyspell problemlos checken
kann):

(defun sgml-uml-mode ()
"Mein SGML-Umlaut-Modus"
(interactive)
(local-set-key [246] (lambda () (interactive) (insert "&ouml;")))
(local-set-key [214] (lambda () (interactive) (insert "&Ouml;")))
(local-set-key [228] (lambda () (interactive) (insert "&auml;")))
(local-set-key [196] (lambda () (interactive) (insert "&Auml;")))
(local-set-key [252] (lambda () (interactive) (insert "&uuml;")))
(local-set-key [220] (lambda () (interactive) (insert "&Uuml;")))
(local-set-key [223] (lambda () (interactive) (insert "&szlig;")))
)

Und diese Funktion habe ich dann mit
(add-hook 'html-helper-mode-hook 'sgml-uml-mode)
aktiviert. Für TeX sollte man eine entsprechende Methode finden
können. Zugegeben, obiges ist nicht so elegant wie Peti's Methode,
aber es hat sowohl mit Emacs 19 als auch mit Emacs 20 immer problemlos
funktioniert.

Tschoeeee

Roland

--
* Internet: rol...@spinnaker.rhein.de * Fido: 2:2450/42 *
PGP: 1024/DD08DD6D 2D E7 CC DE D5 8D 78 BE 3C A0 A4 F1 4B 09 CE AF

Peter Simons

unread,
Sep 30, 1998, 3:00:00 AM9/30/98
to
-----BEGIN PGP SIGNED MESSAGE-----

>>>>> Roland Rosenfeld writes:

> [X-Post&F'up2: de.comp.gnu]

[Ignoriert]


> Jetzt aber zu peti's Problem. Ich habe das bei Emacs 20 mit
> folgender Variante gelöst (für HTML, denn bei LaTeX kann man ja
> problemlos mit \usepackage[latin1]{inputenc} umgehen und dann
> direkt Umlaute eingeben, die man auch mit ispell und flyspell
> problemlos checken kann):

"Jetzt zu Petis Problem. Dafür bespreche ich ein anderes Problem, denn
Petis Problem kann man ja auch völlig anders lösen, auch wenn ihm das
nichts nützt."

Danke Roland. :-))

Es ist verblüffend, wieviele Leute mir geschrieben haben ich soll
"\usepackage[latin1]{inputenc}" benutzen, anstatt mir meine Frage zu
beantworten. Ich will die Umlaute nicht in ISO-irgendwas schreiben,
weil dann man LaTeX File nicht mehr auf einer anderen Platform
anzeigbar und eventuell auch nicht compilierbar ist und genau das war
ja die Idee dahinter, die Umlaute eben als \"a zu schreiben.

Jedenfalls vielen Dank an Philipp Frauenfelder für den entscheidenden
Hinweis. Wenn man folgenden Code ins .emacs/site-start.el File packt,
klappt es auch mit Emacs 20:

(add-hook 'latex-mode-hook
(function (lambda ()
(local-set-key (quote [228]) (quote "^Q\"a"))
(local-set-key (quote [246]) (quote "^Q\"o"))
(local-set-key (quote [252]) (quote "^Q\"u"))
(local-set-key (quote [223]) (quote "^Q\"s"))
(local-set-key (quote [196]) (quote "^Q\"A"))
(local-set-key (quote [214]) (quote "^Q\"O"))
(local-set-key (quote [220]) (quote "^Q\"U"))
; start ispell in TeX mode
(setq ispell-extra-args '("-t"))
)))

Zu beachten ist, daß das "^Q" durch tippen von C-q C-q erzeugt wird.
Cut and paste von diesem Artikel wird wohl nichts nützen.

-peter

-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: latin1

iQCVAwUBNhIRiA9HL1s0103BAQERugQAvjRXh54oWAmImftCLSDWlizkeP4YoBYG
okzVtzvpoeEKo5ubDC3dbo/nKY3uHVwyiztbt1GoOkFBzcge1OCCLR0H3pdLYN5D
Do8voSU83NfI98dSBxdML7b09btHTwtaPGWPonCg2Gd1U0UjQkSVuu4zy4kOpkWw
578U7LmQaxA=
=ccZ1
-----END PGP SIGNATURE-----

Johannes Weinert

unread,
Sep 30, 1998, 3:00:00 AM9/30/98
to
Roland Rosenfeld <rol...@spinnaker.rhein.de> writes:

> > Ich kenne die Hinter- und Abgründe der Lisp-Änderungen zwischen
> > (GNU) emacs 19 => 20 nicht, aber Du solltest mal iso-cvt.el
> > ausprobieren. Das funktioniert hier mit xemacs 20.x problemlos.
>
> Das kann er sich bei Emacs 20 sparen, da ist das nämlich defekt oder
> sagen wir es so: Ich habe es nicht zur Mitarbeit überreden können und
> auch in den Newsgroups (und Dejanews) habe ich niemanden finden
> können, der mir helfen konnte, nur ein paar Leidensgenossen.
>

Nun, ich habe ähnliches festgestellt. Aber im emacs-20.3 ist der
Fehler offensichtlich behoben worden.

--
Hans

Martin Edelmann

unread,
Oct 1, 1998, 3:00:00 AM10/1/98
to
Hallo,

>Jetzt aber zu peti's Problem. Ich habe das bei Emacs 20 mit folgender
>Variante gelöst (für HTML, denn bei LaTeX kann man ja problemlos mit
>\usepackage[latin1]{inputenc} umgehen und dann direkt Umlaute
>eingeben, die man auch mit ispell und flyspell problemlos checken
>kann):


Danke für den Tip mit inputenc. Aber problemlos checken?
Siehe extra Posting...

cu
Martin


Aldo Valente

unread,
Oct 1, 1998, 3:00:00 AM10/1/98
to
Peter Simons <peter....@gmd.de> writes:

[F'up2: poster ignoriert]

> > problemlos mit \usepackage[latin1]{inputenc} umgehen und dann
> > direkt Umlaute eingeben, die man auch mit ispell und flyspell
> > problemlos checken kann):

> Es ist verblüffend, wieviele Leute mir geschrieben haben ich soll


> "\usepackage[latin1]{inputenc}" benutzen, anstatt mir meine Frage zu
> beantworten. Ich will die Umlaute nicht in ISO-irgendwas schreiben,
> weil dann man LaTeX File nicht mehr auf einer anderen Platform
> anzeigbar und eventuell auch nicht compilierbar ist und genau das war
> ja die Idee dahinter, die Umlaute eben als \"a zu schreiben.

Ich würde mit recode latin1:latex über die Datei gehen. bevor ich mir
die Finger mit dem Eingeben dieser merkwürdigen Sequenzen breche.


Wir bringen Dich schon auf den rechten Weg,
Aldo
--
|>grep schauer passwd
|>schauer:x:1075:1075:Holger Schauer, 2790:/home/schauer:/usr/bin/xemacs
|Das ist nur eine Shell. Bedenklich waere, wenn Dein LILO /vmunix.el bootet.
--Kristian und Holger in de.comp.os.linux.misc

Knut Stolze

unread,
Oct 1, 1998, 3:00:00 AM10/1/98
to
On 01 Oct 1998 08:26:21 +0200, Aldo Valente wrote:

> Peter Simons <peter....@gmd.de> writes:
> > Es ist verblüffend, wieviele Leute mir geschrieben haben ich soll
> > "\usepackage[latin1]{inputenc}" benutzen, anstatt mir meine Frage zu
> > beantworten. Ich will die Umlaute nicht in ISO-irgendwas schreiben,
> > weil dann man LaTeX File nicht mehr auf einer anderen Platform
> > anzeigbar und eventuell auch nicht compilierbar ist und genau das war
> > ja die Idee dahinter, die Umlaute eben als \"a zu schreiben.
>
> Ich würde mit recode latin1:latex über die Datei gehen. bevor ich mir
> die Finger mit dem Eingeben dieser merkwürdigen Sequenzen breche.

Das halte ich unter dem Gesichtspunkt, dass der Emacs eingesetzt wird, fuer
ueberfluessig. Ein einfaches Umdefinieren der Tasten ä, ö usw. ist da
wesentlich hilfreicher.

Bei mir sieht das in der .emacs so aus:

(add-hook 'LaTeX-mode-hook
(function (lambda ()
(define-key LaTeX-mode-map [?ö]
(lambda () "\"o" (interactive) (insert "\"o")))
(define-key LaTeX-mode-map [?Ö]
(lambda () "\"O" (interactive) (insert "\"O")))
(define-key LaTeX-mode-map [?ä]
(lambda () "\"a" (interactive) (insert "\"a")))
(define-key LaTeX-mode-map [?Ä]
(lambda () "\"A" (interactive) (insert "\"A")))
(define-key LaTeX-mode-map [?ü]
(lambda () "\"u" (interactive) (insert "\"u")))
(define-key LaTeX-mode-map [?Ü]
(lambda () "\"U" (interactive) (insert "\"U")))
)))

das fuegt beim Druecken von ö ein "o ein. Wesentlich einfacher als ein
staendiges "recode" und loest das Problem der anderen Plattformen.

ciao, Knut

0 new messages