MacのKeynoteにハイライトされた状態でコードを貼り付ける方法

最近Keynoteにコードを貼り付ける機会があり、なにかいい方法はないか調べたので、備忘録として残しておきます。
せっかくスライドに力を入れるのであれば、ソースコードもキレイにハイライトしたいものです。
Highlight(アプリ)を使う方法
調べてみると「Highlight」というソースコードをハイライトしてKeynoteに貼るためのアプリがありました。
ちなみに、リッチテキストが表示できるアプリであれば、Keynoteに限らずペーストできます。
最終バージョンは2021年12月の現時点で2018年10月のv1.4.4だったので、少し心配でしたが問題なく使用できました。
使い方は簡単で、アプリを起動するとメニューバーにHightlightのアイコンが表示されます。
コードをコピーした状態で[Highlight Code (Auto-detect)]をクリックすると、コピーしてあるコードに合わせて自動でハイライトしてくれます。
![[Highlight Code (Auto-detect)]](https://webrandum.net/mskz/wp-content/uploads/2021/12/image_1-5.png)
言語を指定してハイライトしたい場合は[Highlight Code]から言語を選択すればOK。
あとはKeynoteにペーストするだけで、色付きの状態でペーストされます。

デフォルトのスタイルだとあまりキレイにハイライトしてくれないので、[Styles]から好きなスタイルを選択しましょう。
自分の場合は「Atom One Dark」がお気に入りです。
![[Styles]のスタイル一覧](https://webrandum.net/mskz/wp-content/uploads/2021/12/image_3-5.png)
スタイルの種類もかなり多いので、困ることはなさそうです。
Keynoteにペーストして、背景だけ黒くして見やすくした状態が下の画像です。

テキストなので、もちろん後から多少の修正はできます。
色が変わる境目の部分は思ったようにいかなかったりするので、軽微な修正しかできなさそうですが、大きく変わる場合はまたHighlightすれば問題ありません。
時間もかからないので、この方法が1番良さそうです。
画像を生成して貼り付ける方法
入力したコードをシンタックスハイライトした状態で画像化してくれるCarbonというサイトがあります。
テーマ設定もかなり細かくできるのと、出来上がる画像もMacっぽくてかなりキレイです。
使い方はサイトにアクセスして、コードをペースト、背景画像や歯車アイコンから細かいスタイルを設定して「Export」でPNG画像がダウンロードできます。
ちなみにKeynoteで使用するときは、背景画像を透明で指定しておかないと、背景に塗りが入ったままになるので注意が必要です。

実際に背景画像だけ透明にしてExportしてKeynoteに貼り付けてみました。

本来はTwitterなどのSNSに投稿する目的に作られたサイトのようなので、左上のメニューがかなり大きいのと、シャドウもかなり強めです。
この辺りを調整する必要があります。
また、1度画像生成してしまうと、あとから修正したいときに再度画像を生成しないといけないので細かく何度も修正する場合は向きません。
ターミナルコマンドを使用する(不可)
他にもターミナルコマンドを使用して使用する方法もあったようです。
上記記事を参考に「Code highlighting for Keynote presentations」をインストールしてコマンドを叩いてみましたが、ハイライトされませんでした。
インストール自体はされて、コマンド実行時も特にエラーなどは出ませんでしたが、ペーストされるテキストは黒一色です。
ただ、さすがに毎回コマンドを叩くのは現実的ではありませんし、たまにしか使わないコマンドを覚えたりするのも面倒です。
今後はHighlight(アプリ)を使ってハイライトを行うようにします。





Marpで既存Markdownファイルを使ったスライド作成時に、見出しごとにスライドを分割する方法
PDFファイルをブラウザで開くときに、タイトルにファイル名ではなく別途設定した文字列を表示させたい
Spreadsheetでランダムな数字や文字列を作成する方法
Spreadsheetでチェックボックスを使う|作り方の基本から、チェックした数の取得や進捗率の表示まで
Macにデフォルトで入っている壁紙やスクリーンセーバ、アイコンの保存場所
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」
Macで複数ディスプレイを使っている場合に便利な設定集
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