GNU/Linux >> Linux の 問題 >  >> Linux

X クリップボードから HTML ソースまたはリッチ テキストを取得する

X11 では、選択の所有者と通信し、サポートされている形式について尋ね、特定の形式のデータを要求する必要があります。これを行う最も簡単な方法は、既存のウィンドウ ツールキットを使用することだと思います。例えば。 Python と GTK を使用:

#!/usr/bin/python

import glib, gtk

def test_clipboard():
    clipboard = gtk.Clipboard()
    targets = clipboard.wait_for_targets()
    print "Targets available:", ", ".join(map(str, targets))
    for target in targets:
        print "Trying '%s'..." % str(target)
        contents = clipboard.wait_for_contents(target)
        if contents:
            print contents.data

def main():
    mainloop = glib.MainLoop()
    def cb():
        test_clipboard()
        mainloop.quit()
    glib.idle_add(cb)
    mainloop.run()

if __name__ == "__main__":
    main()

出力は次のようになります:

$ ./clipboard.py 
Targets available: TIMESTAMP, TARGETS, MULTIPLE, text/html, text/_moz_htmlcontext, text/_moz_htmlinfo, UTF8_STRING, COMPOUND_TEXT, TEXT, STRING, text/x-moz-url-priv
...
Trying 'text/html'...
I asked <a href="http://superuser.com/questions/144185/getting-html-source-or-rich-text-from-the-x-clipboard">the same question on superuser.com</a>, because I was hoping there was a utility to do this, but I didn't get any informative responses.
Trying 'text/_moz_htmlcontext'...
<html><body class="question-page"><div class="container"><div id="content"><div id="mainbar"><div id="question"><table><tbody><tr><td class="postcell"><div><div class="post-text"><p></p></div></div></td></tr></tbody></table></div></div></div></div></body></html>
...
Trying 'STRING'...
I asked the same question on superuser.com, because I was hoping there was a utility to do this, but I didn't get any informative responses.
Trying 'text/x-moz-url-priv'...
http://stackoverflow.com/questions/3261379/getting-html-source-or-rich-text-from-the-x-clipboard

@rkhayrov の回答を補完するために、既にそのためのコマンドが存在します:xclip .より正確には、xclip へのパッチがあります xclip に追加されました 2010年後半ですが、まだリリースされていません。したがって、Debian のような OS が xclip のサブバージョン ヘッドで出荷されていると仮定します。 (2019 編集 :これらの変更を加えたバージョン 0.13 は最終的に 2016 年にリリースされました (そして 2019 年 1 月に Debian に取り込まれました):

CLIPBOARD 選択のターゲットを一覧表示するには:

$ xclip -selection clipboard -o -t TARGETS
TIMESTAMP
TARGETS
MULTIPLE
SAVE_TARGETS
text/html
text/_moz_htmlcontext
text/_moz_htmlinfo
UTF8_STRING
COMPOUND_TEXT
TEXT
STRING
text/x-moz-url-priv

特定のターゲットを選択するには:

$ xclip -selection clipboard -o -t text/html
 <a href="https://stackoverflow.com/users/200540/rkhayrov" title="3017 reputation" class="comment-user">rkhayrov</a>
$ xclip -selection clipboard -o -t UTF8_STRING
 rkhayrov
$ xclip -selection clipboard -o -t TIMESTAMP
684176350

そして xclip セレクションを設定して所有することもできます (-i -o の代わりに ).


Linux
  1. Fon認証ポータルからWisprタグを取得しますか?

  2. 着信メールをText/plainからText/htmlに変更しますか?

  3. クリップボードでHTMLのソースを編集する方法は?

  1. コマンドラインから html ファイル (画像、css を含む) を印刷できますか?

  2. テキストのブロックを外部ソースから vi エディターに貼り付ける最も簡単な方法

  3. クリップボードからの Linux イメージ

  1. クリップボードに送信されるテキスト選択を切り替えたりオフにしたりするにはどうすればよいですか?

  2. cp コマンドのソース コードはどこから入手できますか?

  3. コマンドラインからクリップボードにテキストをパイプする方法