web-dev-qa-db-ja.com

クリップボードにコピーされたテキストを一部のテキストファイルに自動転送

マウスからコピーしたテキスト(クリップボードまたはX選択)、または Ctrl+C、自動的にテキストファイルに転送されます。

VEED [ 1 ]と呼ばれる字幕ビデオに非常に優れたWebサイトを使用しています。これは音声から自動的に字幕を生成しますが、無料バージョンでは.SBVまたはキャプションと期間を含む.SRT形式。キャプションと期間の各部分を1つずつコピーして貼り付ける必要があります。したがって、私はこのタスクを容易にする方法を望んでいます。テキストの各部分とテキストファイルにコピーされた時間を自動的に転送します。

1
Ghost Rider

以下の手順は Glutanimate、Siddharth のソースと同じですが、 Glutanimate、Siddharth で使用されているプログラムを使用する代わりに、以下のプログラムを使用する必要があります。

プログラムを使用する前に、プログラムで、コピーしたテキストの宛先ファイルを指定する必要があります。以下の場合、宛先ファイルは/home/jim-carrey/Desktop/your-file.txt。プログラムは次のとおりです。

#!/bin/bash

# name: automatic_transfer_copied_text
# author: Ghost Rider 
# source: Glutanimate and Siddharth (https://askubuntu.com/questions/1167026/detect-clipboard-copy-paste-event-and-modify-clipboard-contents)

# Automatically transfers text copied by the mouse to some text file

while ./clipnotify;
do
  SelectedText="$(xsel)"
  CopiedText="$(xsel -b)"
  if [[ $CopiedText == $SelectedText ]]; then
    echo $CopiedText >> "/home/jim-carrey/Desktop/your-file.txt"
  fi
done

依存関係:

  1. xsel
    Sudo apt-get install xsel
  2. クリップ通知( https://github.com/cdown/clipnotify
    リポジトリで提供される事前コンパイルされたclipnotifyを使用するか、自分でコンパイルできます。

clipnotifyをコンパイルするには:
Sudo apt install git build-essential libx11-dev libxtst-dev
git clone https://github.com/cdown/clipnotify.git
cd clipnotify
Sudo make

使用するには:

  1. このリポジトリをZipとしてダウンロードするか、スクリプトをコピーしてテキストエディターに貼り付け、automatic_transfer_copied_text.shとして保存します。
  2. スクリプトとclipnotify(ダウンロードまたはプリコンパイル済み)が同じフォルダーにあることを確認してください。
  3. スクリプトのフォルダーでターミナルを開き、権限を設定します
    chmod +x "automatic_transfer_copied_text.sh"
  4. ターミナルに入力して実行:
    ./automatic_transfer_copied_text.sh
  5. いいよプログラムの実行中、コピーされたテキストは指定されたファイルに送信されます。問題の場合は/home/jim-carrey/Desktop/your-file.txt
1
Ghost Rider