OTEdit for Mac用のマクロの代わりを考えてみた(一括コピーの活用)

TTEdit用の自作マクロ、OTEdit for Windows用の自作マクロを作りましたが、OTEdit for Macにはマクロが無いので代わりになるものはないか探してみました。
横書きグリフを縦書きへコピー・太字フィルタの連続処理など、いくつかは基本機能の「一括コピー」で出来ました。今まで使ったことがなかったんですが色々出来ますね。「一括コピー」で部首の点在コピーも一応出来たけどこれはあまり実用的ではないので再検討。
その前に
以前のTTEditとOTEditの繰り返し作業を自動化する(HiMacroEx・Automator)の記事で書いたように、マウスとキーボードの記録ツールでもある程度連続処理ができます。
Y極大点の追加・オーバーラップ輪郭削除・巻き方向を修正・スライドショー・連番削除はAutomator(オートメーター)のAppleScriptのコードコピペで既に出来るので今回の記事ではやりません。
「一括コピー」とは?

TTEdit・OTEdit for Windows・OTEdit for Macに元からある機能です。「ファイル」-「一括コピー」。

コピー元ファイル&コピー先ファイルの2つが必要です。
コピー内容はすべての文字、コード番号で指定、ファイルで指定(自分でリストを用意)を選択できます。

「変形」でフィルタの連続処理としても使えます。

OTEdit for Windows・OTEdit for Macであれば、(.ttf→.otf)に変換も指定可能。TTEditで作った(.ttf)自作フォントを変換すれば、OTEditで編集することができます。(TTEditでは.ttf→.ttfのみ)

一括コピーは各グリフを開かないで内部で処理されます。マクロのように1文字ずつ開けて遷移していくわけではないので、かなり速いです。
一括コピーの操作のポイント
・コピー元/コピー先には異なる2つのファイル名を指定します。マクロのように今開いている1ファイル内でのコピーは出来ません。
・コピー元/コピー先の両方閉じて実行するのが悩まなくて楽です。OTEditが起動していれば、フォントファイルを開いていなくても「一括コピー」は動作します。コピー先ファイルは閉じていないと実行できません。
・コピー元/コピー先ファイルは事前に2つ用意しておくのが悩まなくて楽です。(コピー先ファイルアイコンを選択してコピー、入力欄にペーストでファイル名入力と同じになります。「置き換えてもよろしいですか?」は「置き換え」する。)
・「一括コピー」完了時にコピー先ファイルは上書き保存されます。
・【コピー元オブジェクトあり】→コピー先の既存オブジェクトを削除してペースト。置き換えコピーなので、重なる追加ペーストは出来ません。
・【コピー元オブジェクトなし】→コピー先の既存オブジェクトがそのまま残る。「空欄であること」のコピーは出来ません。
・手順のファイル名(A.otf など)は他の名前でも実行できます。
・置き換えコピーなのでシフトJIS/Unicode番号指定でも重複コピーはおこりません。TTEditとOTEditの連動している文字について。
・OTEdit製ではないフォント(TTEditから・他社製のフォントから)からのコピーは縦書き・罫線素片などの向きがずれたり、プロポーショナル幅が失われたり、文字数が合わなかったりします。
・一括コピー機能を使っての一括削除はできません。
(「ひらがな以外を一括削除」はできないが、「新規ファイルにひらがなだけをコピーして部分的に取り出す」ことはできる。)
OTEdit for Macが落ちやすいので、エラー対策に
気休めかもしれませんがやっておくといいかもしれない。
・OTEdit for Macの初回の保存で出てくる「データ範囲オーバー」のウインドウを出ないようにしておく。


