1

我正在为 FoldingText 编写一个脚本,它将一个 FoldingText 大纲(基本上是一个 Markdown 文本文件)转换为一个Remark演示文稿(一个从 Markdown 文件制作幻灯片的 HTML 脚本)。该脚本有效,但我想进行以下改进:

我不想询问保存 HTML 文件的名称和位置,而是想获取当前文档的名称并将其保存为当前文件夹中的 HTML 文件(同名)。如果已经有一个具有该名称的文档(提供覆盖该文档或另存为具有不同名称的新文档),该脚本应该会很好地失败。

我用于写入文件的脚本来自这些论坛。第一部分是:

on write_to_file(this_data, target_file, append_data) -- (string, file path as string, boolean)
try
    set the target_file to the target_file as text
    set the open_target_file to ¬
        open for access file target_file with write permission
    if append_data is false then ¬
        set eof of the open_target_file to 0
    write this_data to the open_target_file starting at eof as «class utf8»
    close access the open_target_file
    return true
on error
    try
        close access file target_file
    end try
    return false
end try
end write_to_file

第二部分是:

    set theFile to choose file name with prompt "Set file name and location:"
my write_to_file(finalText, theFile, true)

谢谢。

4

1 回答 1

0

FoldingText 应该有某种方式来检索文档的路径。我没有找到任何免费的应用程序下载,所以我无法自己检查,但是如果您查看应用程序的字典,您应该可以找到它。

我的猜测是 FoldingText 文档有一个类似于“路径”或“文件”的属性:

你可能会得到这样的结果:

set theDocPath to file of front document of application "FoldingText"
tell application "Finder"
set theContainer to container of theFile
end tell
set newPath to (theContainer & "export.html) as string
repeat while (file newPath exists)
set newPath to choose file name with prompt "Set file name and location:"
end repeat

my write_to_file(finalText, newPath, true)
于 2013-02-25T09:28:16.790 回答