Hello community, here is the log from the commit of package patat for openSUSE:Factory checked in at 2017-06-04 01:59:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/patat (Old) and /work/SRC/openSUSE:Factory/.patat.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "patat" Sun Jun 4 01:59:46 2017 rev:2 rq:499750 version:0.5.2.0 Changes: -------- --- /work/SRC/openSUSE:Factory/patat/patat.changes 2017-04-07 13:53:52.410674503 +0200 +++ /work/SRC/openSUSE:Factory/.patat.new/patat.changes 2017-06-04 01:59:47.984448783 +0200 @@ -1,0 +2,10 @@ +Mon May 22 08:08:53 UTC 2017 - [email protected] + +- Update to version 0.5.2.0 with cabal2obs. + +------------------------------------------------------------------- +Wed May 3 08:24:09 UTC 2017 - [email protected] + +- Update to version 0.5.1.2 with cabal2obs. + +------------------------------------------------------------------- Old: ---- patat-0.5.0.0.tar.gz New: ---- patat-0.5.2.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ patat.spec ++++++ --- /var/tmp/diff_new_pack.rpsIIu/_old 2017-06-04 01:59:48.536370812 +0200 +++ /var/tmp/diff_new_pack.rpsIIu/_new 2017-06-04 01:59:48.540370247 +0200 @@ -17,7 +17,7 @@ Name: patat -Version: 0.5.0.0 +Version: 0.5.2.0 Release: 0 Summary: Terminal-based presentations using Pandoc License: GPL-2.0+ @@ -32,11 +32,11 @@ BuildRequires: ghc-containers-devel BuildRequires: ghc-directory-devel BuildRequires: ghc-filepath-devel -BuildRequires: ghc-highlighting-kate-devel BuildRequires: ghc-mtl-devel BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-pandoc-devel BuildRequires: ghc-rpm-macros +BuildRequires: ghc-skylighting-devel BuildRequires: ghc-terminal-size-devel BuildRequires: ghc-text-devel BuildRequires: ghc-time-devel @@ -59,7 +59,7 @@ %files %defattr(-,root,root,-) %doc LICENSE -%doc CHANGELOG.md +%doc CHANGELOG.md README.md %{_bindir}/%{name} %changelog ++++++ patat-0.5.0.0.tar.gz -> patat-0.5.2.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/CHANGELOG.md new/patat-0.5.2.0/CHANGELOG.md --- old/patat-0.5.0.0/CHANGELOG.md 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/CHANGELOG.md 2017-05-16 13:34:42.000000000 +0200 @@ -1,5 +1,22 @@ # Changelog +- 0.5.2.0 (2017-05-16) + * Add navigation using `PageUp` and `PageDown`. + * Use `skylighting` instead of deprecated `highlighting-kate` for syntax + highlighting. + +- 0.5.1.2 (2017-04-26) + * Make build reproducible even if timezone changes (patch by Félix Sipma) + +- 0.5.1.1 (2017-04-23) + * Include `README` in `Extra-source-files` so it gets displayed on Hackage + +- 0.5.1.0 (2017-04-23) + * Bump `aeson-1.2` dependency + * Fix vertical alignment of title slides + * Fix wrapping issue with inline code at end of line + * Add bash-completion script generation to Makefile + - 0.5.0.0 (2017-02-06) * Add a `slideLevel` option & autodetect it. This changes the way `patat` splits slides. For more information, see the `README` or the `man` page. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/README.md new/patat-0.5.2.0/README.md --- old/patat-0.5.0.0/README.md 1970-01-01 01:00:00.000000000 +0100 +++ new/patat-0.5.2.0/README.md 2017-05-16 13:34:42.000000000 +0200 @@ -0,0 +1,425 @@ +patat +===== + +[](https://travis-ci.org/jaspervdj/patat) [](https://hackage.haskell.org/package/patat) []() + +`patat` (**P**resentations **A**top **T**he **A**NSI **T**erminal) is a small +tool that allows you to show presentations using only an ANSI terminal. It does +not require `ncurses`. + +Features: + +- Leverages the great [Pandoc] library to support many input formats including + [Literate Haskell]. +- Supports [smart slide splitting](#input-format). +- Slides can be split up into [multiple fragments](#fragmented-slides) +- There is a [live reload](#running) mode. +- [Theming](#theming) support. +- [Auto advancing](#auto-advancing) with configurable delay. +- Optionally [re-wrapping](#line-wrapping) text to terminal width with proper + indentation. +- Syntax highlighting for nearly one hundred languages generated from [Kate] + syntax files. +- Written in [Haskell]. + + + +[Kate]: https://kate-editor.org/ +[Haskell]: http://haskell.org/ +[Pandoc]: http://pandoc.org/ + +Table of Contents +----------------- + +- [Table of Contents](#table-of-contents) +- [Installation](#installation) + - [Pre-built-packages](#pre-built-packages) + - [From source](#from-source) +- [Running](#running) +- [Options](#options) +- [Controls](#controls) +- [Input format](#input-format) +- [Configuration](#configuration) + - [Line wrapping](#line-wrapping) + - [Auto advancing](#auto-advancing) + - [Advanced slide splitting](#advanced-slide-splitting) + - [Fragmented slides](#fragmented-slides) + - [Theming](#theming) + - [Syntax Highlighting](#syntax-highlighting) +- [Trivia](#trivia) + +Installation +------------ + +### Pre-built-packages + +There is a pre-built package available for Debian: + +- <https://packages.debian.org/unstable/patat> + +### From source + +Installation from source is very easy. You can build from source using `stack +install` or `cabal install`. `patat` is also available from [Hackage]. + +[Hackage]: https://hackage.haskell.org/package/patat + +For people unfamiliar with the Haskell ecosystem, this means you can do either +of the following: + +#### Using stack + +1. Install [stack] for your platform. +2. Clone this repository. +3. Run `stack setup` (if you're running stack for the first time) and + `stack install`. +4. Make sure `$HOME/.local/bin` is in your `$PATH`. + +[stack]: https://docs.haskellstack.org/en/stable/README/ + +#### Using cabal + +1. Install [cabal] for your platform. +2. Run `cabal install patat`. +3. Make sure `$HOME/.cabal/bin` is in your `$PATH`. + +[cabal]: https://www.haskell.org/cabal/ + +Running +------- + +`patat [*options*] file` + +Options +------- + +`-w`, `--watch` + +: If you provide the `--watch` flag, `patat` will watch the presentation file + for changes and reload automatically. This is very useful when you are + writing the presentation. + +`-f`, `--force` + +: Run the presentation even if the terminal claims it does not support ANSI + features. + +`-d`, `--dump` + +: Just dump all the slides to stdout. This is useful for debugging. + +`--version` + +: Display version information. + +Controls +-------- + +- **Next slide**: `space`, `enter`, `l`, `→`, `PageDown` +- **Previous slide**: `backspace`, `h`, `←`, `PageUp` +- **Go forward 10 slides**: `j`, `↓` +- **Go backward 10 slides**: `k`, `↑` +- **First slide**: `0` +- **Last slide**: `G` +- **Reload file**: `r` +- **Quit**: `q` + +The `r` key is very useful since it allows you to preview your slides while you +are writing them. You can also use this to fix artifacts when the terminal is +resized. + +Input format +------------ + +The input format can be anything that Pandoc supports. Plain markdown is +usually the most simple solution: + + --- + title: This is my presentation + author: Jane Doe + ... + + # This is a slide + + Slide contents. Yay. + + --- + + # Important title + + Things I like: + + - Markdown + - Haskell + - Pandoc + +Horizontal rulers (`---`) are used to split slides. + +However, if you prefer not use these since they are a bit intrusive in the +markdown, you can also start every slide with a header. In that case, the file +should not contain a single horizontal ruler. + +`patat` will pick the most deeply nested header (e.g. `h2`) as the marker for a +new slide. Headers _above_ the most deeply nested header (e.g. `h1`) will turn +into title slides, which are displayed as as a slide containing only the +centered title. + +This means the following document is equivalent to the one we saw before: + + --- + title: This is my presentation + author: Jane Doe + ... + + # This is a slide + + Slide contents. Yay. + + # Important title + + Things I like: + + - Markdown + - Haskell + - Pandoc + +And that following document contains three slides: a title slide, followed by +two content slides. + + --- + title: This is my presentation + author: Jane Doe + ... + + # Chapter 1 + + ## This is a slide + + Slide contents. Yay. + + ## Another slide + + Things I like: + + - Markdown + - Haskell + - Pandoc + +For more information, see [Advanced slide splitting](#advanced-slide-splitting). + +Configuration +------------- + +`patat` is fairly configurable. The configuration is done using [YAML]. There +are two places where you can put your configuration: + +1. In the presentation file itself, using the [Pandoc metadata header]. +2. In `$HOME/.patat.yaml` + +[YAML]: http://yaml.org/ +[Pandoc metadata header]: http://pandoc.org/MANUAL.html#extension-yaml_metadata_block + +For example, we set an option `key` to `val` by using the following file: + + --- + title: Presentation with options + author: John Doe + patat: + key: val + ... + + Hello world. + +Or we can use a normal presentation and have the following `$HOME/.patat.yaml`: + + key: val + +### Line wrapping + +Line wrapping can be enabled by setting `wrap: true` in the configuration. This +will re-wrap all lines to fit the terminal width better. + +### Auto advancing + +By setting `autoAdvanceDelay` to a number of seconds, `patat` will automatically +advance to the next slide. + + --- + title: Auto-advance, yes please + author: John Doe + patat: + autoAdvanceDelay: 2 + ... + + Hello World! + + --- + + This slide will be shown two seconds after the presentation starts. + +Note that changes to `autoAdvanceDelay` are not picked up automatically if you +are running `patat --watch`. This requires restarting `patat`. + +### Advanced slide splitting + +You can control the way slide splitting works by setting the `slideLevel` +variable. This variable defaults to the least header that occurs before a +non-header, but it can also be explicitly defined. For example, in the +following document, the `slideLevel` defaults to **2**: + + # This is a slide + + ## This is a nested header + + This is some content + +With `slideLevel` 2, the `h1` will turn into a "title slide", and the `h2` will +be displayed at the top of the second slide. We can customize this by setting +`slideLevel` manually: + + --- + patat: + slideLevel: 1 + ... + + # This is a slide + + ## This is a nested header + + This is some content + +Now, we will only see one slide, which contains a nested header. + +### Fragmented slides + +By default, slides are always displayed "all at once". If you want to display +them fragment by fragment, there are two ways to do that. The most common +case is that lists should be displayed incrementally. + +This can be configured by settings `incrementalLists` to `true` in the metadata +block: + + --- + title: Presentation with incremental lists + author: John Doe + patat: + incrementalLists: true + ... + + - This list + - is displayed + - item by item + +Setting `incrementalLists` works on _all_ lists in the presentation. To flip +the setting for a specific list, wrap it in a block quote. This will make the +list incremental if `incrementalLists` is not set, and it will display the list +all at once if `incrementalLists` is set to `true`. + +This example contains a sublist which is also displayed incrementally, and then +a sublist which is displayed all at once (by merit of the block quote). + + --- + title: Presentation with incremental lists + author: John Doe + patat: + incrementalLists: true + ... + + - This list + - is displayed + + * item + * by item + + - Or sometimes + + > * all at + > * once + +Another way to break up slides is to use a pagraph only containing three dots +separated by spaces. For example, this slide has two pauses: + + Legen + + . . . + + wait for it + + . . . + + Dary! + +### Theming + +Colors and other properties can also be changed using this configuration. For +example, we can have: + + --- + author: 'Jasper Van der Jeugt' + title: 'This is a test' + patat: + wrap: true + theme: + emph: [vividBlue, onVividBlack, bold] + imageTarget: [onDullWhite, vividRed] + ... + + # This is a presentation + + This is _emph_ text. + +  + +The properties that can be given a list of styles are: + +`blockQuote`, `borders`, `bulletList`, `codeBlock`, `code`, `definitionList`, +`definitionTerm`, `emph`, `header`, `imageTarget`, `imageText`, `linkTarget`, +`linkText`, `math`, `orderedList`, `quoted`, `strikeout`, `strong`, +`tableHeader`, `tableSeparator` + +The accepted styles are: + +`bold`, `dullBlack`, `dullBlue`, `dullCyan`, `dullGreen`, `dullMagenta`, +`dullRed`, `dullWhite`, `dullYellow`, `onDullBlack`, `onDullBlue`, `onDullCyan`, +`onDullGreen`, `onDullMagenta`, `onDullRed`, `onDullWhite`, `onDullYellow`, +`onVividBlack`, `onVividBlue`, `onVividCyan`, `onVividGreen`, `onVividMagenta`, +`onVividRed`, `onVividWhite`, `onVividYellow`, `underline`, `vividBlack`, +`vividBlue`, `vividCyan`, `vividGreen`, `vividMagenta`, `vividRed`, +`vividWhite`, `vividYellow` + +### Syntax Highlighting + +As part of theming, syntax highlighting is also configurable. This can be +configured like this: + + --- + patat: + theme: + syntaxHighlighting: + decVal: [bold, onDullRed] + ... + + ... + +`decVal` refers to "decimal values". This is known as a "token type". For a +full list of token types, see [this list] -- the names are derived from there in +an obvious way. + +[this list]: https://hackage.haskell.org/package/highlighting-kate-0.6.3/docs/Text-Highlighting-Kate-Types.html#t:TokenType + +Trivia +------ + +_"Patat"_ is the Flemish word for a simple potato. Dutch people also use it to +refer to French Fries but I don't really do that -- in Belgium we just call +fries _"Frieten"_. + +The idea of `patat` is largely based upon [MDP] which is in turn based upon +[VTMC]. I wanted to write a clone using Pandoc because I ran into a markdown +parsing bug in MDP which I could not work around. A second reason to do a +Pandoc-based tool was that I would be able to use [Literate Haskell] as well. +Lastly, I also prefer not to install Node.js on my machine if I can avoid it. + +[MDP]: https://github.com/visit1985/mdp +[VTMC]: https://github.com/jclulow/vtmc +[Literate Haskell]: https://wiki.haskell.org/Literate_programming diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/patat.cabal new/patat-0.5.2.0/patat.cabal --- old/patat-0.5.0.0/patat.cabal 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/patat.cabal 2017-05-16 13:34:42.000000000 +0200 @@ -1,5 +1,5 @@ Name: patat -Version: 0.5.0.0 +Version: 0.5.2.0 Synopsis: Terminal-based presentations using Pandoc Description: Terminal-based presentations using Pandoc License: GPL-2 @@ -10,9 +10,12 @@ Copyright: 2016 Jasper Van der Jeugt Category: Text Build-type: Simple -Extra-source-files: CHANGELOG.md Cabal-version: >=1.10 +Extra-source-files: + CHANGELOG.md + README.md + Source-repository head Type: git Location: git://github.com/jaspervdj/patat.git @@ -24,7 +27,7 @@ Default-language: Haskell2010 Build-depends: - aeson >= 0.9 && < 1.2, + aeson >= 0.9 && < 1.3, ansi-terminal >= 0.6 && < 0.7, ansi-wl-pprint >= 0.6 && < 0.7, base >= 4.6 && < 4.10, @@ -32,10 +35,10 @@ containers >= 0.5 && < 0.6, directory >= 1.2 && < 1.4, filepath >= 1.4 && < 1.5, - highlighting-kate >= 0.6 && < 0.7, mtl >= 2.2 && < 2.3, optparse-applicative >= 0.12 && < 0.14, pandoc >= 1.16 && < 1.20, + skylighting >= 0.1 && < 0.4, terminal-size >= 0.3 && < 0.4, text >= 1.2 && < 1.3, time >= 1.4 && < 1.8, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/src/Main.hs new/patat-0.5.2.0/src/Main.hs --- old/patat-0.5.0.0/src/Main.hs 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/src/Main.hs 2017-05-16 13:34:42.000000000 +0200 @@ -75,8 +75,8 @@ [ "Terminal-based presentations using Pandoc" , "" , "Controls:" - , "- Next slide: space, enter, l, right" - , "- Previous slide: backspace, h, left" + , "- Next slide: space, enter, l, right, pagedown" + , "- Previous slide: backspace, h, left, pageup" , "- Go forward 10 slides: j, down" , "- Go backward 10 slides: k, up" , "- First slide: 0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/src/Patat/Presentation/Display/CodeBlock.hs new/patat-0.5.2.0/src/Patat/Presentation/Display/CodeBlock.hs --- old/patat-0.5.0.0/src/Patat/Presentation/Display/CodeBlock.hs 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/src/Patat/Presentation/Display/CodeBlock.hs 2017-05-16 13:34:42.000000000 +0200 @@ -8,41 +8,45 @@ -------------------------------------------------------------------------------- -import Data.Char (toLower) -import Data.List (find) +import Data.Maybe (mapMaybe) import Data.Monoid (mconcat, (<>)) -import qualified Data.Set as S +import qualified Data.Text as T import Patat.Presentation.Display.Table (themed) import qualified Patat.PrettyPrint as PP import Patat.Theme -import qualified Text.Highlighting.Kate as Kate import Prelude +import qualified Skylighting as Skylighting -------------------------------------------------------------------------------- -lower :: String -> String -lower = map toLower - - --------------------------------------------------------------------------------- -supportedLanguages :: S.Set String -supportedLanguages = S.fromList (map lower Kate.languages) +highlight :: [String] -> String -> [Skylighting.SourceLine] +highlight classes rawCodeBlock = case mapMaybe getSyntax classes of + [] -> zeroHighlight rawCodeBlock + (syn : _) -> + case Skylighting.tokenize config syn (T.pack rawCodeBlock) of + Left _ -> zeroHighlight rawCodeBlock + Right sl -> sl + where + getSyntax :: String -> Maybe Skylighting.Syntax + getSyntax c = Skylighting.lookupSyntax (T.pack c) syntaxMap + config :: Skylighting.TokenizerConfig + config = Skylighting.TokenizerConfig + { Skylighting.syntaxMap = syntaxMap + , Skylighting.traceOutput = False + } --------------------------------------------------------------------------------- -highlight :: [String] -> String -> [Kate.SourceLine] -highlight classes rawCodeBlock = - case find (\c -> lower c `S.member` supportedLanguages) classes of - Nothing -> zeroHighlight rawCodeBlock - Just lang -> Kate.highlightAs lang rawCodeBlock + syntaxMap :: Skylighting.SyntaxMap + syntaxMap = Skylighting.defaultSyntaxMap -------------------------------------------------------------------------------- -- | This does fake highlighting, everything becomes a normal token. That makes -- things a bit easier, since we only need to deal with one cases in the -- renderer. -zeroHighlight :: String -> [Kate.SourceLine] -zeroHighlight str = [[(Kate.NormalTok, line)] | line <- lines str] +zeroHighlight :: String -> [Skylighting.SourceLine] +zeroHighlight str = + [[(Skylighting.NormalTok, T.pack line)] | line <- lines str] -------------------------------------------------------------------------------- @@ -51,24 +55,24 @@ PP.vcat (map blockified sourceLines) <> PP.hardline where - sourceLines :: [Kate.SourceLine] + sourceLines :: [Skylighting.SourceLine] sourceLines = [[]] ++ highlight classes rawCodeBlock ++ [[]] - prettySourceLine :: Kate.SourceLine -> PP.Doc + prettySourceLine :: Skylighting.SourceLine -> PP.Doc prettySourceLine = mconcat . map prettyToken - prettyToken :: Kate.Token -> PP.Doc + prettyToken :: Skylighting.Token -> PP.Doc prettyToken (tokenType, str) = - themed (syntaxHighlight theme tokenType) (PP.string str) + themed (syntaxHighlight theme tokenType) (PP.string $ T.unpack str) - sourceLineLength :: Kate.SourceLine -> Int - sourceLineLength line = sum [length str | (_, str) <- line] + sourceLineLength :: Skylighting.SourceLine -> Int + sourceLineLength line = sum [T.length str | (_, str) <- line] blockWidth :: Int blockWidth = foldr max 0 (map sourceLineLength sourceLines) - blockified :: Kate.SourceLine -> PP.Doc + blockified :: Skylighting.SourceLine -> PP.Doc blockified line = let len = sourceLineLength line indent = PP.NotTrimmable " " in diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/src/Patat/Presentation/Display.hs new/patat-0.5.2.0/src/Patat/Presentation/Display.hs --- old/patat-0.5.0.0/src/Patat/Presentation/Display.hs 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/src/Patat/Presentation/Display.hs 2017-05-16 13:34:42.000000000 +0200 @@ -94,7 +94,7 @@ offsetRow = (csRows canvasSize `div` 2) - (prows `div` 2) offsetCol = (csCols canvasSize `div` 2) - (pcols `div` 2) spaces = mconcat (replicate offsetCol PP.space) in - mconcat (replicate (offsetRow - 1) PP.hardline) <$$> + mconcat (replicate (offsetRow - 3) PP.hardline) <$$> PP.indent (PP.NotTrimmable spaces) (PP.NotTrimmable spaces) pblock @@ -258,7 +258,7 @@ prettyInline Theme {..} (Pandoc.Code _ txt) = themed themeCode $ - " " <> PP.string txt <> " " + PP.string (" " <> txt <> " ") prettyInline theme@Theme {..} link@(Pandoc.Link _attrs text (target, _title)) | isReferenceLink link = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/src/Patat/Presentation/Interactive.hs new/patat-0.5.2.0/src/Patat/Presentation/Interactive.hs --- old/patat-0.5.0.0/src/Patat/Presentation/Interactive.hs 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/src/Patat/Presentation/Interactive.hs 2017-05-16 13:34:42.000000000 +0200 @@ -42,10 +42,14 @@ "j" -> return SkipForward "k" -> return SkipBackward "l" -> return Forward + -- Arrow keys "\ESC[C" -> return Forward "\ESC[D" -> return Backward "\ESC[B" -> return SkipForward "\ESC[A" -> return SkipBackward + -- PageUp and PageDown + "\ESC[6" -> return Forward + "\ESC[5" -> return Backward "0" -> return First "G" -> return Last "r" -> return Reload diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patat-0.5.0.0/src/Patat/Theme.hs new/patat-0.5.2.0/src/Patat/Theme.hs --- old/patat-0.5.0.0/src/Patat/Theme.hs 2017-02-06 16:09:28.000000000 +0100 +++ new/patat-0.5.2.0/src/Patat/Theme.hs 2017-05-16 13:34:42.000000000 +0200 @@ -24,10 +24,10 @@ import Data.Maybe (mapMaybe, maybeToList) import Data.Monoid (Monoid (..), (<>)) import qualified Data.Text as T +import Prelude +import qualified Skylighting as Skylighting import qualified System.Console.ANSI as Ansi -import qualified Text.Highlighting.Kate as Kate import Text.Read (readMaybe) -import Prelude -------------------------------------------------------------------------------- @@ -218,30 +218,30 @@ -------------------------------------------------------------------------------- defaultSyntaxHighlighting :: SyntaxHighlighting defaultSyntaxHighlighting = mkSyntaxHighlighting - [ (Kate.KeywordTok, dull Ansi.Yellow) - , (Kate.ControlFlowTok, dull Ansi.Yellow) + [ (Skylighting.KeywordTok, dull Ansi.Yellow) + , (Skylighting.ControlFlowTok, dull Ansi.Yellow) - , (Kate.DataTypeTok, dull Ansi.Green) + , (Skylighting.DataTypeTok, dull Ansi.Green) - , (Kate.DecValTok, dull Ansi.Red) - , (Kate.BaseNTok, dull Ansi.Red) - , (Kate.FloatTok, dull Ansi.Red) - , (Kate.ConstantTok, dull Ansi.Red) - , (Kate.CharTok, dull Ansi.Red) - , (Kate.SpecialCharTok, dull Ansi.Red) - , (Kate.StringTok, dull Ansi.Red) - , (Kate.VerbatimStringTok, dull Ansi.Red) - , (Kate.SpecialStringTok, dull Ansi.Red) - - , (Kate.CommentTok, dull Ansi.Blue) - , (Kate.DocumentationTok, dull Ansi.Blue) - , (Kate.AnnotationTok, dull Ansi.Blue) - , (Kate.CommentVarTok, dull Ansi.Blue) - - , (Kate.ImportTok, dull Ansi.Cyan) - , (Kate.OperatorTok, dull Ansi.Cyan) - , (Kate.FunctionTok, dull Ansi.Cyan) - , (Kate.PreprocessorTok, dull Ansi.Cyan) + , (Skylighting.DecValTok, dull Ansi.Red) + , (Skylighting.BaseNTok, dull Ansi.Red) + , (Skylighting.FloatTok, dull Ansi.Red) + , (Skylighting.ConstantTok, dull Ansi.Red) + , (Skylighting.CharTok, dull Ansi.Red) + , (Skylighting.SpecialCharTok, dull Ansi.Red) + , (Skylighting.StringTok, dull Ansi.Red) + , (Skylighting.VerbatimStringTok, dull Ansi.Red) + , (Skylighting.SpecialStringTok, dull Ansi.Red) + + , (Skylighting.CommentTok, dull Ansi.Blue) + , (Skylighting.DocumentationTok, dull Ansi.Blue) + , (Skylighting.AnnotationTok, dull Ansi.Blue) + , (Skylighting.CommentVarTok, dull Ansi.Blue) + + , (Skylighting.ImportTok, dull Ansi.Cyan) + , (Skylighting.OperatorTok, dull Ansi.Cyan) + , (Skylighting.FunctionTok, dull Ansi.Cyan) + , (Skylighting.PreprocessorTok, dull Ansi.Cyan) ] where dull c = Style [Ansi.SetColor Ansi.Foreground Ansi.Dull c] @@ -251,7 +251,7 @@ -------------------------------------------------------------------------------- -nameForTokenType :: Kate.TokenType -> String +nameForTokenType :: Skylighting.TokenType -> String nameForTokenType = unCapitalize . dropTok . show where @@ -265,7 +265,7 @@ -------------------------------------------------------------------------------- -nameToTokenType :: String -> Maybe Kate.TokenType +nameToTokenType :: String -> Maybe Skylighting.TokenType nameToTokenType = readMaybe . capitalize . (++ "Tok") @@ -276,7 +276,7 @@ -------------------------------------------------------------------------------- -syntaxHighlight :: Theme -> Kate.TokenType -> Maybe Style +syntaxHighlight :: Theme -> Skylighting.TokenType -> Maybe Style syntaxHighlight theme tokenType = do sh <- themeSyntaxHighlighting theme M.lookup (nameForTokenType tokenType) (unSyntaxHighlighting sh)
