Я использую пакет FSNotify для просмотра моей файловой системы для изменений в файлах разметки, поэтому я могу запустить их через Pandoc автоматически. Тем не менее, у меня возникли проблемы с тем, чтобы менеджер с успехом вышел.
В своем роде мой код основан на использовании Yesod одного и того же пакета:
module Main where
import System.FSNotify
import Filesystem (getWorkingDirectory)
import System.Exit
import Control.Concurrent
main = do
cwd <- getWorkingDirectory
putStrLn "Watching current directory, press RETURN to exit."
withManager $ \man -> do
_ <- forkIO $ do
watchTree man cwd (const True) $ \fp -> print fp
_ <- getLine
exitSuccess
Когда я использую runhaskell
, программа работает отлично, но если я скомпилирую ее в исполняемый файл (используя ghc --make
), когда я нажимаю enter, мой терминал перестает отвечать на запросы. Я компилирую это на 64-разрядной версии Windows 7.
EDIT: Завершенный код. Ну, не совсем законченный - там еще больше я хочу сделать с этим - но работаю.