BBEdit Text links von 'selection' löschen

G

G4Dave

Mitglied
Thread Starter
Dabei seit
06.12.2002
Beiträge
49
Reaktionspunkte
0
Hallo,

schlage mich nach Langem mal wieder mit AppleScript rum, hab leider alles wieder vergessen.

Mein Problem:
Ich habe einen Text im Clipboard, setze diesen in BBedit in ein neues Fenster ein und lasse ihn nach einem bestimmten Suchmuster durchsuchen.

Soweit, so gut:



Code:
tell application "BBEdit"
	activate
	make new text document at text window 1
	paste
	find "SUCHTEXT" searching in text 1 of text document 1 options {search mode:literal, starting at top:true, wrap around:false, backwards:false, case sensitive:false, match words:false, extend selection:false} with selecting match
end tell

Jetzt will ich den kompletten Text links von der Stelle, an der 'SUCHTEXT' gefunden wurde, löschen. Wie mache ich das?

Für Eure Hilfestellungen vielen Dank im Voraus!
 
Ciao,
hiermit müßte es klappen:
Code:
tell window 1 of application "BBEdit"
	set toFind to find "blablabla" options {starting at top:true}
	set chars to found object of toFind
	set c1 to character 1 of chars
	set os to (offset of c1) - 1
	select (characters 1 thru os)
	delete selection
end tell

Viel Erfolg
Farid
 
Hallo Farid,

Dein Lösungsansatz sieht gut aus. Lieder funktioniert er noch nicht ganz...

Skripteditor meldet folgenden Fehler:[QUOTE="AppleScript Fehler]"BBEdit" hat einen Heler erhalten: "character 663 of text document "untitled 3"" kann nicht in text umgewandelt werden.[/QUOTE]Grau unterlegt ist dabei "offset of c1" aus der Zeile
Code:
set os to (offset of c1) - 1
Liegt da ein Problem mit dem falschen Variablentyp vor? Sorry, aber ich behrrsche wirklich nur die allereinfachsten Basics...
 
Sonderbar kopfkratz
Kann es sein, daß Du mehr als ein Fenster in BBedit offen hast?

Checken wir das Script nochmal Schritt für Schritt durch (als Dummy-Text benutzen wir deinen ersten Beitrag in diesem Topic):
Code:
tell application "BBEdit"
	activate
close every window
Jetzt sind wir sicher, daß keine anderen Fenster offen sind
Code:
make new text document
	paste
Jetzt haben wir ein BBEdit-Dokument mit diesem Text: Hallo,

schlage mich nach Langem mal wieder mit AppleScript rum, hab leider alles wieder vergessen.

Mein Problem:
Ich habe einen Text im Clipboard, setze diesen in BBedit in ein neues Fenster ein und lasse ihn nach einem bestimmten Suchmuster durchsuchen.

Soweit, so gut:

Code:
tell window 1
		set toFind to find "Problem" options {starting at top:true}
		set chars to found object of toFind
Resultat: characters 107 thru 113 of text window 1 of application "BBEdit"
Code:
set c1 to character 1 of chars
Resultat: character 107 of text window 1 of application "BBEdit"
Jetzt interessiert uns der "Offset" unmittelbar bevor unserem gefundenen Suchbegriff:
Code:
set os to (offset of c1) - 1
Resultat: 106
Jetzt müssen wir nur noch den Text vom ersten bis zum Charakter "os" (106) selektieren und löschen:
Code:
select (characters 1 thru os)
		delete selection
	end tell
end tell
Fertig ist die Laube :)

Nochmal das ganze Script auf einen Blick:
Code:
tell application "BBEdit"
	activate
	close every window
	make new text document
	paste
	tell window 1
		set toFind to find "Problem" options {starting at top:true}
		set chars to found object of toFind
		set c1 to character 1 of chars
		set os to (offset of c1) - 1
		select (characters 1 thru os)
		delete selection
	end tell
end tell

Bei mir funktionierts. Solltest Du weiter Fehlermeldungen bekommen, veröffentliche doch bitte den Text, den Du aus der Ablage kopiert hast, damit wir sehen können wo's hapert.

Good scripting
Farid
 
Zuletzt bearbeitet:
Zurück
Oben Unten