Vorschlag zu den Code-Boxen

Übersicht Sonstiges Portal

Neue Antwort erstellen

KnorxThieus

Betreff: Vorschlag zu den Code-Boxen

BeitragMo, Aug 26, 2013 11:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

ich wollte mal vorschlagen, dass die Code- und Syntaxboxen einen Kopier-Knopf kriegen.
Denn sehr oft postet jemand einen langen Code, den man dann lieber in der IDE als im Browser liest (weil man ihn dann auch gleich ausführen kann). Und so spart man sich das lästige Ausklappen, scrollen, markieren.

Könnte man auch in den Beispielen in der BB-hilfe so machen, die führen wahrscheinlich auch viele aus. (?)

MfG,
KnorxThieus

EDIT: Sehe hier grade das mit der Umfrage, wäre es nicht schlauer, wenn da gleich 2 Antworten-Felder stehen?
Version: BlitzPlus / Blitz+

the FR3AK

BeitragMo, Aug 26, 2013 19:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

das mit dem "Kopieren" Link ist nicht ganz so einfach wie es scheint, da viele Browser diese Funktion blockieren.

Ich hab mich gerade mal hingesetzt und ein Javascript für Greasemonkey geschrieben. Das Script erstellt neben dem "EINKLAPPEN" Link einen "CODE AUSWÄHLEN" Link, der den Code in der betroffenen Codebox markiert und man anschließend nur noch STRG + C drücken muss.

Somit hätten nun zumindest die Firefox-User eine solche Funktion Wink

Bitte beachten, dass das Script innerhalb weniger Minuten entstand und ich nicht garantiere, dass es bei euch auch funktioniert Wink

Code: [AUSKLAPPEN]

// ==UserScript==
// @name        BBP Code Copy
// @namespace   BB
// @include     http://www.blitzforum.de/*
// @version     1
// ==/UserScript==

var boxes = document.getElementsByClassName("codebox");

for(var i = 0;i<boxes.length;i++)
{
    boxes[i].parentNode.insertBefore(createCopyButton(i), document.getElementById("hidecodebox"+i).nextSibling);
}

function createCopyButton(box_index)
{
    var obj = document.createElement("span");
    obj.innerHTML = "[CODE AUSWÄHLEN]";
    obj.style.color = "#1554AF";
    obj.style.textDecoration = "underline";
    obj.style.fontSize = "0.8em";
    obj.codebox = document.getElementById("codebox"+box_index);
   
    obj.onmouseover = function()
    { 
        obj.style.cursor = "pointer";
    };
   
    obj.onmouseleave = function()
    {
        obj.style.cursor = "auto";
    };
   
    obj.onclick = function(box_index)
    {
       select(this.codebox);
    };
   
    return(obj);
}


function select(elem)
{
    if (document.selection && document.selection.createRange)
    {
        var textRange = document.selection.createRange();
        textRange.moveToElementText(elem);
        textRange.select();
    }
    else if (document.createRange && window.getSelection)
    {
        var range = document.createRange();
        range.selectNode(elem);
        var selection = window.getSelection();
        selection.removeAllRanges();
        selection.addRange(range);
    }
}



~ẼDIT

Hier der Beweis:

user posted image
  • Zuletzt bearbeitet von the FR3AK am Mo, Aug 26, 2013 21:26, insgesamt einmal bearbeitet

KnorxThieus

BeitragMo, Aug 26, 2013 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

1.) Schön, dass du das mal probiert hast!
2.) Leider habe ich keinen Firefox drauf, tut es auch Tampermonkey für Chrome?
3.) Habe das mal probiert, die Bedienung ist recht unverständlich, ich kriegs nicht hin, Knopf fehlt, aber deinen Beweis hab ich gesehn Wink
4.) Wenn du mal hier guckst, da gibt es so einen Kopieren-Button, wenn du mal einen Link anfertigst! Der geht auch! Liegt das daran, dass das übern Adobe Flash Player läuft?

MfG
Version: BlitzPlus / Blitz+

the FR3AK

BeitragMo, Aug 26, 2013 19:46
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Ein hoch auf die Langeweile Wink
2. So wie Tampermonkey ausschaut, sollte das damit eigentlich auch möglich sein.
3. Vielleicht hilft dir das weiter: http://stackoverflow.com/a/5259212
4. Über den Flashplayer ist es möglich ins Clipboard zu kopieren, aber ob das in diesem Fall verwendet wurde weiss ich nicht.

KnorxThieus

BeitragMo, Aug 26, 2013 20:49
Antworten mit Zitat
Benutzer-Profile anzeigen
1 Wink
2 OK
3 Puh, ganz schön kompliziert... Ich habs mal versucht, aber spätestens am Punkt Click Add bin ich gescheitert...
4 Rechtsklick auf den kopieren-Button: Über Adobe Flash Player... Rolling Eyes
Version: BlitzPlus / Blitz+

the FR3AK

BeitragMo, Aug 26, 2013 21:12
Antworten mit Zitat
Benutzer-Profile anzeigen
3. Ich versuchs mal bei mir zum laufen zu bekommen
4. Ah Very Happy


EDIT:

- Klicke bei Chrome per Rechtsklick auf das Tampermonkey Icon
- Gehe auf "Optionen"
- Klicke auf den Reiter links von "Installierte Userscripte"
- Füge dort das obige Javascript ein
- Klicke auf die Diskette
- Fertig

Habe festgestellt, dass die Textauswahl in Chrome etwas merkwürdig ausschaut, kopiert aber trotzdem nur den Code in der Codebox Wink

EDIT 2:

Für die Installation des Scripts unter Opera bitte hier klicken.

KnorxThieus

BeitragDi, Aug 27, 2013 17:27
Antworten mit Zitat
Benutzer-Profile anzeigen
@edit: Oh, vielen Dank! Einziger Nachteil: Unter Chrome wird die ganze Codebox mit Rahmen ausgewählt:
user posted image

PS: Sehe grade, das funktioniert ja auch in Syntaxboxen, das hast du ja wirklich fein geproggt!! Very Happy Very Happy Very Happy

Emefgeh.
Version: BlitzPlus / Blitz+

the FR3AK

BeitragDi, Aug 27, 2013 18:49
Antworten mit Zitat
Benutzer-Profile anzeigen
the FR3AK hat Folgendes geschrieben:
...
Habe festgestellt, dass die Textauswahl in Chrome etwas merkwürdig ausschaut, kopiert aber trotzdem nur den Code in der Codebox Wink
...


Das war damit gemeint Wink
Und ja, das ganze Funktioniert mit jeder Box, die mit einem Code/BB/BM-Tag eingefügt wurde
 

Kruemelator

BeitragMi, Aug 28, 2013 6:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich dachte immer für solche Fälle wurde die Ende-Taste erfunden (über den Pfeiltasten). Einfach an den anfang des Codeteils klicken und gedrückt halten, dann die Ende-Taste.

KnorxThieus

BeitragMi, Aug 28, 2013 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
@the FR3AK:
Dieser hat Folgendes geschrieben:
the FR3AK hat Folgendes geschrieben:
Habe festgestellt, dass die Textauswahl in Chrome etwas merkwürdig ausschaut, kopiert aber trotzdem nur den Code in der Codebox Wink

...und eine Leerzeile darüber... das Auge liest mit... aber das ist ein Detail, hast du gut gemacht! *auf die schulter krach*

@Kruemelator: Question Question Bei mir klappt das nicht.
Version: BlitzPlus / Blitz+

Neue Antwort erstellen


Übersicht Sonstiges Portal

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group