Skip to content

VertexC/json-to-html

Repository files navigation

Json to HTML convertor

Build Guide

cabal exec -- ghc --make scanner.hs
./scanner input.json output.html

Result

Origin Json File

{
    "quiz": {
        "sport": {
            "q1": {
                "question": "Which one is correct team name in NBA?",
                "options": [
                    "New York Bulls",
                    "Los Angeles Kings",
                    ...
                ],
                "answer": "Huston Rocket",
                "age": 31,
                "case": true
            }
        },
        ...
    }
}

HTML opened in browser

Tricks

Syntax

  • About $ and .

  • Maybe and Just

  • IO _ when return type is IO _, use <- to assign it to a variable

    addOne :: Int -> IO Int
    addOne x = do
        return x 
    
    main = do
        value <- addOne 1
        print(value)
  • unusual show

    > show '"'
    "'\"'" :: String
    > show '\\'
    "\\\\" :: String
    > show 'x'
    "'x'" :: String

    if want to convert Char to String

    > ['x']
    "x" :: [Char]

Regular Expression with PCRE

regex cheat sheet Install

$ cabal install regex-pcre

Error may occur

Wrap.hsc:148:10: fatal error: 'pcre.h' file not found
#include <pcre.h>

solution for mac

brew install pcre
cabal install regex-pcre

cabal

Manage packages in local directroy

cabal sandbox init

to use ghci with packages with local sandboxs

# For GHC < 7.6
$ ghci -no-user-package-conf -package-conf .cabal-sandbox/x86_64-osx-ghc-8.2.2-packages.conf.d

to comile hs file with local sandboxs

cabal exec -- ghc --make myhaskell.hs

About

convert json file to html colorized

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages