2015-08-09 9 views
12

In particolare, ho blocchi di codice per l'installazione che voglio che l'utente sia in grado di copiare e incollare rapidamente in un terminale. Vorrei un pulsante per 'copiare negli appunti' per il blocco di codice. Poiché c'è un pulsante "copia negli appunti" per gli URL di clone git, mi chiedevo se potevo tornare indietro o, in caso contrario, se c'era qualcosa di relativamente semplice che avrei potuto aggiungere al MD per farlo accadere. O questo semplicemente non è possibile con il processamento e la "salvezza" che il testo del MD attraversa?Un modo semplice per aggiungere "copia negli appunti" a GitHub markdown?

+2

non è semplicemente possibile. – bitoiu

+0

O almeno, non senza richiedere una nuova funzionalità, presumo. – zanerock

+0

Credo che il pulsante 'copia negli appunti' per gli URL di clone git utilizza Flash sotto il cofano per scrivere negli appunti (poiché il browser non fornisce accesso in scrittura agli appunti tramite JavaScript). Mi aspetto che sarebbe piuttosto difficile, se non impossibile, portarlo avanti anche usando una sorta di estensione per browser/plugin per script. – Waylan

risposta

2

Penso che non sia quello che vuoi, ma se vuoi copiare, puoi farlo eseguendo il bookmarklet e aggiungendo un pulsante di copia.

var copy = function(target) { 
    var textArea = document.createElement('textarea') 
    textArea.setAttribute('style','width:1px;border:0;opacity:0;') 
    document.body.appendChild(textArea) 
    textArea.value = target.innerHTML 
    textArea.select() 
    document.execCommand('copy') 
    document.body.removeChild(textArea) 
} 

var pres = document.querySelectorAll(".comment-body > pre") 
pres.forEach(function(pre){ 
    var button = document.createElement("button") 
    button.className = "btn btn-sm" 
    button.innerHTML = "copy" 
    pre.parentNode.insertBefore(button, pre) 
    button.addEventListener('click', function(e){ 
    e.preventDefault() 
    copy(pre.childNodes[0]) 
    }) 
}) 
+0

Hmm, lo controllerò. – zanerock

+0

Non riuscivo a farlo funzionare in Chrome. Non ho fatto molto debugging, ma pensavo di aver visto qualcosa su una limitazione o un bug nei bookmarklets di Chrome. Adoro l'idea, però. – zanerock

Problemi correlati