開発者がTwitterにコードスニペットをスクリーンショットとして共有します。チュートリアルのブログ記事が、コードブロックではなく画像としてサンプルをレンダリングしています。社内ツールのドキュメントは、ターミナルのスクリーンショットとしてしか存在しません。コードは完全に読めるのですが、画像の中に閉じ込められています——そして写真からコードを打ち直すことは、目に見えないバグを混入させる最も確実な方法の一つです。
画像からのコードの打ち直しがうまくいかない理由
コードは正確さに関して容赦がありません。セミコロンの抜け、小文字のlと数字の1の混同、波括弧と丸括弧の違い、ハイフンの代わりのenダッシュ——これらはどれもコードを静かに壊してしまいます。スクリーンショットから打ち直すとき、あなたはまさにこうしたミスを招きやすいペースで、一文字ずつ視覚的に解析しているのです。
この問題は広く見られます。ソーシャルメディアはより美しく表示するためにコードを画像に変換します。古いドキュメントはスクリーンショットのまま移行されていません。SlackやTeamsのコードを含むメッセージは、しばしばスクリーンショットとして転送されます。社内Wikiには、誰も文字起こししていない何年分ものターミナルのスクリーンショットが蓄積しています。
画面から直接コードを抽出する
Opticは画面上のコード文字をそのまま読み取ります。スクリーンショットやコード画像を含むページを開き、メニューバーからOpticを起動し、コードの上を選択範囲でドラッグします。抽出されたテキストはクリップボードに送られ、エディタやターミナルにすぐ貼り付けられます。
ターミナルコマンド
長いインストールコマンド、Docker runの文、複数のフラグを持つcurlリクエスト——これらはよくスクリーンショットとして共有されます。Opticでの一回のドラッグでコマンド全体を抽出し、間違えやすい特殊文字、フラグ、パスを保持したまま取得できます。
ソーシャルメディアのコードスニペット
Twitter、LinkedIn、Instagramの投稿では、CarbonやRay.soのようなツールを使ってコードを画像として表示することがよくあります。Opticはこうしたスタイル付きスクリーンショットからも、普通のターミナル出力と同じくらい簡単にコードを抽出します。
複数行の抽出
複数行にわたるコードブロックを選択すると、Opticは行構造を保持します。エディタに貼り付ければコードの形が保たれ、手動での再フォーマットは不要です。各キャプチャはメニューバーの履歴に保存されるため、チュートリアルから複数のスニペットを抽出して、一つずつ貼り付けていくことができます。