[gelöst:] bedingte Nullbreiten Wechsel

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

[gelöst:] bedingte Nullbreiten Wechsel

Beitrag von erikafuchs »

Hallo Leute,
schon wieder was Originelles:
Gibt es in oO/lO den "bedingten Nullbreiten Wechsel" oder kennt jemand eine Möglichkeit in einem Dialogfeld mit eingeschalteter automatischen Zeilentrennung ein Zeichen einzubauen, das bedingt einen Zeilenvorschub erzeugt?
Warum? Ich erzeuge in meinem Rechentrainer lange Zahlen, die aus der ausgeschriebenen Form in Ziffern umgewandelt werden müssen. Für "sechshundertachtundfünzigtausenneunhundertzweiundachtig" ist das Feld zu klein, laut Duden schreibt man das zusammen, ich hätte es gerne nach "... tausend ...) getrennt - aber halt nur, wenn die zufällige Zahl zu lang für das Fenster ist.
Zuletzt geändert von erikafuchs am Fr, 11.09.2020 16:56, insgesamt 2-mal geändert.
Hiker
******
Beiträge: 590
Registriert: Mo, 08.09.2014 21:34
Wohnort: Berlin

Re: bedingte Nullbreiten Wechsel

Beitrag von Hiker »

https://de.m.wikipedia.org/wiki/Bedingter_Trennstrich

Ob es im Dialogfeld geht, kann ich Dir aber nicht sagen.

Unter dem Schlüsselwort Soft-hypgen findet Mann mehr, als via bedingter Nullbreitenwechsel. Deutsch: Trennvorschlag.

Schönen Sonntag.
Jörn
Libre Office 6.3.1 (Win 10 Pro) / Libre Office 6.0.7 (Win8.1 Pro, Win 7 Pro) / AOO (Win 7)
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: bedingte Nullbreiten Wechsel

Beitrag von Stephan »

oder kennt jemand eine Möglichkeit in einem Dialogfeld mit eingeschalteter automatischen Zeilentrennung ein Zeichen einzubauen, das bedingt einen Zeilenvorschub erzeugt?
Mit einem Zeichen geht das, meines Wissens, nur unter LInux (LF), unter Windows sind zwei Zeichen (CR+LF) nötig, jedoch ... für Textfelder in Formularen ist diese Eigenschaft einstellbar (für Textfelder in Dialogen anscheinend nicht).

Wenn Du also den String "meinString":

Code: Alles auswählen

meinString = "sechshundertachtundfünzigtausend" & CHR(13) & CHR(10) & "neunhundertzweiundachtig"
einem Textfeld, auf einem Dialog oder in einem Formular, zuweist erfolgt der Umbruch nach "tausend".

Das Ganze bedingt zu machen ist reine Fleißarbeit, denn da es bereits Makros/Vorlagen zur Umwandlung von Zahlen in Zahl-Worte gibt:

z.B.:
http://www.ooowiki.de/attachments/CalcV ... Worten.stc
https://web.archive.org/web/20120606014 ... hlWort.odt

braucht Du dort die vorkommenden Teilworte nur abzuschreiben und in Bedingungen zu packen.


Gruß
Stephan
erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

Re: bedingte Nullbreiten Wechsel

Beitrag von erikafuchs »

Also das mit dem bedingten Trennstrich ginge natürlich auch, geht aber in Textfeldern von Dialogen wohl nicht. (Ich habe das mal in Writer ausprobiert mit "Einfügen" -> "Formatierungszeichen" -> "Bedingter Trennstrich". Der wird im Text aber angezeigt, auch wenn die Formatierungszeichen ausgeblendet sind - gehört das so? Werden die nur nicht ausgedruckt? In Word werden die ausgeblendet.)
Strg + '-' geht in Calc Zellen auch nicht.
Lieber Stephan, ich habe mir auch deine Links angesehn, aber Ziffern in Zahlworte und umgekehrt kann ich ja schon, ich habe da keine Möglichkeit für bedingte Trennung gefunden.
Nochmal zur Verdeutlichung: ""sechshundertachtundfünzigtausenneunhundertzweiundachtig" möchte ich nach "tausend" getrennt haben, "achttausendeinhundert" nicht. Und diese Zahlen werden, wie gesagt, zufällig erzeugt.
Ich muss wohl beim Leerzeichen bleiben, wenn das auch nicht den Vorgaben im Duden entspricht.
erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

Re: bedingte Nullbreiten Wechsel

