aboutsummaryrefslogtreecommitdiff
path: root/filter.hs
diff options
context:
space:
mode:
Diffstat (limited to 'filter.hs')
-rw-r--r--filter.hs41
1 files changed, 0 insertions, 41 deletions
diff --git a/filter.hs b/filter.hs
deleted file mode 100644
index 8db4980..0000000
--- a/filter.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/env runhaskell
--- filter.hs
-{--
-A filter to help convert a vimwiki file to an org file.
-It does the following:
-1. Remove metadata
-2. Add filename or empty as a level three heading
-3. Remove all other headings
---}
-import Text.Pandoc.JSON
-import Data.Text
-import Data.Map.Strict
-
-main :: IO ()
-main = toJSONFilter filter''
-
-filter'' :: Pandoc -> Pandoc
-filter'' (Pandoc meta blocks) =
- Pandoc (Meta {unMeta = Data.Map.Strict.empty}) ((Header 3 (makeCustomId $ getFilename meta) ((docDate meta) ++ [Str $ pack ": "] ++ (getFilenameInlines meta))) : (filter' <$> blocks))
-
-getFilename :: Meta -> Text
-getFilename meta =
- case lookupMeta (pack "filename") meta of
- Just (MetaString s) -> s
- _ -> pack ""
-
-makeInlines :: Text -> [Inline]
-makeInlines s = [Str s]
-
-getFilenameInlines :: Meta -> [Inline]
-getFilenameInlines = makeInlines . getFilename
-
-makeCustomId :: Text -> Attr
-makeCustomId s = (pack "", [], [(pack "CUSTOM_ID", s)])
-
-emptyAttr :: Attr
-emptyAttr = (pack "", [], [])
-
-filter' :: Block -> Block
-filter' (Header _ _ _) = Null
-filter' x = x