[linux-l] VIM-Frage -> :confirm

Steffen Dettmer steffen at dett.de
Mi Feb 27 10:35:11 CET 2002


* Sven Guckes wrote on Tue, Feb 26, 2002 at 23:35 +0100:
> * Steffen Dettmer <steffen at dett.de> [020213 10:04]:
> > das dann ablehnt. Also kann ich wie autocmd sagen %s/ \+$//.
> > Wenn es aber keine Spaces am Zeilenende gibt, kriege
> > ich eine nervige Fehlermeldung pattern not found.
> 
> feature.  was hattest du denn erwartet?

Genau das.

> > .. und das erste undo ist verwirrend;
> 
> huh?

Na ja, es macht das globale replace rückgängig, auch wenn das
nichts gemacht hat, macht also im Zweifelsfalle gar nichts.

> > besonders nervig ist der Verlust der Cursorposition.
> 
> alle spruenge werden sowieso in einer liste gesprichert,
> so dass du mit dem befehl CTRL-O zurueckspringen kannst.

Aha, danke für den Tip. 

> wenn du zu weit in der liste zurueckspringst, dann
> kannst du mit CTRL-I (TAB) wieder vorwaertspringen.

Leider machen beide Tasten bei mir genau nix. Was mache ich
falsch?
 				
> > ein :if / \+$/ oder so führt zu einem Syntaxfehler.
> 
> dann machst du was falsch.  (was soll man zu "oder so" sonst sagen?)

Ja, aber wie ist es richtig? Ich denke, es ist klar, was ich hier
meine (in perl wäre es "if (m/ \+$/)"), ich weiß nur nicht, wie
ich das schreiben muß.

> > Kann mir da mal bitte jemand auf die Sprünge helfen?
> 
> Wie kommst du ueberhaupt zu leerzeichen am ende der zeile?
> da  machst du generell was falsch.

Stimmt, vermutlich ist das der eigentliche Fehler. Ich habe tw
gesetzt, auch bei Sourcen, um mich zu kurzen Zeilen zu
disziplinieren (mehr als 80 Zeichen nimmt das CVS srccheck eh
nicht an). Wenn dabei dann ein Umbruch passiert, oder ich mit
einem return "auf" einem Leerzeichen einen erzeuge, hat die
vorherige Zeile am Ende ein solches Whitespace.

> > Frage. Kann man konfigurieren, daß beim öffnen von read-only
> > Dateien .cc, .h usw. gefragt wird (also "vorgeschlagen"),
> > cvs edit % und :e zu machen?
> 
> ja.  siehe ":help :confirm"

Wenn ich das richtig lese:
	Can be used on the ":q", ":qa" and ":w" commands 
geht das aber nicht beim Öffnen? Du meinst, ich sollte das dann
beim Speicherversuch (w) von schreibgeschützen Dateien machen?

> > Ich vergesse das edit immer, aber es soll auch nicht
> > ausgeführt werden, wenn ich eine Datei öffne (beim make
> > werden ja schnell mal viele Files geöffnet, bzw. durch
> > tags).  Kann man verhindern, daß man r/o files ändern darf?
> 
> ja.  siehe ":help write-readonly"

So wie ich das gelesen und probiert habe, kann ich trozdem die
Datei ändern - nur eben nicht speichern. Na ja, müßte ich also
hier cvs edit machen. Wäre natürlich eleganter, wenn bei Öffnen
gefragt werden würde
"Attemt to edit r/o file. Execute cmd "cvs edit %" an reopen?"
Bei N ist dann eben r/o mit cpotions+=W, und sonst wird cvs edit
gemacht. 

Vielen Dank für Deine Tipps, aber die Lösungen waren noch nicht
dabei (oder hab ich schlecht gelesen?).

oki,

Steffen

-- 
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.



Mehr Informationen über die Mailingliste linux-l