Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 23 Aug 2014, 07:46
All times are UTC - 4
 Forum index » House Training » Users ( For the regulars ) » Für deutschsprachige Anhänger
Phrasen ersetzen
Moderators: MU
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [9 Posts]  
Author Message
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Sun 11 Aug 2013, 04:43    Post subject:  Phrasen ersetzen
Subject description: z.B. sgh. ersetzen mit Sehr geehrter Herr
 

Ich habe ein fehlendes Puzzlestück entdeckt.

Nun, da ich wieder ein paar Sachen schreiben muß, fehlt mir ein wichtiges Tool. Ich habe früher Autohotkey benutzt. Damit konnte man enorm viel machen, aber eine Funktion fehlt mir besonders.

Code:
::MFG::Mit freundlichen Grüßen
::sg::Sehr geehrte Damen und Herren


Mit diesen Zeilen konnte ich in jedem Texteditor (also wirklich jedem) Abkürzungen ersetzen. Also mfg gegen Mit freundlichen Grüßen.

Das funktionierte ohne die Datei zu speichern oder mit suchen-ersetzen oder so.

AHK funktioniert unter Linux nur mit Wine und dann nur im Bereich von Wine.

Ich bin mir sicher, das das auch unter Linux geht. Aber wo setze ich an?
Back to top
View user's profile Send private message Visit poster's website 
R-S-H

Joined: 18 Feb 2013
Posts: 490

PostPosted: Sun 11 Aug 2013, 08:27    Post subject:  

Hi.

Um Textteile innerhalb einer Datei durch andere Textteile zu ersetzen, verwende ich den Befehl: sed

Beispiel:

sed -i 's|Alter-Text|Neuer-Text|' /Pfad-und-Name-der-Datei

Bei Textteilen mit Leerzeichen eine Variable verwenden:

AlterText="Alter Text"
NeuerText="Neuer Text"

sed -i 's|$AlterText|$NeuerText|' /Pfad-und-Name-der-Datei

bzw. in entsprechenden Fällen auch mit "" und/oder '' experimentieren.

Soweit ich weiß, werden ALLE entsprechenden Textteile ersetzt - aber wohl nur je einmal je Textzeile. Also deutliche Abkürzungen/Phrasen verwenden!

Es gibt möglicherweise noch andere Funktionen hierfür, aber die sind mir -im Moment jedenfalls- unbekannt.

Viel Spaß beim Ausprobieren und Programmieren.

_________________
LazY Puppy Home
The new LazY Puppy Information Centre

Back to top
View user's profile Send private message 
Karl Godt


Joined: 20 Jun 2010
Posts: 3964
Location: Kiel,Germany

PostPosted: Sun 11 Aug 2013, 09:54    Post subject:  

Abiword kann plugins laden . Eines heisst LoadBindings .
Aber es laeuft bei mir heute anscheinend ueberhaupt nichts mit plugins .

Plugins scheinen bei der ./configure ation explizit ermoeglicht werden zu muessen, haben anscheinend nicht kompiliert soweit ich meine Quell-Archive zurueckverfolgen kann . Vielleicht hatte ich einst inkompatible kompilierte plugins installiert ..

Jedenfalls in LoadBindings.cpp sucht es nach
// load the keybindings.xml file from the application directory, if present
UT_UTF8String appFile = XAP_App::getApp()->getAbiSuiteAppDir();
appFile += "/keybindings.xml";

Mein heutiges abiword ist 2.6.3 .
Back to top
View user's profile Send private message Visit poster's website 
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Sun 11 Aug 2013, 10:28    Post subject:  

Vielen Dank für die Antworten.

Das wäre dann die Alternative. Das sed ist auch ein Beispiel, das ich im Internet gefunden habe.

Aber eigentlich war es früher so, dass ich in die Adressleiste von Firefox eingebe murga. und das Script vervollständigt das dann zu http://www.murga-linux.com/puppy/posting.php?mode=reply&t=87951&sid=9740626e13db0d4687a40943a81b4f4e.

Oder beim Livechat gebe ich ein hallo: und es vervollständigt sich Guten Tag, mein Name ist und ich habe folgendes Anliegen.

Oder bei Facebook trage ich Face. ein und es vervollständigt mit Benutzer und Passwort.

Also alles ohne den Text vorher zu speichern.

_____________________________

Es könnte also ein Programmiertool sein, das das aktiver Fenster auf vorhandenen Text überprüft.

Ich hatte eigentlich gehofft, das es als Script geht, Also, ich bin ja noch ein echter Neuling. xprop scheint der erste Ansatz zu sein:

xprop -id `xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)" | awk '{print $5}'` | grep "WM_CLASS(STRING)"


Sonst müßte ich noch mal mit lazarus und basic gucken.
Back to top
View user's profile Send private message Visit poster's website 
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Sun 11 Aug 2013, 23:32    Post subject:  

Hier habe ich einen neuen Ansatz gefunden;


Code:
xclip -o > /tmp/neu
sed -i 's|sgh.|Sehr geehrter Herr|' /tmp/neu
geany /tmp/neu


Den Schritt mit geany habe ich nur eingefügt, weil ich im Moment nicht weiter weiß.

