Entwickler-Ecke
Wünsche, Anregungen & Kritik - BB-Tag Tabelle
Xion - Sa 23.07.11 15:38
Ich denke eine CSV-Formatierung würde schon reichen ([csv][/csv] als Code-Tags)
Regan - Sa 23.07.11 17:10
Wird bloß schwierig, da einen Trenner zu finden.
Oliver M. - Sa 23.07.11 18:09
Dir gefällt meine Table-Idee also. Das freut mich. :D
Xion hat folgendes geschrieben : |
Ich denke eine CSV-Formatierung würde schon reichen ([csv][/csv] als Code-Tags) |
CSV... Hmm... :gruebel: Keine schlechte Idee, aber warum bleiben wir nicht bei BB?
Wir sollten aber nich ausdiskutieren, was denn so alles für so eine Table angegeben werden muss...
Igend wie muss man die Spaltenbreiten angeben können. Ich würde vorschlagen: [table columns="beite,breite,breite"] (breite in px oder mm??? )
Und irgend wie muss man die Tabelle über die ganse Breite ziehen können... Vielleich [table maxwidth] (breite in Proportionen und (px oder mm???))
Ich mach mal ne Beispieltabelle. Wie sie aussehen könnte.
MfG Oliver
Regan - Sa 23.07.11 18:17
Das ist weiterhin BB. BBCode bezeichnet nur eine Auszeichnungssprache auf Basis von XML, bei der die spitzen Klammern durch eckige ersetzt wurden. Der BB-Tag [csv] wäre also möglich.
Die Tabelle wird keinen weiteren Schnickschnack erhalten. Schließlich sollte die Implementation einfach bleiben.
jaenicke - Sa 23.07.11 19:20
Ich denke das sinnvollste wäre zusätzlich noch das colgroup Tag irgendwie einzubauen. So nach dem Motto:
Quelltext
1: 2: 3: 4: 5: 6: 7:
| [csv="100px;200px"(100%)]Spalte 1;Spalte 2 Eintrag 1; Eintrag 1 Eintrag 2; Eintrag 2 Eintrag 3; Eintrag 3 Eintrag 4; Eintrag 4 Eintrag 5; Eintrag 5 Eintrag 6 und so weiter; Eintrag 6[csv] |
Also angelehnt an die Syntax des delphi-Tags, hier mit den Spaltenbreiten für das colgroup Tag in Anführungszeichen und der Tabellenbreite in Klammern:
Quelltext
1: 2: 3: 4:
| <div class="syntaxContainer"> <div class="syntaxTitle genmed"> <b>Unit1.pas</b> </div> <div class="syntax"> <table cellspacing="0" cellpadding="0"> <tr> <td valign="top" style="text-align: right; padding-right: 3px; border: #DBE4EB solid; border-width: 0px 1px 0px 0px;"> <pre> 25: </pre> </td> <td valign="top" style="width: 100%; padding-left: 3px;"> <pre class="sourcecode"><span style="color: #777777">{ ... }</span> <span class="codecomment">{PROTECTTAG804fefeb542f99a68c2a0846b558333c}</span> </pre> </td> </tr> </table> </div></div> |
Wobei die Breite in Pixeln natürlich auf einen Maximalwert geprüft werden müsste.
Aus dem Code oben würde dann eine Tabelle wie im Anhang.
Tryer - Sa 23.07.11 20:53
Ein Semikolon fänd ich jetzt im Delphiforum nicht so ideal als Trennzeichen :? - vielleicht besser diesen TrennStrich | (#$7C)
Grüsse, Dirk
Regan - Sa 23.07.11 21:10
Der Senkrechtstrich ist für das C#-Forum nicht geeignet, da er dort das logische Oder repräsentiert.
jaenicke - Sa 23.07.11 21:15
Tryer hat folgendes geschrieben : |
Ein Semikolon fänd ich jetzt im Delphiforum nicht so ideal als Trennzeichen :? |
Warum? Erstens ist das CSV-Format so definiert, dass man dann eben Anführungszeichen setzt, zudem kann man escapen und außerdem wird so eine Tabelle ja eigentlich nie für Quelltext gebraucht, oder? Und wenn, dann säße der ja auch wieder in Delphi-Tags (aber das ginge vermutlich höchstens einzeilig sinnvoll).
Xion - Sa 23.07.11 21:38
jaenicke hat folgendes geschrieben : |
Tryer hat folgendes geschrieben : | Ein Semikolon fänd ich jetzt im Delphiforum nicht so ideal als Trennzeichen :? | Warum? Erstens ist das CSV-Format so definiert |
Also das CSV ist erstmal mit Kommas definiert. Der Strichpunkt ist nur so eine Unart von Excel und Software, die mit Excel kompatibel sein will (weil man echtes CSV immer extra importieren musste).
Wäre es nicht außerdem besser, wenn sich die Tabelle automatisch der Größe anpasst? Das ist ja eigentlich der Vorteil gewesen, dass die dann auch bei kleineren Fenstern umgebrochen wird etc.
Oliver M. - Sa 23.07.11 22:29
Oliver M. hat folgendes geschrieben : |
Igend wie muss man die Spaltenbreiten angeben können. Ich würde vorschlagen: [table columns="beite,breite,breite"] (breite in px oder mm??? )
Und irgend wie muss man die Tabelle über die ganse Breite ziehen können... Vielleich [table maxwidth] (breite in Proportionen und (px oder mm???)) |
Ist euch zu kompliziert... Ja, vielleicht habt ihr recht.
Quelltext
1: 2: 3: 4: 5: 6:
| [table columns="beite,breite" maxwidth title="Tabelle:"] Regan[trenner]Sa 23.07.11 09:20 Xion[trenner]Sa 23.07.11 15:38 Regan[trenner]Sa 23.07.11 17:10 Oliver M.[trenner]Sa 23.07.11 18:09 ...[trenner]...[/table] |
Wobei
columns,
maxwidth und
titel natürlich optional sind...
Und statt trenner müsste irgendein knackiger Buchstabe hin.
Aber man sollte zumindes die Möglichkeit habe, die Tabelle sauber zu struckturieren...
Yogu - So 24.07.11 17:12
Oliver M. hat folgendes geschrieben : |
[code][table columns="beite,breite" maxwidth title="Tabelle:"] |
Naja, ein Titel ist ja wohl nicht nötig, den kann man ja besser drüberschreiben. Abgesehen davon hat
jaenicke ja schon einen Vorschlag gemacht, der die gleichen Funktionen bietet, nur etwas kompakter.
jaenicke - So 24.07.11 17:28
Xion hat folgendes geschrieben : |
Wäre es nicht außerdem besser, wenn sich die Tabelle automatisch der Größe anpasst? Das ist ja eigentlich der Vorteil gewesen, dass die dann auch bei kleineren Fenstern umgebrochen wird etc. |
Nein, denn wenn eine Spalte z.B. nur 100 Pixel braucht, wäre es nicht sinnvoll, wenn diese über die ganze Browserbreite geht. Damit wäre jeder Gewinn an Übersichtlichkeit wieder zunichte...
Oliver M. - Mi 27.07.11 12:08
Yogu hat folgendes geschrieben : |
Naja, ein Titel ist ja wohl nicht nötig |
Sorry, Denkfehler: Der titel Tag muss in die Zeile und soll bewirken, dass es eine Überschriftenzeile ist und das sie dann igend wie anders Hinterlegt ist.
Yogu - Mi 27.07.11 15:22
Oliver M. hat folgendes geschrieben : |
Yogu hat folgendes geschrieben : | Naja, ein Titel ist ja wohl nicht nötig |
Sorry, Denkfehler: Der titel Tag muss in die Zeile und soll bewirken, dass es eine Überschriftenzeile ist und das sie dann igend wie anders Hinterlegt ist. |
Also eine Überschriftszeile in der Tabelle, wie
<th>s im
<thead>. Meine Idee: Wenn die zweite Zeile innerhalb von
[csv] bzw.
[table] leer ist, wird die erste Zeile als Überschriftszeile hervorgehoben.
Boldar - Do 28.07.11 00:16
Mal im Ernst: Braucht man das wirklich?
Diese ganze Diskussion hier ist doch nur aufgekommen, weil jemand gerne ne js-Injection machen wollte, und meinte, Tabellen vorzuschieben sei unauffälliger.
Ich glaube, die Entwickler hier haben auch so genug zu tun, ohne Funktionen zu implementieren, die nur 0.001% der User nutzen werden, weil sie den anderen entweder zu kompliziert sind oder einfach unnötig sind.
jaenicke - Do 28.07.11 00:48
Wichtig ist das Feature sicher nicht, aber ich kann mich schon an ein paar Gelegenheiten erinnern, wo ich tatsächlich mit Leerzeichen und Code-Tags oder so eine Tabelle nachgestellt habe. Das wird zwar vermutlich wirklich nicht oft gebraucht, aber wenn erhöht es die Übersicht enorm.
Da ist eben die Frage wie viel Aufwand das ist, aber ich glaube so viel ist das gar nicht, zumindest wenn man in der Tabelle nicht alle anderen Tags unterstützt.
Teekeks - Do 28.07.11 10:01
Und eine weite Frage die ich mir stelle:
Momentan wird das zwar nicht wirklich gefordert (weil nicht vorhanden). Aber:
Wenn es die Funktion geben würde, könnte ich mir vorstellen, dass mehr Leute sie auch nutzen würden.
Ich kann mich natürlich auch täuschen.
Gruß Teekeks
Th69 - Do 28.07.11 11:04
Hallo Teekeks,
dein Text liest sich ein bißchen wie "Wenn der Hahn kräht auf dem Mist, ändert sich das Wetter, oder es bleibt wie es ist." :lol:
Teekeks - Do 28.07.11 11:35
In etwa so ist er auch gemeint.
Das war halt einfach eine Frage die ich mir gestellt und einfach mal gepostet habe. :D
Boldar - Do 28.07.11 14:49
Teekeks hat folgendes geschrieben : |
Und eine weite Frage die ich mir stelle:
Momentan wird das zwar nicht wirklich gefordert (weil nicht vorhanden). Aber:
Wenn es die Funktion geben würde, könnte ich mir vorstellen, dass mehr Leute sie auch nutzen würden.
Ich kann mich natürlich auch täuschen.
Gruß Teekeks |
Damit dass wirklich passiert, muss eine absolut simple Syntax verwendet werden...
Regan - Fr 29.07.11 08:38
Boldar hat folgendes geschrieben : |
Damit dass wirklich passiert, muss eine absolut simple Syntax verwendet werden... |
Welche simple Syntax würdest du denn vorschlagen?
jaenicke - Fr 29.07.11 09:14
Ich glaube simpler als meine Variante geht kaum mehr. Denn die Breitenangaben kann man ja weglassen, dann schreibt man nur vorne und hinten ein Tag und die Zeilen hin...
Oliver M. - Mo 01.08.11 12:49
Ja, ja. Alles muss von irgend jemand gemacht werden.
Und klar, das Forum funktionier auch ohne Tabelle. Aber es funktionier auch ohne [b] und so weiter. Die Frage ist: warum eine Tabelle hinzufügen. Und ich glaube die Antwort ist: damit wir die Beiträge einfacher formatieren können!
Und ich denke, wenn wir irgend eine selbst ausgedachte CSV-Formatierung benutzen, wird es deutlich schwerer sein, eine Rutine zu schreiben, die das ganze in HTML umwandelt. Deswegen würde ich sagen: wir machen es gans genau wie in HTML, nur mit [ statt <. Dann müssen nur noch [table] zu <table> und [tr] zu <tr> gemacht werden.
P. S.: in welcher Sprache wird das Forum eigentlich Programmiert?
glotzer - Mo 01.08.11 12:52
sagt wohl alles ^^
Oliver M. - Mo 01.08.11 12:55
glotzer hat folgendes geschrieben : |
sagt wohl alles ^^ |
Das gewählte Thema oder der Beitrag existiert nicht. :nixweiss:
FaTaLGuiLLoTiNe - Mo 01.08.11 13:11
Oliver M. hat folgendes geschrieben : |
glotzer hat folgendes geschrieben : |
sagt wohl alles ^^ |
Das gewählte Thema oder der Beitrag existiert nicht. :nixweiss: |
Der war gut!
Hinweis: Du forderst duch so vehement neue Formatierungsmöglichkeiten. Jetzt nutzt mal jemand eine vorhandene Formatierung, um den relevanten Teil seines Beitrages hervorzuheben, also achte auch darauf.
Oliver M. - Mo 01.08.11 13:58
Oliver M. hat folgendes geschrieben : |
glotzer hat folgendes geschrieben : |
sagt wohl alles ^^ |
Das gewählte Thema oder der Beitrag existiert nicht. :nixweiss: |
Okay, ich dachte das fette PHP wäre eine automatische Formatierung. Ja, ich habe ge
dacht. Gut, eingentlich hätte ich auch so sehen sollen das ihr Java :wink: benutzt.
Sorry, aber ich kann kein PHP. Also kann ich auch nicht helfen, eine Tabelle zu Programmieren, was ich liebend gerne tuen würden. Zumindes kann ich euch nicht helfen, wenn ihr keinen
echten Editor wollt. Denn wenn die Formatierung zu kompliziert ist, kann man ja ein iFrame haben mit einem Programm, was eine Tabele anzeigt, die man ausfüllen kann. Aber bei dieser, ja eigentlich
perfeckten, Lösung würdet ihr sehr viel krummes PHP schreiben müssen.
Schade
jaenicke - Mo 01.08.11 15:06
Da ist nicht viel zu programmieren, das sind hauptsächlich ein paar RegExe nehme ich an. Aber
Martok scheint sich ja der Sache schon annehmen zu wollen. :mrgreen:
Martok - Mo 01.08.11 17:42
Naja, die Frage ist, wie viel komplizierter wird das durch Quoting und die dazugehörigen Escapes. Meiner ersten Einschätzung nach sehr viel ;)
Ich persönlich würde mir das mittlerweile so ähnlich wie List-Tags denken. Also im Prinzip schon jedes Element einzeln auszeichnen, nur die Ende-Tags aus HTML sind ja nicht unbeingt notwendig. Sowas in der Art:
Quelltext
1: 2: 3: 4: 5:
| [table="20%;40%"(100%)] [head][cell]X[cell]Y [row][cell]1.1[cell]1.2 [row][cell]2.1[cell]2.2 [/table] |
Das würde im Prinzip sogar ColSpan zulassen:
[cell=3]
Note: das ist keine offizielle Aussage, nur meine persönliche Meinung ;)
Yogu - Mo 01.08.11 18:45
Oliver M. hat folgendes geschrieben : |
wir machen es gans genau wie in HTML, nur mit [ statt <. Dann müssen nur noch [table] zu <table> und [tr] zu <tr> gemacht werden. |
Ganz so einfach ist es doch nicht: Sonst haben wir nachher haufenweise nicht geschlossene Tags und Elemente an falscher Stelle.
Eine CSV-ähnliche Formatierung ist, würde ich sagen, viel einfacher zu realisieren: Den Inhalt von
[csv][/csv] in Zeilen aufteilen, diese wiederum mit den Zellen-Trennzeichen aufspalten und das ganze in einem zweidimensionalen Array zwischenspeichern. Jetzt muss nur noch sichergestellt werden, dass jede Zeile gleich viele Spalten hat, Überschriftszeilen müssen erkannt werden und so weiter. Am Schluss kann man aus dem Array einen HTML-Code machen.
Martok: Das ist aber meiner Meinung nach umständlicher und sicher mehr Schreibarbeit als die CSV-Syntax. Und den Trennstrich könnte man ja mit
|| escapen.
Oliver M. - Mo 01.08.11 19:13
Martok hat folgendes geschrieben : |
Quelltext 1: 2: 3: 4: 5:
| [table="20%;40%"(100%)] [head][cell]X[cell]Y [row][cell]1.1[cell]1.2 [row][cell]2.1[cell]2.2 [/table] | |
Ja, das würde auch mir gefallen. Das "
="20%;40%"(100%)]" müsste natürlich optional sein. Aber wenn ich kurz mitmischen darf, ich finde die Idee der CSV-Formatierung (oder richtig: Semmikolon-Formatierung) ganz gut, und für das Problem mit dem Trenner habe ich die Lösung:
[;] Und vielleicht, bin mir nicht sicher, sollte man sagen das es einfach Zeile für Zeile geschrieben wird, dann könnte man die
[row]-Tags weg lassen. Also:
Quelltext
1: 2: 3: 4: 5:
| [table] oder [table="20%;40%"(100%)] [head][;]X[;]Y [;]1.1[;]1.2 [;]2.1[;]2.2 [/table] |
Das würde das Ganze auch noch eine Stück kompackter machen.
jaenicke - Mo 01.08.11 19:15
Martok hat folgendes geschrieben : |
Ich persönlich würde mir das mittlerweile so ähnlich wie List-Tags denken. Also im Prinzip schon jedes Element einzeln auszeichnen, nur die Ende-Tags aus HTML sind ja nicht unbeingt notwendig. Sowas in der Art: |
Auch ich finde das zu kompliziert. Aus zwei Gründen:
- Erstens nutzt es dann vermutlich kaum jemand.
- Und zweitens fehlt dann beim Erstellen der Tabelle der Überblick. Die Tags dazwischen verwirren nur. ;-)
Ich glaube nicht, dass hier viel Aufwand nötig ist was die Syntax angeht. Ich denke eine Beschriftung macht z.B. so gut wie immer Sinn. Da könnte man vielleicht einfach eine Leerzeile mit Trennzeichen als leer erkennen und dann den Kopf weglassen, aber ich glaube das braucht man nicht. Eine Beschriftung kann man wohl verlangen. ;-)
Wichtig ist doch nur, dass man eine tabellarische Darstellung ohne viel Aufwand hat. Viel mehr Mühe würden sich ohnehin die wenigsten machen.
Wie das in Zitaten usw. aussieht, muss man natürlich mal schauen, aber zumindest im kleinen Test via Debugger im Browser sah es soweit gut aus. :mrgreen:
Regan - Mo 01.08.11 21:15
Oliver M. hat folgendes geschrieben : |
Also:
[table="20%;40%"(100%)]
[head][;]X[;]Y
[;]1.1[;]1.2
[;]2.1[;]2.2
[/table]
Das würde das Ganze auch noch eine Stück kompackter machen. |
Ich würde mich diesem Vorschlag anschießen. Damit fällt dann natürlich das
colspan weg, aber das wäre meiner Meinung nach verzichtbar. So hat man wenigstens noch etwas Übersicht und wird nicht von einer Tagwelle überrollt.
Oliver M. - Di 02.08.11 11:20
Regan hat folgendes geschrieben : |
Damit fällt dann natürlich das colspan weg |
Warum?
Quelltext
1: 2: 3: 4: 5: 6:
| [table="20%;40%"(100%)] [head]X[;]Y [cs=2]1.1 [rs=2]2.1[;]2.2 3.2 [/table] |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!