首页 > 解决方案 > 使用 Adob​​e Indesign Scripting 使用 ActionScript 编写文件时如何获取换行符

问题描述

我正在用 ActionScript 编写一些脚本来自动化 Adob​​e Indesign 2019(Creative Cloud Suite 的一部分)中的一些任务,但这适用于 Adob​​e Creative Cloud 中所有应用程序的所有脚本。

我不想使用ExtendScript Toolkit来编辑/运行脚本,因为它非常慢。

因为没有console.log()可用的东西(至少我知道)并且alert()会停止用户输入以继续,我创建了一个小文件记录器,但它不会附加文件,而是继续覆盖第一行。我tail -f indesign.log用来监控日志文件。

这是记录器的代码

function logger(message){
  var logFilePath =  new File ('indesign.log');
  logFilePath.encoding = 'UTF-8';
  try {
    logFilePath.open('a');
       }
  catch(err) {
              logFilePath.close();
              logFilePath.open('a');
             }
    logFilePath.write(new Date().toLocaleString() +": "  +   message + "\n");
    //logFilePath.writeln(new Date().toLocaleString() +": "  +   message + "\n");
    logFilePath.close()
        }

logger("Script started")
logger("2nd line")
logger("3rd line")
logger("4th line")
logger("Script finished")

我也尝试过使用writeln而不是write,但它没有任何区别。

我尝试了不同的换行符,例如"\n"and "\r\n",但没有什么不同。

我尝试了不同的File.open选项,例如.open('w'), .open('ra')。关于这个的文档要么不清楚,要么真的过时了(或者我找不到它)。

非常感谢评论中有关编辑/运行 ActionScripts 的最佳 IDE 的任何建议。

标签: actionscriptadobe-indesign

解决方案


推荐阅读