Salva HTML dagli Appunti come testo di marcatura


9

Voglio essere in grado di evidenziare una sezione di una pagina Web e copiarla negli Appunti, quindi salvarla sul mio disco locale come markdown. Ho bisogno di un modo efficiente per farlo.

Il mio attuale metodo ingombrante è:

  1. evidenziare la sezione e copiarla negli appunti
  2. apri Libre Office Writer
  3. incollare in Writer
  4. salva il documento Writer come HTML
  5. terminale aperto
  6. cd nella directory in cui ho salvato l'HTML
  7. pandoc -s -r html /home/me/a/b/mydoc.html -o /home/me/a/b/mydoc.md

Ovviamente, ho bisogno di un metodo migliore! Eventuali suggerimenti?


Credo che ottenere HTML o rich text dalla richiesta degli Appunti X su Stackverflow possa fornire indicazioni per ottenere ciò che stai cercando.
armeggia il

Puoi fare riferimento a una pagina che potresti voler copiare in questo modo?
slm

Potrebbe essere qualsiasi pagina web che mi capita di navigare. Esempio: money.cnn.com/2013/06/05/technology/mobile/…
MountainX

Stai selezionando la pagina web tramite la pagina di origine, giusto? O pezzi di esso comunque.
slm

Come StephaneChazelas ha menzionato nei commenti qui sotto, sto solo selezionando il testo da Firefox (o altro browser) normalmente. NON vado alla vista sorgente.
MountainX

Risposte:


11

Con una versione recente di xclip(l' -topzione è stata aggiunta nel 2010 ma non ancora rilasciata AFAICT, quindi avresti bisogno di prenderla da sovversione o usare quella in Debian).

xclip -o -selection clipboard -t text/html | pandoc -r html -w markdown

E se vuoi riportarlo negli appunti:

xclip -o -selection clipboard -t text/html |
  pandoc -r html -w markdown |
  xclip -i -selection clipboard

Cosa che puoi fare in un ciclo con:

while :; do
  xclip -o -selection clipboard -t text/html |
    pandoc -r html -w markdown |
    xclip -i -selection clipboard -quiet
done

Il secondo xclip, con -quietsi bloccherà fino a quando qualcos'altro rivendica la selezione CLIPBOARD, cioè fino a quando non selezioni qualcos'altro da qualche parte.

In questo modo, puoi copiare avanti e indietro tra il tuo browser e qualunque cosa tu stia incollando il markdown.

@tink ha anche un utile link a una domanda simile su StackOverflow dove puoi trovare come implementarlo in Python.


Il presupposto è che stai selezionando la fonte effettiva di una pagina web, non solo la navigazione, giusto?
slm

@slm, no. In browser come Firefox o Chrome, quando si seleziona e / o si copia del testo in una pagina Web (renderizzata), il browser imposta la selezione sia come stringa (per le applicazioni di testo da utilizzare) sia come HTML (per applicazioni che lo comprendono come libreoffice da usare). Questi sono chiamati obiettivi. xclip -selection clipboard -t TARGETSelencherà i target / formati impostati da Firefox dopo aver copiato del testo da lì.
Stéphane Chazelas,

È questa una nuova funzionalità in xclip? Ottengo a -t: nessun file o dir. Sto usando ver: 0.12.
slm

1
@StephaneChazelas Soluzione eccezionale! Ho preso xclip da qui: pkgs.org/debian-sid/debian-main-amd64/… e si è installato in Kubuntu 12.04 senza problemi. Questo è esattamente il tipo di soluzione che speravo. Grande!
MountainX

1
@slm: La mia versione funzionante di xclip (installata dal link sopra) mostra anche la versione 0.12, ma il deb si chiama xclip_0.12 + svn84-2_amd64.deb. Questo include l'opzione -t e tale opzione è descritta nella sua pagina man. Ma la pagina man non mostra l'opzione text / html, e probabilmente non avrei capito niente da solo.
MountainX,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.