Beitrag von erikafuchs »

Ich habe eine Lösung gefunden (und hoffe, dass die auch überall funktioniert).
Man kann in oO wohl keine Unicodezeichen per Tastendruck einfügen, man findet aber bei "Einfügen" "Sonderzeichen" ganz unten (bei Calibri nach 'erweitertes griechisch' unter 'allgemeine Interpunktion') ein leeres Kästchen, bei dem U+200B angezeigt wird. Wenn man dieses hinter "tausend" einfügt, so wird die Zahl hier getrennt - ohne dass man im ungetrennten Zustand dieses angezeigt bekommt.
Mal sehen, ob das auch in Linux und OS klappt!
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: bedingte Nullbreiten Wechsel

Beitrag von Stephan »

ich habe da keine Möglichkeit für bedingte Trennung gefunden.
Ja und? Über diese Möglichkeit verfügst Du doch selbst indem Du bestimmst wann getrennt werden soll (=die Begingung für die bedingte Trennung, DEinen Anforderungen gemäß aufstellst). DAS ist doch Ausgangspunkt Deiner Frage gewesen.
Nochmal zur Verdeutlichung: ""sechshundertachtundfünzigtausenneunhundertzweiundachtig" möchte ich nach "tausend" getrennt haben, "achttausendeinhundert" nicht.
EXAKT so hatte ich Dich verstanden und genau dafür hatte ich Dir den Weg aufgezeigt.

Muss ich diesen Weg nun noch soufflieren?

-gibt eine Länge vor ab Welcher getrennt werden soll
-untersuche die Länge des vorhandenen Zahl-Wortes und WENN es länger ist als die vorgegebene Länge, dann: untersuche es anhand der TEilzahlwörter, an welcher Stelle die Trennung hingehört
-füge die Trennung an dieser, gerade bestimmten Stelle ein



Gruß
Stephan
Hiker
******
Beiträge: 590
Registriert: Mo, 08.09.2014 21:34
Wohnort: Berlin

Re: bedingte Nullbreiten Wechsel

Beitrag von Hiker »

erikafuchs hat geschrieben: So, 06.09.2020 19:22 Man kann in oO wohl keine Unicodezeichen per Tastendruck einfügen, l
Windows erlaubt die dezimsle Code-Eingabe über den Ziffernblock, wenn Du einen hast: Probier Mal: Alt 8203
Also die 4 Ziffern mit gedrückter Alt-Taste

Mfg, Jörn
Libre Office 6.3.1 (Win 10 Pro) / Libre Office 6.0.7 (Win8.1 Pro, Win 7 Pro) / AOO (Win 7)
erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

Re: bedingte Nullbreiten Wechsel

Beitrag von erikafuchs »

Also ALT 8203 funktioniert in meinem Fall nicht - es erzeugt ein ♂ Zeichen.

Aber mit dem Einfügen als Sonderzeichen, wie oben beschrieben, klappt es einwandfrei - auch unter Linux.

Das erspart mir die Rechnerei wo "tausend" steht und ob es noch in das Fenster passt. Meines Erachtens bringt das auch neue Probleme, da bei der Proportionalschrift die Wortbreite nicht genau berechnet werden kann (wahrscheinlich schon, ich kann es aber nicht). Dann komme ich mit den Einheiten bei den Textfeldern nicht wirklich zurecht (Thomas hat in seinem Buch auch keine Erklärung) und dann ist die Schrift in Windows, Linux und mac sehr verschieden - mit U 200B klappt es wunderbar.
erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

bedingte Nullbreiten Wechsel

Beitrag von erikafuchs »

erikafuchs hat geschrieben: So, 06.09.2020 00:26 Hallo Leute,
schon wieder was Originelles:
Gibt es in oO/lO den "bedingten Nullbreiten Wechsel" oder kennt jemand eine Möglichkeit in einem Dialogfeld mit eingeschalteter automatischen Zeilentrennung ein Zeichen einzubauen, das bedingt einen Zeilenvorschub erzeugt?
Warum? Ich erzeuge in meinem Rechentrainer lange Zahlen, die aus der ausgeschriebenen Form in Ziffern umgewandelt werden müssen. Für "sechshundertachtundfünzigtausenneunhundertzweiundachtig" ist das Feld zu klein, laut Duden schreibt man das zusammen, ich hätte es gerne nach "... tausend ...) getrennt - aber halt nur, wenn die zufällige Zahl zu lang für das Fenster ist.
Antworten