こんにちはこんにちは! UDA です.
結論から言うね!(※この記事は真心込めてヒトの手で書いています.)
DeepL for Mac はユーザーの想定外のタイミングで任意のクリップボードテキストを翻訳してしまう(場合がある)
翻訳アプリ DeepL for Mac のショートカットキーをデフォルト設定のまま使うと,DeepL を入れてすらいない他の Mac OS デバイス の任意のクリップボードを不意に翻訳する場合があります.個人情報でも API キーでもパスワードでも関係ありません.状況とタイミングの悪さが重なると,ユーザーの意図に反して勝手に発動し得ます.私は別デバイスで作業中に API キーを翻訳 されました.(すぐに revoke しました……)
したがって,DeepL をインストールしたら即座にショートカット設定を変更し,なおかつ Free 版を使わないことをお薦めします.また,MacOS の Universal Clipboard Handoff 機能も無効化しておくとさらに確実です.
本記事では DeepL for Mac Version 26.4.24484530 を利用して動作確認しています.2026 年 5 月 31 日時点での情報に基づいています.
確認できた発動条件
Command+C を押したかどうかに関係なく,コピー相当操作を短時間に Mac OS デバイス上で続けて行うと,DeepL がクリップボードの値を翻訳します.
- Mac OS (おそらく iOS も該当)デバイスを複数使っており UniversalClipboard (Handoff) 機能が有効 である(デフォルト有効)
- DeepL for Mac の 選択テキスト翻訳ショートカットキー設定 を変更していない(デフォルト設定
Command+C C) - DeepL for Mac がバックグラウンド動作しているデバイス上で なんらかのテキストを選択状態のままアクティブ にしている
- 別の Mac OS (or iOS) デバイスで 同一文字列を短時間でクリップボードに複数回投入する(典型的には
Command+C Command+C連打で発動し得るがCommand+Cを実際に押したかどうかは無関係 )
なお,本記事では「ユーザーの想定外に翻訳動作が発動してしまうシナリオ」に絞って考察しています.単一の MacOS デバイスでも発動するかもしれませんが,観測された状況証拠としてはアクティブウィンドウ上の選択テキストがあることがひとつの条件であるため,単一デバイス上で想定外のクリップボード値が翻訳されることはほぼ無いと思われます.
原理的に,iOS (iPhone) でも同様におそらく発生すると思うのですが,私は iPhone を持っていないため未確認です.
根本的原因と観察事実
DeepL は Command+C が 実際に押されたかどうかを見ません.同一テキストが短時間にクリップボードに投入されるとそれを Command+C C とみなし,クリップボードにアクティブアプリ上の選択テキストが入っているはずだ という仮定の元,翻訳スマートウィンドウを立ち上げてクリップボードの値を翻訳します.
実はこの信じがたい挙動は多くのユーザーによって既に観測されています.Reddit の r/macapps には,DeepL 翻訳が通常の Command+C のみで起動してしまうと報告されています.同スレッドでは CopyLess 2, Flycut, BetterTouchTool, Alfred, キーボードリピート設定などとの干渉が疑われています.秀丸マクロ.net の記事によれば秀丸エディタ上では DeepL for Windows のショートカットが機能せず設定変更を要することが分かっています.DeepL for Windows のショートカット Ctrl+C C が機能するのは,Ctrl+C を押した際に選択範囲が維持されるソフトウェアに限定されており,DeepL は複数回のコピー操作でクリップボードに入った文字列が同一かどうかを判定している,と観察しています.
- Reddit r/macapps, “DeepL app activates on normal copy (cmd + C)”
https://www.reddit.com/r/macapps/comments/1ltrbov/deepl_app_activates_on_norm - 秀丸マクロ.net, “DeeplのWindowsアプリで CTRL+C+C でコピーできない問題”
https://xn--pckzexbx21r8q9b.net/?page=nobu_tool_hm_deepl_lang_winapp_ctrl_c_c
問題は,これが Universal Clipboard 経由でも発動し得る ということです.MacOS / iOS には,同一所有者のクリップボードをデバイス間で共有できる Universal Clipboard Handoff 機能があり,他デバイスで行ったコピー操作によるクリップボードが即座に共有されます.DeepL はクリップボードの由来をチェックしないため,短時間に同一クリップボード値が入ると Command+C C 相当の挙動,つまり翻訳を行います.
再現実験
iPad 上で「クリップボードに同一テキストを連続投入する」ショートカットスクリプトを作成し再現実験を行いました.
- iPad のショートカットアプリで次の機能を作成
-
テキスト: 適当なテスト用の文字列
DEEPL_UNIVERSAL-CLIPBOARD_TEST_xxxを用意 - クリップボードにコピー: 上の文字列をコピー(このときローカル限定にしない)
- クリップボードにコピー をn回繰り返し
-
テキスト: 適当なテスト用の文字列
- デフォルト設定 DeepL for Mac がバックグラウンド動作中の MacBook 上でアクティブアプリの適当なテキストを選択して待機
- iPad 上でショートカットスクリプトを起動
- n が小さい場合は人力で「ショートカット起動連打→小休止」を繰り返すと発動しやすい
- n が大きいとショートカット一度で発動しやすい(タイムラグで良い感じに universal clipboard に連続投入されやすくなるため)
- MacBook 上で選択テキストとは関係なく iPad 側クリップボード値
DEEPL_UNIVERSAL-CLIPBOARD_TEST_xxxを翻訳したスマートウィンドウが表示される
ショートカットアプリを用いて Universal Clipboard 連続投入を簡易的に実現しましたが,発動間隔などの条件を細かく調べたかったらクリップボード投入もスクリプト制御した方が確実ですね.(ショートカットアプリでは最小 1 秒単位でしか wait できないため断念しました.)
実験中のクリップボードイベントの観測
MacBook 側では NSPasteboard.general.changeCount をポーリングし,changeCount の変化時刻,pasteboard types,string content,および com.apple.is-remote-clipboardP の有無を記録しました.これにより,iPad 側から同一文字列を 2 回コピーした際の Mac 側到着間隔を集計しました.以下はスマートウィンドウ発動を確認できた代表的な再現例を抽出したものです:
"270","2026-05-30T15:33:12.521Z","2047.220016","1669","1","com.apple.is-remote-clipboard","com.apple.is-remote-clipboard;link.contentkit.name",""
"271","2026-05-30T15:33:15.221Z","2049.920448","1670","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"272","2026-05-30T15:33:17.262Z","2051.961440","1671","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"273","2026-05-30T15:33:20.575Z","2055.274095","1672","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"274","2026-05-30T15:33:22.401Z","2057.099927","1673","1","com.apple.is-remote-clipboard","com.apple.is-remote-clipboard;link.contentkit.name",""
"275","2026-05-30T15:33:23.272Z","2057.970861","1674","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"276","2026-05-30T15:33:27.497Z","2062.196170","1675","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"277","2026-05-30T15:33:28.121Z","2062.819992","1676","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"278","2026-05-30T15:33:41.298Z","2075.997370","1677","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
"279","2026-05-30T15:33:41.891Z","2076.589987","1678","1","com.apple.is-remote-clipboard","NSStringPboardType;com.apple.is-remote-clipboard;link.contentkit.cachingidentifier;link.contentkit.contentattributionset;link.contentkit.itemclass.identifier;link.contentkit.name;public.text;public.utf8-plain-text","DEEPL_UNIVERSAL_CLIPBOARD_TEST_029"
| trial | 最後2回の到着間隔 | remote marker |
|---|---|---|
| 009 | 0.598 s | com.apple.is-remote-clipboard |
| 010 | 0.258 s | com.apple.is-remote-clipboard |
| 011 | 0.368 s | com.apple.is-remote-clipboard |
| 012 | 0.645 s | com.apple.is-remote-clipboard |
| 013 | 0.618 s | com.apple.is-remote-clipboard |
| 014 | 0.570 s | com.apple.is-remote-clipboard |
| 016 | 0.622 s | com.apple.is-remote-clipboard |
| 017 | 0.584 s | com.apple.is-remote-clipboard |
| 019 | 0.527 s | com.apple.is-remote-clipboard |
| 020 | 0.578 s | com.apple.is-remote-clipboard |
| 022 | 0.285 s | com.apple.is-remote-clipboard |
| 023 | 0.652 s | com.apple.is-remote-clipboard |
| 024 | 0.585 s | com.apple.is-remote-clipboard |
| 026 | 0.343 s | com.apple.is-remote-clipboard |
| 027 | 0.565 s | com.apple.is-remote-clipboard |
| 028 | 0.604 s | com.apple.is-remote-clipboard |
| 029 | 0.593 s | com.apple.is-remote-clipboard |
観察
- DeepL がバックグラウンド動作しているときに発動し得る
- 同一クリップボード値が書き込まれた間隔が 0.25〜0.65 秒程度のときに発動する
- 複数回同一のクリップボード値が書き込まれただけでは発動しない
- アクティブウィンドウ上でテキストを選択していないときは(おそらく)発動しない
- DeepL の選択テキスト翻訳ショートカットの設定を変更してあったり無効化してあったりすると発動しない
クリップボード操作系の任意のアプリ・操作と干渉するということ
クリップボードを操作する任意のアプリや操作の組み合わせがこの意図しない動作を引き起こし得ます.例えば,私の場合,干渉していた可能性が高いのは次のような組み合わせです:
-
Command+C…… 普通のコピー - iTerm 2 …… ターミナル上の文字列を選択するだけでコピー
- BetterTouchTools …… クリップボード書き込み操作をジェスチャーなどでトリガー可能
どれかひとつではなく,これらの組み合わせでも 近いタイミング で同じテキストの投入が起きると発動し得るというのがポイントです.他にも,コピー機能付きのマウスやペンタブのようなデバイスを利用している場合も起こりやすいでしょう.コピーされたか不安で手癖でコピー操作を連続して行う癖がある方も要注意です.
規約上の注意点
DeepL 利用規約 において「いかなる秘密情報・個人情報を含むコンテンツも Free 版で処理してはいけない (may not)」と説明しています.
you may not use the Free Services for processing content containing confidential or personal data of any kind
したがって,クリップボードにある秘密の情報や個人情報を不意の事故から守り,またユーザー自身が利用規約を守るためには, DeepL for Mac のショートカットキー設定を変更し Universal Clipboard を無効化するなどの対策を行わなければなりません.また,個人情報保護方針 は「(Free 版では)ニューラルネットワークと翻訳アルゴリズムの訓練および性能向上のためにテキストデータが一定期間保存される」とも明記しています.
When using our free services, please only enter content that you wish to transfer to our services. The transmission of this content is necessary in order for us to provide the translation or improvement and offer you our service. We process the content you upload and their translations or improvements for a limited period of time to train and improve our neural networks and algorithms.
したがって,クリップボード値が想定外に学習利用されることを防ぐためには,有償版を使うしかありません.Pro 版では翻訳テキストデータが恒久的に保存されることはないと明記されており,したがって訓練にも利用されません.
まとめ
DeepL 便利なんですよ.LLM が発達した今でも私は LLM 翻訳より DeepL 翻訳を使うことが割と多いです.LLM と違いコンテキストバイアスを何も入れずに一定の品質で翻訳できるというのがやはり大きいです.特に,専門的・技術的な英文章を LLM chatbot やコーディングエージェントに和訳させるとかなり重度のルー語になりがちですが,翻訳専門のサービスだとこうはなりません.なにより LLM 系サービスのコンテキスト・クォーターを翻訳タスクで食い潰さないようしっかり使い分けたいという気持ちが強いです(コツコツとコンテキストエンジニアリングしているとも言えます).同じ理由で翻訳サービスを使い続けているエンジニアは意外といる気がしています.「今どき翻訳は LLM にやらせればいいじゃん」という意見もあるかと思いますが,私と同じような DeepL ユーザーのために本記事を執筆してみました.参考になれば幸いです.