「OTEdit」-「設定」、環境設定パネルの「データ範囲」で初期値がなぜか一桁なので公式ヘルプに合わせて000を追加して、データ範囲の許容を広げておく。(グリフ枠より大きければ他の数値でもOK)。一度設定すれば次回のOTEditの起動でも数値は引き継ぎされます(が、OTEditが落ちると消えてるような?)。
・自作リストを書き換えた場合、範囲外の文字・重複・不要な改行などを含まないようにする。
(Std(1-3)・Pro(1-4)・Pr6N(1-7)で扱える文字数が異なります。)
(重複削除は「重複削除ツール 1文字」などで検索してツールを探して下さい。)
Macを再起動してもエラーが出続けるようならOTEditはアンインストール&再インストール。
ダウンロードファイル
「一括コピー」の「ファイルで指定」用に使えるリストです。無料・無保証。再配布NG。ダウンロード後はデスクトップなど自分で分かりやすいところに置いて下さい。OTEdit for Mac用に用意しましたが、OTEdit for Windowsでもおそらく使えます。TTEditでも一括コピーはできますがこのCIDリストは使えません。
注意!)連続処理ではOTEdit for Macの予期しない終了や自作中のフォントファイルが開けなくなるなどのエラーが起こることがあります。割とよくあることです。「一括コピー」の実行前に必ず自作フォントファイルのバックアップを保存しておいて下さい。
sz-copylist20260217.zip
(アップデート履歴:)———————————————-
2026/02/17:公開
——————————————————————————
【配布内容の一覧】
文字列コピー_書き換え用-UTF-16LE.txt
CIDコピー_横書きを縦書きへ.csv
CIDコピー_90字形を2004字形へ.csv
CIDコピー_2004字形を90字形へ.csv
CIDコピー_CID633をStd全グリフへ.csv
CIDコピー_CID633をStdN145字へ.csv
リストに入れてないもの
OTEdit for Windows用の自作マクロにあるうち、
・異体字コピーマクロの代用になるもの(GSUB異体字コピー、IVS異体字コピー、StdNにする145字に異体字コピー)
・SZ-コピー非漢字-対応コピーStd用.jsのインデックスコピーにあたるもの(例:123456789※①②③④⑤⑥⑦⑧⑨をCID同士の対応リストにする)
は今回の配布リストに入っていませんが、必要があれば自作して下さい。
Adobe公式資料のCIDから、またはCID番号を編集画面からコピペで.csvは作れると思います。
Macで一括コピーの「ファイルで指定」用リストを改造するには
【テキストファイル(.txt)】Macに入っている『テキストエディット』が使えます。(テキストエディットユーザガイド)UTF-16LEで保存して下さい。直接文字列で書き込めます。
【CSVファイル(.csv)】Macに入っている『Numbers』(Numbersユーザガイド)、『テキストエディット』、または『LibreOffice』(ダウンロード必要、使いやすい)が使えます。
日本語(Shift JIS)で保存して下さい。(『Googleスプレッドシート』は保存方法が「UTF-8」になるのでNG。)

・『Numbers』で編集:「ファイル」→「保存」は「~~~.numbers」で保存されてしまうためNG。「ファイル」→「書き出す」→「CSV」、詳細オプション:テキストエンコーディング「日本語(Shift JIS)」で.csv保存。
・『LibreOffice』で編集:「ファイル」→「名前をつけて保存」→「テキスト CSV(.csv)」→フィルター設定を編集する→文字コード:「日本語(Shift-JIS)」で.csv保存。

・『テキストエディット』で編集:.csvファイルをテキストエディットアイコンにドラッグして開き、同じ内容のカンマ区切りテキストとしても編集できます。単純な書き換えならこれでもOK。.csvとして保存も可能。
解説はWindows用自作マクロの記事も一緒に読んで下さい
解説はOTEdit for Windows用の自作マクロと被るのでかなり省略しています。
合わせて読んで下さい。
《連続フィルタ処理》
全文字に太字フィルタを適用
OTEdit for Windowsにあるフィルタを連続適用できます。太字/細字/袋文字/白抜きで選択可能。全文字指定なので「ファイルで指定」用リスト不要。

●すでに出来ている自作フォント(自作フォント.otf)を用意します。コピー元/コピー先には同一ファイルを指定出来ないため、デスクトップ上などでコピー&ペーストし、(自作フォント-太字.otf)という名前の複製ファイルを用意します。
※コピー先は空の新規ファイル作成でもOKですが、コピー元ファイルをコピペすればコピー元とStd(1-3)・Pro(1-4)・Pr6N(1-7)の仕様が同じになるので楽です。

●自作フォント.otfを開き、任意の一文字にフィルタで太字をかけてみて、環境設定の希望の数値を覚えておきます。保存せずに閉じる。

