IRC Zeilenumbruch...??? (HILFE!!)
-
Freak schrieb:
Meinen IRC-Client (xchat) interessiert es überhaupt nicht ob ich \r\n oder sonstirgendwas da reinschreibe.
Er gibt es einfach wieder ganz normal aus.Soll es ja auch nicht; das ist schon das korrekte Verhalten, ein IRC-Client soll ja auch Text übermitteln und nicht einfach so irgendwelche Steuersignale wenn man Backslashes als Text eingibt.
Ich check einfach nicht wie ich dass dann selbst formatieren kann.:(
Probiers einfach mal, Du wirst schon sehen dass das funktioniert.
-
\r\n steht für CR LF ... das sind ASCII-Zeichen und die haben den Wert 10 und 13.
Wenn du bei nem C-Compiler \r eingibst, übersetzt der das zu 10. Und \n eben zu 13. Das heißt, konkret gesprochen, IRC erwartet NICHT die Zeichen '\', 'r', '\' und 'n' als Terminierung sondern \r\n. Sprich: 10 13.
xchat sendet dagegen die [i]Zeichen[\i] \r\n, wenn du \r\n eingibst. Was ja auch genau das, was es machen soll.
-
Ja genau das denke ich ja auch.
Gibt es denn jetzt eine Möglichkeit über eine ASCII-Formatierung
dem IRC klarzumachen dass ich einen Zeilenumbruch haben möchte?!
Und eben nicht dass er die Zeichen \r\n wieder als \r\n ausgeben soll.Ich müsste ja eigentlich die Codezeichen von \r\n (aus der UNICODE-Tabelle oder
welche auch immer) als "Steuerzeichen" an den IRCServer weitergeben aber das dürfte schwierig sein mit ASCII.
Da ich mich quasi eine "Ebene" über der "Codeebene" befinde.
Also meinem Verständnis nach zufolge dürfte das unmöglich sein.
Es ist so ähnlich als würde ich versuchen mit Äpfeln, Äpfel zu verpacken.
Es geht einfach nicht, ich brauch etwas womit ich die Äpfel einwickeln/verpacken kann.Also nochmal die Frage: weiss vielleicht irgendjemand, OB und wenn ja, WIE man mit einer ASCII-Formatierung einen Zeilenumbruch im IRC erwirken kann?
-
Am einfachsten dürfte sein, einfach 2 Nachrichten zu schicken...
-
gnarf...wirklich? ^^
Das weiss ich auch :).Da ich aber gerade einen Bot schreibe wäre es toll wenn ich die Informationen
welche ich an den Channel sende von Anfang an schön formatieren könnte und nicht unnötig häufig senden müsste.Ausserdem interessiert es mich inzwischen sogar ob es prinzipiell möglich ist.
-
Freak schrieb:
Also nochmal die Frage: weiss vielleicht irgendjemand, OB und wenn ja, WIE man mit einer ASCII-Formatierung einen Zeilenumbruch im IRC erwirken kann?
Hast du schonmal im IRC jemanden gesehen, der einen Zeilenumbruch geschrieben hat? Ich nicht. Denk mal darüber nach.
-
Bin ich denn total Banane oder wollt ihr mich verarschen?!Natürlich habe ich das noch nicht gesehsen.
Denn falls es eine ASCII-Formatierung für einen Zeilenumbruch geben sollte wird dieser logischerweise NICHT mit ausgegeben!
(Siehe POST@20:54 29092004).Das einzige was ich sehen würde wäre der Zeilenumbruch und nicht die "Umbruchssequenz".
Oder was meinst Du?
-
oh mann,
1. Webzeugs bedeutet wohl WWW. Also weder IRC noch FTP sondern einfach HTTP
2. \r\n wird in einem String von deinem Compiler in die entsprechenden Zeichen konvertiert, wenn du irgend wo die Zeichen einliest, werden die natürlich nicht umgewandelt, sondern einfach als die Buchstaben Folge interpretiert
3. Warum will eigentlich jeder Programmieranfänger irgend ein IRC Client oder Bot schreiben?@ShadeOfMine
doch, das kannst du theoretisch machen.
-
Freak schrieb:
Das einzige was ich sehen würde wäre der Zeilenumbruch und nicht die "Umbruchssequenz".
Oder was meinst Du?
Dass im IRC niemand Zeilenumbrüche schreibt/ schreiben möchte.
Ich sehe nach wie vor das Problem nicht, wenn Du sowas implementieren möchtest dann müsste das halt ungefähr so aussehen dass Du zB beim Betätigen von CTRL+ENTER \r\n als Steuerzeichen schickst, nicht als Text.
-
Meine Frage war/ist ja ganz eindeutig.
Ich wollte einfach nur wissen ob es mit einer ASCII-Formatierung möglich ist einen Zeilenumbruch im IRC zu erwirken.
Dabei ist es doch vollkommen egal, ob es niemand/jemand macht/machen möchte.
Da ich nämlich NUR ASCII Zeichen an den Server schicke.@kingruedi
1.Das Webzeugs NUR WWW beinhaltet war mir nicht so ganz klar.
Dachte dass es deswegen Webzeugs heisst, siehe "...zeugs".
Die einzige Kategorie wo es noch reingepasst hätte wäre ja JAVA weil ich das Dingen in JAVA progge, jedoch dachte ich das Webzeugs angebrachter sei.
Aber egal. ich belasse es mal damit.Obwohl ich es schon ein wenig komisch finde wie Du reagierst.
Mensch ist doch ne ganz normale Frage oder nicht!?
-
kingruedi schrieb:
doch, das kannst du theoretisch machen.
Interessant, klär mich doch bitte auf.
-
Freak schrieb:
Meine Frage war/ist ja ganz eindeutig.
Ich wollte einfach nur wissen ob es mit einer ASCII-Formatierung möglich ist einen Zeilenumbruch im IRC zu erwirken.Ich habe in meinem ersten Post nicht umsonst geschrieben, dass \r\n für CR und LF steht, und dass es sich dabei um ASCII-Zeichen handelt.
Erstmal zur Aufklärung was ASCII ist:
http://en.wikipedia.org/wiki/ASCII
Und wenn du dem Link schonmal gefolgt bist, kannst du gleich mal auf der Seite nach CR und LF suchenUnd zur Beantwortung deiner Frage:
Natürlich kannst du mit purem ASCII einen Zeilenumbruch erwirken. Ganze einfach weil CR LF a) ASCII ist und b) schon immer für einen Zeilenumbruch steht.Falls du mit Buchstaben (ASCII ist, wie du ja jetzt weißt, mehr als nur Buchstaben und Zahlen) einen Zeilenumbruch erwirken willst, so dürfte dir das herzlichst schwer fallen ...
-
Ok, ich hätte mich wohl noch genauer ausdrücken müssen.
Ich wollte wissen ob mit einer ASCII-Formatierung innerhalb einer normalen
"Message" (z.B. erzeugt mit den Befehl /msg oder einfach auf der normalen Eingabeebene eines IRC-Clients) ein Zeilenumbruch erzeugt werden kann.
Wobei ich ASCII allerdings stellvertretend für alle "normalen" Zeichen welche ich mit der Tastur unter "normalen" Umständen erzeugen kann, gemeint habe.
(Ich weiss man kann auch unter "normalen" Umständen erheblich(!) mehr Zeichen erzeugen als die ASCII-Code-Zeichen, UNICODE-...).Jedoch dachte ich dass klar war was gemeint ist.
Gerade da mir die Problematik von "Steuerzeichen" <-> "Plain-Text" ja bekannt ist, wollte ich ja wissen ob vielleicht jemand weiss OB es eine Kombination von ASCII-Code OHNE Steuerzeichen, existiert mit welcher man einen Zeilenumbruch erwirken kann.Trotzdem Danke für die Links ;).
Und Dein letzer Satz bekräftigt natürlich meine Vermutung, bzgl. des nichtvorhandensein einer möglichen ASCII-Kombination ohne Steuerzeichen zum erwirken eines Zeilenumbruchs.
-
Warum liest du nicht einfach den RFC?
-
Ehm..uhm..lol
Ja, wenn es eine "nicht-Steuerzeichen-Zeilenumbruchs-ASCII-Sequenz" gibt
dann sollte die ja eigentlich auch im RFC drinnestehn.
Stimmt.
Auf die Idee, dass diese, wenn sie denn existiert, AUCH im RFC stehen muss bin ich, um ehrlich zu sein, gar nicht gekommen.
Das ... ist mal ... peinlichThx!^^
-
Mal ne Zwischenfrage, ich habe mir das ganze Zeug hier jetzt Durchgelesen und frage mich ob hier mit einzelnen Gehirnzellen jongliert wird.
a.- Du willst selber etwas machen bzw. einen Clienten schreiben.
b.- Du möchtest das der User einen Zeilenumbruch erzwingen kann.
c.- Und dieser zeilenumbruch an IRC gesendet wird (sprich \r\n)Wenn der User in einem Textfeld die Enter-Taste drückt entsteht bereits ein \r\n oder nur ein \n, somit schaust du wo nur ein \n ist ohne \r und wechselst das zu einem \r\n aus (String Replace), bei jeder Sprache wird dies als CR LF gedeutet.
Das Forum hier tauscht deine Eingaben ebenso, aus deiner Entertaste ("\r\n" oder "\n") macht er ein <br> (oder trennt die Zeilen und setzt es in <p>..</p>)
Ich weiß jetzt nicht wo bei dieser einfachen Sache jetzt das Problem liegt, oder du mußt dich genauer und schritt für schritt ausdrücken was du vor hast,
denn deine Frage ob man eine Tastatursequenz benutzen kann dafür ist Sinnlos ebenso die Suche im RFC, den für den Zeilenumbruch steht CR LF (\r\n) und die Clientsoftware muß dieses richtig interpretieren.
-
Ok, also, dann erkläre ich es noch einmal vollständig, dass mache ich aber auch nur weil mir gerade langweilig ist und ich noch Semesterferien habe ;).
Also ich schreibe einen IRC-Bot bzw. eher gesagt ich bestücke einen vorhandenen Bot mit weiterer Funktionalität.
Wen es interessiert, es ist folgender Bot: (www.jibble.org).Und der Bot kann, ebenso wie jeder Benutzer eines IRC-Clients, Nachrichten an das IRC-Netzwerk/Server schicken.
Entweder Nachrichten in einen Channel oder als private Nachricht an einen User.
Das sieht dann z.B. so aus:send(channel,message)
Wobei, channel und message vom Typ String sind.
Und meine Frage war jetzt, ob es eine Zeichenfolge gibt, welche wenn ich sie an das IRC-Netz schicke einen Zeilenumbruch bewirken würde.
Dann könnte ich nämlich die Ausgaben das Bots schön formatieren.
z.B.:message="Hallo, ich heisse Peter. <irrezeichenfolge> und ich Paul";
Wobei die Ausgabe im IRC-Channel bzw. beim Benutzer folgendermassen aussieht wenn es die Zeichenfolge <irrezeichenfolge> geben WÜRDE:
Hallo, ich heisse Peter.
und ich PaulDa es sie aber nicht gibt, wird das, was an das IRC-Netz gesendet wird ohne irgendwelche Beeinflussungen meinerseits ausgegeben und sieht daher teilweise nicht so schön aus.
So, ich denke dabei sollten wir es dann mal belassen.
Alle Klarheiten beseitigt?
-
message="Hallo, ich heisse Peter.\r\nund ich Paul";
Und ich heisse Micha, aber das konnte man schon erahnen, aber warum du das mit \r\n nicht erahnen konntest bei so vielen hinweisen bleibt schleierhaft.
-
Wahrscheinlich weil das nicht geht
was wird die send-Funktion wohl machen ... wenn sie dumm ist, hängt sie einfach ein PRIVMSG davor: "PRIVMSG #mychannel :blahblah\r\nblublub\r\n". Führt dazu, dass der IRC-Server zwei Befehle sieht. Er gibt blahblah aus und meckert über den unbekannten Befehl blublub. Wenn sie schlau ist, macht sie daraus zwei getrennte PRIVMSG-Befehle.
-
Si Senor Bashar