Derzeit kann ich für Notetaking-Tools wie Evernote
und Quiver
HTML-Inhalte direkt von meinem Lieblingsbrowser kopieren und dann in die App einfügen, wobei alle Formatierungen und Links erhalten bleiben. Im orgmode scheinen jedoch alle Formatierungsinformationen verloren zu sein.
Ich habe jemanden gesehen , der vorgeschlagen hat eww
, im Internet zu surfen und den Inhalt über zu kopiereneww-org
. Das ist jedoch sehr langweilig (ich glaube nicht, dass eww
heutzutage viele Leute mit modernen Browsern im Internet surfen würden . Ich muss diesen Link erneut öffnen eww
und kopieren, ganz zu schweigen davon, dass dies manchmal eww
nicht der Fall ist den Inhalt schön rendern).
Ist es möglich, Emacs
den kopierten HTML-Code beim Einfügen direkt analysieren zu lassen ? Auch wenn es dafür noch kein Tool gibt, ist es machbar, eines zu erstellen?
Dies ist fast das einzige, was mich davon orgmode
abhält , von anderen Notetaking-Tools zu wechseln.
<b>text</b>
dann nach dem Einfügen auf irgendeine Weise beim EinfügenCmd + C
in*text*
in konvertiert werden kannorg mode
. Oder wenn nein, behalten Sie zumindest den ursprünglichen HTML-Code bei, damit ich sie später in ihrem ursprünglichen richtigen Format anzeigen kann. Die aktuelle Situation ist, dass nur einfacher Text gerendert wird.<p>I've seen somebody <a href="http://emacs.stackexchange.com/q/7171/115">suggest using <code>eww</code> to browse the web and copy the content via <code>eww-org</code></a>. However that is really tedious(I don't think there would be a lot of people browsing the web using <code>eww</code> instead of modern browsers nowadays. I'll have to open that link again in <code>eww</code> and do the copying, not to mention sometimes <code>eww</code> doesn't render the contents nicely). </p>
. Wenn ich diesen Absatz kopiere, möchte ich seine Formatierung in reproduzieren könnenorgmode
.org mode
so viel benutzerfreundlicher machen . Eigentlich gefällt es mir bei der Formatierung ohne Zwischen-RTF-Konvertierung besser, weil dadurch mehr Informationen erhalten bleiben. Zum Beispiel#+BEGIN_QUOTE
und#+BEGIN_EXAMPLE
in Ihrer Antwort würde mit der zusätzlichen Konvertierung nicht erhalten bleiben.Antworten:
Da dies Emacs ist, ja .
Mein Ansatz ist die Verwendung von Tools von Drittanbietern, die HTML verwenden und in einfachen Text oder sogar direkt in das Org-Format konvertieren können. Ich denke, dies ist ein hässlicher Hack, und es gibt vielleicht bessere Möglichkeiten, dies zu tun, aber es sieht so aus, als würde es für meine Testfälle funktionieren.
Leider ist HTML jetzt unglaublich komplex - nicht mehr nur einfache handgeschriebene Tags. Dieses komplexe HTML-Tagging erfordert den oben beschriebenen komplizierten Shell-Befehl. Es macht folgendes:
osascript
Ruft den HTML-Text aus der Zwischenablage ab. Es ist also hexadezimal codiertBeachten Sie, dass dies
osascript
für MacOS gilt. Um die Schritte 1-2 für Linux zu ändern, ersetzen Sie das Argument von shell-command-to-string durchIn jedem Fall wird die Ausgabe des
pandoc
Befehls an emacs zurückgegeben und in den Puffer eingefügt.Binden Sie den neuen Emacs-Befehl an einen Schlüssel, der "Einfügen" ähnelt, aber das bedeutet "Einfügen und Konvertieren von HTML" für Sie, und es sollte funktionieren.
Wenn Sie nicht darüber nachdenken möchten, welcher Einfügebefehl verwendet werden soll, finden Sie hier eine Linux-Version, die HTML konvertiert, wenn dies in der Zwischenablage verfügbar ist, und ansonsten auf einfachen Text zurückgreift:
quelle
pandoc
automatisch nicht viel Platz anstelle des normalen Platzes verwendetorgmode
wird. Sieorg-emphasis-regexp-components
müssten es () hinzufügen, damit diese Texte korrekt formatiert werdenorgmode
.iconv utf-8
xclip
ist auch unter OS X (möglicherweise nur mit X11 und / oder Entwicklertools installiert?), sodass die verbesserte Antwort auch unter OS X funktionieren könnte.