コンポジションにあらかじめテロップ用のレイヤーを作成する TEXT1、TEXT2 など 設定したいフォントなどを適用したテキストレイヤーを必要な分だけ作成しておく

CSVを作成する

telop.csv

TextLayer,Telop
TEXT1,命果てるもの
TEXT1,海馬を横切る鼓動
TEXT1,永遠がそこにあるなら
TEXT1,終わりは何故怖いの
TEXT1,花の香りよ
TEXT1,煙る時雨柔らかい熱は
TEXT1,解けて冷たく沈む自我に命は燃えている
TEXT1,かたちの無いもの
TEXT1,それに囚われるもの
TEXT1,歪に揺れる蜃気楼
TEXT1,吸い込まれてしまいそう
TEXT1,何故悲しいの
TEXT1,どうして泣いているの
TEXT1,脳裏をよぎるテレパシー
TEXT1,死ぬ間際にわかるなら何?

スクリプトを実行し、CSVを選択する

(function () {
    // 現在選択しているコンポジションを取得
    var comp = app.project.activeItem;

    // コンポジションが選択されていることを確認
    if (comp && comp instanceof CompItem) {
        app.beginUndoGroup("Create Telop Text Layers");

        // ファイル選択ダイアログでCSVファイルを選択
        var csvFile = File.openDialog("CSVファイルを選択してください", "*.csv");

        if (!csvFile) {
            alert("CSVファイルが選択されていません。");
            app.endUndoGroup();
            return;
        }

        var telopData = [];
        csvFile.open("r");

        // ヘッダ行をスキップ
        csvFile.readln();

        // CSVを読み込み、配列に格納
        while (!csvFile.eof) {
            var line = csvFile.readln();
            var columns = line.split(",");
            telopData.push({
                textLayer: columns[0],
                telop: columns[1]
            });
        }

        csvFile.close();

        // telopDataの順番を逆にする
        telopData.reverse();

        // CSVデータに基づいてテキストレイヤーを複製し、テキストを変更
        for (var j = 0; j < telopData.length; j++) {
            var data = telopData[j];

            // 対応するテキストレイヤーを探す
            var textLayer = comp.layer(data.textLayer);
            if (!textLayer) {
                alert("テキストレイヤー '" + data.textLayer + "' が見つかりません。");
                continue;
            }

            // テキストレイヤーを複製
            var newTextLayer = textLayer.duplicate();
            newTextLayer.name = data.telop;

            // 複製したテキストレイヤーのインポイントとアウトポイントを設定
            // newTextLayer.inPoint = audioLayer.inPoint;
            // newTextLayer.outPoint = audioLayer.outPoint;

            // テキストの内容を変更
            newTextLayer.text.sourceText.setValue(data.telop);

            // 新しいレイヤーをコンポジションの一番上に移動
            // newTextLayer.moveToBeginning();
        }

        app.endUndoGroup();
    } else {
        alert("コンポジションを選択してください。");
    }
})();