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(アプリ)を使ってハイライトを行うようにします。




Spreadsheetでランダムな数字や文字列を作成する方法
Spreadsheetのプルダウンメニューの作り方
Marpで既存Markdownファイルを使ったスライド作成時に、見出しごとにスライドを分割する方法
PDFファイルをブラウザで開くときに、タイトルにファイル名ではなく別途設定した文字列を表示させたい
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
MacでEvernoteにWebデザインをストックしたいならPaparazzi!とFolder Action Scriptの組み合わせがオススメ!!
Google Chromeの新規タブページのウェブページへの「ショートカット」を非表示にする方法
Keyboard MaestroのTime of Dayトリガーは「Wireless Network Condition」での条件分岐とセットで使う!
Ulyssesで記号を使ったマークアップを無効化する方法|毎回エスケープするのが面倒なときに使える
Macの最前面ウインドウをハイライトし、背景を薄暗くして集中力を高める「HazeOver」
Path Finderで設定しておくと便利なショートカットキー一覧
macOS標準の日本語入力の辞書をATOKにインポートする方法
CSS Nite in Kobe, vol.45「Adobe XDの自動アニメーションで作るプロトタイプと 現場で活用できるマイクロインタラクションの作り方」に参加してきました
Bartender 4のShow for Updates機能を使って、AirPodsに接続しているときだけ「ToothFairy」のアイコンを表示させる