Přeskočit na obsah

OCR úryvků kódu na Macu: kopírování kódu z návodů a snímků obrazovky

Autor: Eduard Bruch, vývojář aplikace Optic · Aktualizováno

Chcete-li zkopírovat kód, který je zobrazen jen jako obrázek, nechte OCR přečíst ho z obrazovky a před spuštěním ho zkontrolujte. Živý text funguje u obrázků v aplikacích Applu; aplikace pro OCR obrazovky s režimem kódu funguje kdekoli a zachovává odsazení.

Stručně: u kódu na snímku obrazovky, který můžete otevřít v Náhledu, zkuste Živý text. Pro kód ve videích, snímky IDE v chatu nebo dokumenty jen s obrázky je moje volba Optic, aplikace v liště nabídek, která zkopíruje text z libovolné oblasti přetažené přes obrazovku (4,99 USD (jednorázový nákup) v Mac App Storu), s režimem kódu pro kód.

Upozornění: Optic vyvíjím já.

Proč je kód nejtěžší text k přepisování

Próza odpouští drobné chyby; kód ne. Pomlčka místo podtržítka rozbije import, chybějící závorka rozbije funkci a malé písmeno na špatném místě změní proměnnou. Dlouhé příkazy shellu, regulární výrazy a konfigurační bloky jsou přesně to, co lidé sdílejí jako snímky obrazovky, a přesně to, co se nejsnáze přepíše špatně.

Možnost 1: Živý text

Živý text funguje tam, kde ho Apple podporuje: u obrázků v Náhledu, ve Fotkách, v Rychlém náhledu a v Safari a u pozastavených snímků videa v některých přehrávačích. Nefunguje v libovolných oknech aplikací, videohovorech ani u textu v uživatelském rozhraní. U jednoho snímku kódu v Náhledu stojí za pokus text vybrat a zkopírovat. Po vložení zkontrolujte odsazení, protože právě tam obecné rozpoznávání textu často selhává.

Možnost 2: Optic s režimem kódu

Optic čte kód odkudkoli na obrazovce: ze stránky s návodem, pozastaveného videa, snímku obrazovky ve Slacku nebo komentáře u pull requestu.

  1. V Nastavení Opticu zapněte Režim kódu (jednou).
  2. Zobrazte kód na obrazovce.
  3. Klikněte na ikonu Opticu v liště nabídek a zvolte Zachytit text.
  4. Přetáhněte rámeček přes úryvek.
  5. Vložte do editoru nebo terminálu pomocí Command-V.

Co režim kódu mění:

  • Odsazení se zachovává. Optic odvodí odsazení každého řádku z toho, kde text na obrázku leží, takže vnořené bloky vyjdou vnořené. To je důležité pro Python a YAML.
  • Jazykové opravy jsou vypnuté. Běžné rozpoznávání textu může neobvyklá slova „opravovat“ směrem ke skutečným. U kódu by to měnilo identifikátory, proto je režim kódu vypíná.

Rozpoznávání používá framework Vision od Applu na Macu bez potřeby internetu a Optic nemá přístup k síti. To se hodí, když snímek obrazovky ukazuje interní kód.

Typické případy

  • Příkazy terminálu v dokumentaci. Zkopírujte instalační nebo build příkaz ze snímku terminálu.
  • Snímky IDE od kolegů. Dostaňte kód ze snímku obrazovky v chatu do svého editoru, kde ho můžete skutečně číst a testovat. Viz kopírování textu z obrázku ve Slacku na Macu.
  • Videa o programování. Video pozastavte a zachyťte kód na obrazovce.
  • Několik úryvků z jednoho návodu. Zachyťte každý blok postupně; vašich posledních 20 zachycení zůstává v historii v liště nabídek, takže každý můžete znovu zkopírovat, až se k němu ve svém projektu dostanete.

Před spuštěním zkontrolujte

OCR je dobré na čistém kódu ve vysokém rozlišení, ale pořád může zaměnit podobné znaky: 0 a O, 1, l a I, nebo rovné a oblé uvozovky, zvlášť u malého či rozmazaného textu. Než kód spustíte, projděte vložený text a nechte zvýrazňování syntaxe v editoru upozornit na cokoli zvláštního. Nevkládejte výstup OCR rovnou do shellu s právy roota, aniž byste si ho přečetli.

Kde se Optic nehodí

  • Žádný import souborů. Neotevírá obrázky ani PDF; nejdřív je zobrazte na obrazovce.
  • Žádné dávky. Jedno zachycení na jedno přetažení, takže 30stránkové PDF s výpisy kódu je práce pro nástroj OCR dokumentů.
  • Žádná znalost syntaxe. Optic rozpoznává znaky; kód nekontroluje ani neformátuje.
  • Rukopis. Kód na fotce tabule Optic číst neslibuje.

Více o snímcích kódu najdete v kopírování kódu ze snímku obrazovky na Macu.

Časté otázky

Jak na Macu zkopíruji kód z návodu na YouTube?

Video pozastavte, aby byl kód ostrý, pak přes něj přetáhněte aplikací pro OCR obrazovky, například Opticem se zapnutým režimem kódu, a vložte do editoru.

Zachovává OCR odsazení kódu?

S režimem kódu v Opticu ano: odsazení se zpětně sestaví z pozice každého řádku. Bez něj mnoho nástrojů OCR vrací řádky bez úvodních mezer.

Je kód po OCR dost spolehlivý ke spuštění?

Obvykle blízko, ale zkontrolujte ho. Obvyklými chybami jsou podobně vypadající znaky, takže kód před spuštěním přečtěte.

Posílá Optic můj kód někam?

Ne. Rozpoznávání běží na Macu a aplikace nemá přístup k síti.

Získejte Optic v Mac App Storu · Všechna fakta o Opticu. Optic vyžaduje macOS 14 Sonoma nebo novější. Porovnáváte nástroje? Viz Optic vs TextSniper.