Redraw-Problem mit gvim und Claws-Mail

01/08/2008 - 19:33 von Christoph Stracke | Report spam
Hallo zusammen,

Ich habe gerade ein sehr merkwürdiges Redraw-Problem ...

Folgende Konstallation: Ich nutze Claws-Mail (vormals: Sylpheed-Claws)
und habe dort die Benutzung eines externen Editors eingestellt. Als
Editor habe ich den "gvim" gewàhlt. Nun ist das Problem, daß, sobald
der gvim aufgerufen wird, keines der darunterliegenden Fenster mehr
neugezeichnet wird, auch wenn ich es nach vorne hole. Vielmehr kann ich
das Fenster des gvim wie eine Art "Radiergummi" in einem
Zeichenprogramm verwenden, um die Inhalte der darunterliegenden Fenster
"auszuradieren" (wobei aber die Fensterelemente wie Umrandungen,
Statusbalken, Textfelder (allerdings leer) erhalten bleiben.

Erst wenn ich den gvim wieder schließe, werden die Fenster wieder mit
Inhalten gefüllt. Nervig ist dieses Problem deshalb, weil ich des
Öfteren wàhrend des Schreibens einer Mail in anderen Mails etwas
nachschauen will, was nun nicht mehr geht. Auch sehe ich wàhrend dieser
Zeit keine neu eingehende Mails, was insbesondere blöd ist, wenn ich
mir mit der Antwort noch ein bißchen Zeit lassen will und den Editor
geöffnet lasse.

Vor gvim hatte ich "nedit" verwendet; bei diesem war dieses Problem
schlicht nicht vorhanden. Er verhielt sich genauso wie sich
übereinanderliegende Fenster verhalten sollten, nàmlich, daß die
darunterliegenden Inhalte weiterhin aktualisiert wurden.

Meine Frage: liegt es an irgendeiner meiner Einstellungen, hat "claws"
ein Problem oder ist das ein Problem/Bug von gvim, wenn er unter
X11-Oberflàchen aus anderen Programmen heraus aufgerufen wird?

Ich hoffe, ich habe den Sachverhalt verstàndlich erklàrt und freue mich
über jeden Tip. :-)

Viele Grüße
Christoph
 

Lesen sie die antworten

#1 Helmut Waitzmann
02/08/2008 - 01:05 | Warnen spam
Christoph Stracke writes:

Hallo zusammen,

Ich habe gerade ein sehr merkwürdiges Redraw-Problem ...

Folgende Konstallation: Ich nutze Claws-Mail (vormals: Sylpheed-Claws)
und habe dort die Benutzung eines externen Editors eingestellt. Als
Editor habe ich den "gvim" gewàhlt. Nun ist das Problem, daß, sobald
der gvim aufgerufen wird, keines der darunterliegenden Fenster mehr
neugezeichnet wird, auch wenn ich es nach vorne hole. Vielmehr kann ich
das Fenster des gvim wie eine Art "Radiergummi" in einem
Zeichenprogramm verwenden, um die Inhalte der darunterliegenden Fenster
"auszuradieren" (wobei aber die Fensterelemente wie Umrandungen,
Statusbalken, Textfelder (allerdings leer) erhalten bleiben.

Erst wenn ich den gvim wieder schließe, werden die Fenster wieder mit
Inhalten gefüllt. Nervig ist dieses Problem deshalb, weil ich des
Öfteren wàhrend des Schreibens einer Mail in anderen Mails etwas
nachschauen will, was nun nicht mehr geht. Auch sehe ich wàhrend dieser
Zeit keine neu eingehende Mails, was insbesondere blöd ist, wenn ich
mir mit der Antwort noch ein bißchen Zeit lassen will und den Editor
geöffnet lasse.

Vor gvim hatte ich "nedit" verwendet; bei diesem war dieses Problem
schlicht nicht vorhanden. Er verhielt sich genauso wie sich
übereinanderliegende Fenster verhalten sollten, nàmlich, daß die
darunterliegenden Inhalte weiterhin aktualisiert wurden.

Meine Frage: liegt es an irgendeiner meiner Einstellungen, hat "claws"
ein Problem oder ist das ein Problem/Bug von gvim, wenn er unter
X11-Oberflàchen aus anderen Programmen heraus aufgerufen wird?

Ich hoffe, ich habe den Sachverhalt verstàndlich erklàrt und freue mich
über jeden Tip. :-)



Ich denke, das hast du. Wer verstàndlich fragt, bekommt auch Antwort:

Ich kenne weder »gvim« noch »nedit«, habe aber beide mal aus einem
interaktiven Shell (in einem xterm) gestartet. Und sie verhalten sich
unterschiedlich:

Das Kommando

$ gvim

kommt zu Ende, obwohl »gvim« noch lebt. Im Gegensatz dazu kommt das
Kommando

$ nedit

erst zu Ende, wenn man »nedit« beendet.

Im Handbuch zu »gvim« finde ich:

-f Foreground. For the GUI version, Vim will not fork
and detach from the shell it was started in. On the
Amiga, Vim is not restarted to open a new window.
This option should be used when Vim is executed by a
program that will wait for the edit session to finish
(e.g. mail). On the Amiga the ":sh" and ":!" commands
will not work.

fork and detach from the shell it was started in.

Versuche, »Claws-Mail« so zu konfigurieren, dass es »gvim« mit dem
Parameter »-f« oder »--nofork« aufruft.

Sollte »Claws-Mail« diese Möglichkeit nicht bieten (ich kenne
»Claws-Mail« nicht; grundsàtzlich kann so eine Einschrànkung aber
durchaus vorliegen), dann nimm folgendes Shell-Skript her, stelle es in
Dein HOME-Verzeichnis, mache es ausführbar und konfiguriere »Claws-Mail«
so, dass es das Shell-Skript als externen Editor aufruft.

Das Shell-Skript:

#!/bin/sh
# Starte "gvim" so, dass er sich nicht verkruemelt:

# Nimm das Option "-f" oder "--nofork"
exec gvim --nofork "$@"
Wer mir E-Mail schreiben will, stelle | When writing me e-mail, please
bitte vor meine E-Mail-Adresse meinen | precede my e-mail address with
Vor- und Nachnamen, etwa so: | my full name, like
Helmut Waitzmann , (Helmut Waitzmann)

Ähnliche fragen