This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
LICENSE | ||
| |
Nemesis | ||
| |
Setup.lhs | ||
| |
bamboo-plugin-highlight.cabal | ||
| |
changelog.md | ||
| |
readme.md | ||
| |
src/ |
readme.md
what
<pre class="haskell"><code>print "hello"</code></pre>
will highlight code as haskell source, for that the value of class attribute of pre element is haskell.
use
a syntax highlighter middleware
note, do not use this on rss feed, i.e.
make a middleware in your hack middleware chain:
none_rss_highlight :: Middleware
none_rss_highlight app = \env -> do
if env.path_info.ends_with "rss.xml"
then app env
else highlight app env
and use this!
css
underneath, it's just highlighting-kate, so grab those css.
Add them to config/theme/blueprint.txt, e.g.
css = screen, blueprint-wp, highlight/ascetic, hk-kate, custom
also customized in custom, if you want, e.g.
/* highlight */
table.sourceCode {
border-top: 1px solid #eee;
padding-top: 20px;
padding-bottom: 20px;
margin-bottom: 20px;
border-bottom: 1px solid #eee;
border-left: 5px solid #eee;
border-right: 0;
width: 530px;
}
td.lineNumbers {
display: none;
}
sample main:
module Main where
import Hack.Contrib.Middleware.Debug
import Bamboo
import Bamboo.Theme.Blueprint
import Bamboo.Plugin.Highlight
import Hack
import Hack.Contrib.Middleware.BounceFavicon
import Hack.Contrib.Middleware.ContentLength
import Hack.Contrib.Middleware.ContentType
import Hack.Contrib.Middleware.ETag
import Hack.Contrib.Middleware.ShowExceptions
import Hack.Contrib.Middleware.Static
import Hack.Contrib.Utils
import Hack.Contrib.Middleware.URLMap
import Hack.Handler.Happstack
import qualified Hack.Contrib.Middleware.Head as H
import MPSUTF8
import Prelude hiding ((.), (>))
default_content_type :: String
default_content_type = "text/plain; charset=UTF-8"
stack :: [Middleware]
stack =
[ dummy_middleware
-- filter
, bounce_favicon
-- completeness
, content_length
, content_type default_content_type
, etag
-- debuging
, show_exceptions Nothing
-- optimization
, H.head
, url_map [("", bamboo)]
]
where
bamboo = use
[bamboo_serve, no_rss, bamboo_with_theme blueprint] dummy_app
bamboo_serve = static (Just "db/public")
["/theme", "/images", "/plugin", "/favicon.ico", "/media"]
no_rss app = \env -> do
if env.path_info.ends_with "rss.xml"
then app env
else highlight app env
app :: Application
app = use stack dummy_app
main :: IO ()
main = run app