Wenn es jetzt gelänge mit der Tastenkombination Strg+A gleichzeitig den markierten Text in die Zwischenablage zu kopieren (ohne Strg+C), dann das Script auszuführen und alles wieder zurück in die Zwischenablage.

Dann könnte ich mit Strg+V allses korrigiert wieder haben.

Die Tastenkombination legt man wohl in der .xbindkeyssrc im Verzeichnis /bin fest.

Könnte das was sein?
Back to top
View user's profile Send private message Visit poster's website 
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Tue 13 Aug 2013, 09:02    Post subject:  

So das ist nun der Code der funktioniert:


Code:
datei=/tmp/neu
xclip -o > $datei
sed -i 's|sgh.|Sehr geehrter Herr|' $datei
sed -i 's|mfg.|Mit freundlichen Grüßen|' $datei
xclip -in -selection clipboard $datei



Jetzt möchte ich das das Script mit der Tastenkombination Strg+c gestartet wird und die Um- und Sonderlaute werden nicht richtig geschrieben. Dann müssen noch die Inhalte in eine Sonderdatei.

Ich glaube für die Umlaute gibt es Zahlenwerte, ähnlich wie bei html und strg+c hat was mit xbindkeys zu tun.

Nun gut, ich bastele mal weiter ...
Back to top
View user's profile Send private message Visit poster's website 
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Wed 14 Aug 2013, 09:56    Post subject:  

und weiter gehts.

Ich kann eine Verknüpfung zur Datei anlegen und dann den Shortcut Strg+C festlegen.

In die Datei habe ich das Script eingefügt:

Code:
#!/bin/sh
datei=/tmp/neu.txt
xclip -o > $datei
sed -i 's|sgh.|Sehr geehrter Herr|g' $datei
sed -i 's|mfg.|Mit freundlichen Grüßen|g' $datei
xclip -in -selection clipboard "$datei"


Jetzt funktioniert es tatsächlich. Mit Strg+A, Strg+C, Strg+V kann ich den Text ändern. Das ist nicht komfortabel, aber im Moment die beste Lösung.


Aber was ist mit den Umlauten. Das ü wird zu ü. Und leider nicht nur in den ersetzten Worten, sondern im ganzen Text.


Was kann das sein??
Back to top
View user's profile Send private message Visit poster's website 
R-S-H

Joined: 18 Feb 2013
Posts: 490

PostPosted: Thu 22 Aug 2013, 09:16    Post subject:  

Quote:
Aber was ist mit den Umlauten. Das ü wird zu ü. Und leider nicht nur in den ersetzten Worten, sondern im ganzen Text.

Was kann das sein??

Code:
REPLACIT="ü"
sed -i 's|'$REPLACIT'|ü|' $CLEARDAT
REPLACIT="Ü"
sed -i 's|'$REPLACIT'|Ü|' $CLEARDAT
REPLACIT="ö"
sed -i 's|'$REPLACIT'|ö|' $CLEARDAT
REPLACIT="Ö"
sed -i 's|'$REPLACIT'|Ö|' $CLEARDAT
REPLACIT="ä"
sed -i 's|'$REPLACIT'|ä|' $CLEARDAT
REPLACIT="Ä"
sed -i 's|'$REPLACIT'|Ä|' $CLEARDAT


Das ist für XML. Einfach das zwischen den " " stehende bei REPLACIT= durch Deine Hyroglyphen ersetzen. Vielleicht funktioniert's...

_________________
LazY Puppy Home
The new LazY Puppy Information Centre

Back to top
View user's profile Send private message 
chef


Joined: 18 Jun 2013
Posts: 76

PostPosted: Sat 24 Aug 2013, 12:36    Post subject:  

Danke für Deine Hilfe. Leider geht es auch damit nicht.

Ich speichere ja den Text aus der Zwischneablage in einer Datei. Da wird der Text ersetzt und die Umlaute stimmen.

Erst beim zurück-kopieren in den Zwischenspeicher zerfällt dann alles.
Ich habe auch konvertierungen und was sonst noch versucht, aber nichts hilft.

Inzwischen verfolge ich den Plan nicht mehr.

Ich habe mit Gambas ein neues System entworfen. Ich kann nun mit der Tastenkombination das Programm starten und dann aus verschiedenen Textbausteinen wählen. Beim draufklicken kopiert sich der Text in den Zwischenspeicher und beendet sich. Somit habe ich nun keine Abkürzungen mehr sondern füge den Text direkt ein. Hier gibt es keine Probleme mit Umlauten.

Das Ding ist auch gut und spielt sich hier ein. Wahrscheinlich ist das sogar besser und schneller.

Ich versuche nun, das der Text direkt an das letzte aktive Fenster gesendet wird. Das muß auch gehen, aber die Frage stelle ich dann im Gambas Forum.

Ich habe mich hier im Forum ein wenig rar gemacht. Das liegt einfach daran, daß ich hier so extrem viel gelernt habe.

Danke also ....
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 1 of 1 [9 Posts]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » Users ( For the regulars ) » Für deutschsprachige Anhänger
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0700s ][ Queries: 12 (0.0040s) ][ GZIP on ]