LoginSignup
0
0

More than 1 year has passed since last update.

論文をDeepLに放り込むときに使いたいクイックアクション

Last updated at Posted at 2023-02-27

※2023.3.16 よりよい方法を見つけたので加筆修正しました。

おきもち

論文の一部をDeepLなどの翻訳サイトにコピペする際に、

  1. 引用数字がテキストに混ざる
  2. 変な改行が入る(特にChromeでPDFからコピーするとき)
  3. 単語がハイフンで分割して改行されている

といったことがよく起こり、正しく翻訳されなかったり、文章丸ごとすっ飛ばされることがある。
→手作業で調整するのは面倒くさいので、正規表現で消したいな〜〜

ということでやりました。

Automatorの設定

ワークフローの設定

受け取る項目:テキスト
検索対象:すべてのアプリケーション
選択されたテキストを出力で置き換える:チェックを入れる
ワークフローの中身:「シェルスクリプトを実行」を左側のサイドメニューからドラッグ&ドロップ

ワークフローの名前はそのまま使用時に選択する項目名になります。

シェルスクリプトの設定

  • シェル:/usr/local/bin/python3
  • 入力の引き渡し:引数として

シェルスクリプトのコード

import re
import sys

# step 1
res = re.sub(r'([.,;:])\[?\d+\]?(?:[,-]\s?\[?\d+\]?)*\s?([A-Za-z])', r'\1\2', sys.argv[1].strip() + ' ')
# step 2
res = re.sub(r'-\s', '', res)
res = re.sub(r'([^,.])\n(.)', r'\1 \2', res)
print(res)
説明

re.sub(pattern, repl, text)

text において pattern にマッチする文字列を repl に置換する

Step 1

引用文献の参照を削除する。

  • This is a pen.1 That...
  • This is a pen.[2] That...
  • This is a pen.3,4 That...
  • This is a pen.[5-6] That...
  • This is a pen.7That...

Step 2

  • 変な改行をなくす(単語と単語の間が改行のみの場合)
  • 単語の分割を元に戻す(アルファベットとアルファベットの間がハイフンのみの場合)

ショートカット設定

  1. macのシステム設定→キーボード→キーボードショートカット
  2. サービス→(クイックアクションの名前)→ショートカットを設定

使い方

  1. テキストをコピーして、DeepLのアプリケーションの入力窓に貼り付ける。
  2. 貼り付けたテキストを全選択→右クリック→「サービス」→ワークフローを選択
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0