●OTEditを起動し、「ファイル」-「一括コピー」。
コピー元ファイル(自作フォント.otf)/コピー先ファイル(自作フォント-太字.otf)を指定します。(コピー先ファイルをクリックしてコピー、入力欄にペーストで入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
「変形」で「太さ変更」、「設定」で変化量数値10・10を入力。「全ての文字コード」にチェック。「コピー元と同じコードにコピーする」にチェック。コード種別:全文字対象なのでCIDに。「OK」で一括コピー開始。
●自作フォント-太字.otfに太字加工されて全文字置き換えコピーされました。太字処理によるプロポーショナル幅のはみ出しや、パーツ同士の重なり(オーバーラップ輪郭の削除)などは適宜処理して下さい。
●ファイル名を〇〇-太字.otfに変えただけではPCでフォントファミリーとして認識されません。OTEditのヘルプから「フォントファミリーの作成方法」で検索して設定して下さい。
《CID連番→CID連番》
CID1-94をCID231-324へ94字コピー
連番→開始位置が異なる連番のずらし位置でのコピーです。「ファイルで指定」用リスト不要。
●CID1~94を埋めてある自作フォントファイルを用意します。コピー元/コピー先には同一ファイルを指定出来ないため、デスクトップ上などでコピー&ペーストし、複製ファイルを用意します。

●OTEditを起動し、「ファイル」-「一括コピー」。
コピー元ファイル(自作フォント-コピー.otf)/コピー先ファイル(自作フォント.otf)を指定します。(コピー先ファイルをクリックしてコピー、入力欄にペーストで入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
連番を入力します。「1~94」・「231」。CIDを選択。「OK」で一括コピー開始。
●(自作フォント.otf)にコピーされました。終了後(自作フォント-コピー.otf)は不要なので削除。
その他の連番→開始位置が異なる連番のコピー
以下のような連番→開始位置が異なる連番のコピーも出来ると思います。シフトJIS/Unicode/CID番号いずれかを調べて指定。
ABCDE…Z(半角)→ABCDE…Z(全角)。0123456789(半角)→0123456789(全角)。123456789→①②③④⑤⑥⑦⑧⑨。など。
※ァアィイゥウェエォオ→ァィゥェォャュョッーアイウエオのような並びの異なる連番には使用できません。
※シフトJISでは連番でもUnicodeやCIDでは連番ではないことがあります。文字一覧パネルの表示を注意。
※罫線素片と矢印ではコピー結果がおかしくなることがあります。次の項目を読んで下さい。
《罫線素片と矢印エリアの対応》
罫線素片→罫線素片へのコピー(バグが出るのでおすすめしません)
シフトJIS連番指定で罫線素片(─│┌┐┘└├┬┤┴┼)のコピーをしたところ、結果にバグが起きやすいエリアかもしれません。OTEdit for MacでもOTEdit for Windowsでも問題が出ます。記録用に残しておきます。


・文字一覧をシフトJIS順にして罫線素片エリアの前半11字(シフトJIS:849F~84A9)を埋めると、この後の11字(横線から十字)・5字・5字(ト型から十字)の繰り返しのコピー元として使えます。


・罫線素片エリアに何度か一括コピーしたところ、後半のコピーで過剰なコピーが起きました。OTEdit for Macでは、罫線素片エリアを超えてシフトJIS8740の①に不要なコピーが発生することがあります。OTEdit for Windowsでも罫線素片エリアで起きます。(実験は.otfファイル→.otfファイルなので.ttfからの仕様違いではない。)

・検証のためにOTEdit for Windowsで「123456789ABCDEFGHI」をコピー元としてあちこちに一括コピー。罫線素片と矢印で結果がおかしくなりました。順序の入れ替わりも起きています。コピー元やオブジェクト内容ではなくコピー先が問題のようです。

・罫線素片と矢印ということから、「縦書き用文字」の中の「横・縦兼用文字」(タブ表示で-横・縦と出るもの)に問題がおきやすいと予想。コピー先が画像のピンクのグリフになる時は要注意とする。
・結論)解決策は分かりませんが、罫線素片・矢印への一括コピーでの順序の入れ替わりや範囲外の過剰なコピーは起こりやすいものと考え、結果をよく確認すること。そんな数でもないのでここは手作業コピーでいいかなと思います。
・一応.csvファイルでCID同士の対応リストでもやってみましたが、出来るけど絶対安全かまでは分からないので判断保留。
・全文字にフィルタなど「すべての文字コード」・「コピー元と同じコードにコピーする」であれば「横・縦兼用文字」を含んでいてもコピー結果におそらく問題なさそうです。念の為確認はして下さい。
《点在CID→点在CID》
横書きを縦書きへ109字コピー
横書き文字を対応する縦書き文字にコピーします。コピーされる範囲はStd(1-3)までですが、Pr6N(1-7)ファイルでも実行できます。
●横書きグリフを埋めてある自作フォントファイルを用意します。コピー元/コピー先には同一ファイルを指定出来ないため、デスクトップ上などでコピー&ペーストし、複製ファイルを用意します。

●OTEditを起動し、「ファイル」-「一括コピー」。
コピー元ファイル(自作フォント-コピー.otf)/コピー先ファイル(自作フォント.otf)を指定します。(コピー先ファイルをクリックしてコピー、入力欄にペーストで入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
「ファイルで指定」にチェック、『CIDコピー_横書きを縦書きへ.csv』リストを指定します。コード種別:CIDを選択。「OK」で一括コピー開始。

●文字一覧パネルを「縦書き文字」にして確認できます。自作コピーリストは「縦書き用文字」のうち、「横・縦兼用文字」はコピーしません。OTEdit for Windows用の自作マクロの横書き縦書きコピーマクロの解説も読んで下さい。(画像はコピー可能な文字の動作確認用に作成したもの。CID633に丸オブジェクト配置、『CIDコピー_CID633を全グリフへ.csv』で全文字にコピー、全文字丸オブジェクトのファイルから新規ファイルに『CIDコピー_横書きを縦書きへ.csv』でコピー。)
●(自作フォント.otf)にコピーされました。縦書きの字形や位置や回転方向を調整してください。終了後(自作フォント-コピー.otf)は不要なので削除。
2004字形を90字形へ168字コピー
90字形を2004字形へ168字コピー
90字形/2004字形の片側を作って、もう片側は未作成の時に使います。
※90字形/2004字形の168字を全て収録するには1-7ファイルが必要です。
※コピー元/コピー先が同一の蟹牽膏棘橙祟靄屢を含みますが、置き換えコピーになるので重複は起こりません。

●2004字形または90字形を埋めてある自作フォントファイルを用意します。コピー元/コピー先には同一ファイルを指定出来ないため、デスクトップ上などでコピー&ペーストし、複製ファイルを用意します。

●OTEditを起動し、「ファイル」-「一括コピー」。
コピー元ファイル(自作フォント-コピー.otf)/コピー先ファイル(自作フォント.otf)を指定します。(コピー先ファイルをクリックしてコピー、入力欄にペーストで入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
「ファイルで指定」にチェック、『CIDコピー_2004字形を90字形へ.csv』または『CIDコピー_90字形を2004字形へ.csv』リストを指定します。コード種別:CIDを選択。「OK」で一括コピー開始。
●(自作フォント.otf)にコピーされました。同じ文字が2つになるので片側の字形を修正してください。終了後(自作フォント-コピー.otf)は不要なので削除。
《1グリフ→点在文字 /CIDで指定》
StdNにする145字へダミーオブジェクトをコピー
新規ファイルPr6N(1-7)に、StdNにするための145字へダミーオブジェクトをコピーします。

●ファイルを2つ用意します。OTEditで新規ファイルを作成、CID633(全角スペース)にN字のダミーオブジェクトを書き込み、ファイルを(A.otf)と言う名前で保存して閉じます。新規ファイルをPr6N(1-7)で作成、空のまま(B.otf)と言う名前で保存して閉じます。

●OTEditを起動し、「ファイル」-「一括コピー」。
コピー元ファイル(A.otf)/コピー先ファイル(B.otf)を指定します。(コピー先ファイルをクリックしてコピー、入力欄にペーストで入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
「ファイルで指定」にチェック、『CIDコピー_CID633をStdN145字へ.csv』を指定します。コード種別:CIDを選択。「OK」で一括コピー開始。

●(B.otf)のコピーオブジェクトは点在しているので、文字一覧パネルで「作成済みのみ」にして表示。(字形をデザイン後にダミーオブジェクトは削除。)
●一括コピー後、(A.otf)は不要なので削除。
●すでに自作のStdフォントがある場合は、さらに一括コピーでStd全文字の自作フォントを(B.otf)に追加で入れて下さい。Std全文字とStdNにするための145字は被らないので置き換えは起こりません。
《1グリフ→点在文字 /文字列で指定》
部首パーツを点在コピー (置き換えされるので、おすすめしません)
考えてみて一応出来たけどあまり良い手順ではないです。コピー先の既存オブジェクトは置き換えコピーされるため、既存のオブジェクトを消してしまいます。偏を一括コピーするなら、追加するように旁の一括コピーはできません。

●ファイルを2つ用意します。OTEditで新規ファイルを作成、CID633(全角スペース)に部首オブジェクトを書き込み、ファイルを(部首A.otf)と言う名前で保存して閉じます。新規ファイルを作成、空のまま(部首B.otf)と言う名前で保存して閉じます。

●OTEditを起動し、「ファイル」-「一括コピー」(1回目)。
コピー元ファイル(部首A.otf)/コピー先ファイル(部首B.otf)を指定します。(コピー先はファイル名をキーボード入力し、「置き換えてもよろしいですか?」は「置き換え」する。)
「ファイルで指定」にチェック、『CIDコピー_CID633をStd全グリフへ.csv』を指定します。このリストは全グリフへとなっていますが、内容はStd相当のCID1~8719(CID0と自動作成回転グリフを除外)です。コード種別:CIDを選択。「OK」で一括コピー開始。
コピー後(部首B.otf)は全て同じオブジェクトで埋まります。半角プロポーショナルグリフは全角幅に変更されます。

●部首リストを用意します。『文字列コピー_書き換え用-UTF-16LE.txt』をテキストエディットで開き、人偏リスト(例:休体件伊…)など任意に書き換え保存しておきます。画像は関連文字パネルからの部首リストの内容の取得方法です。OTEdit for Windows用の自作マクロの他のリストの取得方法も読んで下さい。

●ファイルを2つ用意します。コピー後の全同じオブジェクトの(部首B.otf)。漢字を未作成の自作フォントファイル。

●OTEditを起動し、「ファイル」-「一括コピー」(2回目)。
コピー元ファイル(部首B.otf) /コピー先ファイル(自作フォント.otf)を指定します。「ファイルで指定」にチェック、『文字列コピー_書き換え用-UTF-16LE.txt』を指定します。コード種別:CIDを選択(Unicodeでもいいかも?テキストファイルで表現できる文字=Unicode範囲です)。「OK」で一括コピー開始。
●(自作フォント.otf)に部首パーツが点在コピーされました。終了後(部首A.otf)(部首B.otf)ファイルを他の部首コピーに上書きして使いまわしてもOK。
2004字形168字へダミーオブジェクトをコピー (置き換えされるので、おすすめしません)
同じ手順でダミーオブジェクトを点在コピーできますが、置き換えコピーされるので、グリフのデザインの前しかできません。あまり使い勝手が良くない。
CID633(全角スペース)にダミーオブジェクトとして丸オブジェクトなどを置き、文字列リストを2004字形168字(Wikipedia:JIS X 0213:2004の改正からコピペできます)に書き換えて一括コピーします。
その他の用途:テキストファイルで表示できない文字(縦書きグリフ・90字形など)は無理なので、《1グリフ→点在文字 /CIDで指定》で指定します。
OTEdit for Macのヘルプページ
困ったら公式のヘルプページが一番確実なので、ヘルプから「一括コピー」で検索して下さい。

他の手段も考え中
「一括コピー」では部首パーツを点在コピーが置き換えになってしまう。偏と旁が同居できないのは使い勝手がよくないので、「一括コピー」以外でもう一案、SVGを活用して追加の点在コピーができないか考え中です。