Mit Pandoc mit Swift

Ich versuche, mit Pandoc LaTeX nach Markdown zu konvertieren. Ich muss eine Datei erstellen und dann den Befehl pandoc terminal ausführen. Das Problem ist, dass sich die von mir erstellte Datei nicht in demselben Verzeichnis befindet, in dem ich die Terminalbefehle ausführe.

Ich habe versucht, die Shell ("cd") zu verwenden, aber Sie werden nicht in den Ordner des Benutzers verschoben.

Irgendwelche Ideen

import Cocoa

class ViewController: NSViewController {

    func shell(args: String...) -> Int32 {
        let task = NSTask()
        task.launchPath = "/usr/bin/env"
        task.arguments = args
        task.launch()
        task.waitUntilExit()
        return task.terminationStatus
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        shell("pwd")

        let file = "input.txt"
        let text = "\\emph{test}"

        if let dir : NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true).first {
            let inputPath = dir.stringByAppendingPathComponent(file)

            //writing
            do {
                try text.writeToFile(inputPath, atomically: false, encoding: NSUTF8StringEncoding)
                shell("pandoc","-f","latex","-t","markdown","input.txt","-o","output.txt")
            }
            catch {/* error handling here */}

            let outputPath = dir.stringByAppendingPathComponent("output.txt")
            //reading
            do {
                let inputText = try NSString(contentsOfFile: inputPath, encoding: NSUTF8StringEncoding)
                print(inputText)

                let convertedText = try NSString(contentsOfFile: outputPath, encoding: NSUTF8StringEncoding)
                print(convertedText)

            }
            catch {/* error handling here */}
        }


    }

    override var representedObject: AnyObject? {
        didSet {
        // Update the view, if already loaded.
        }
    }


}

Hier ist der Ausgang

/Users/james/Library/Developer/Xcode/DerivedData/FlashCardPreview-gqzwutewnxspazcdloxqruaikvel/Build/Products/Debug
env: pandoc: No such file or directory
\emph{test}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage