summaryrefslogtreecommitdiffhomepage
path: root/lib
diff options
context:
space:
mode:
authorChris Perivolaropoulos <c.perivol@ed.ac.uk>2019-06-12 13:31:20 +0300
committerJasper Van der Jeugt <m@jaspervdj.be>2019-06-12 12:31:20 +0200
commitf1fe0d010144483315b3b37cb1eece93ecf3a6e5 (patch)
tree70481f697ebd49ebe85848bee66e1c5bf0899cdb /lib
parent660b0c894461a780c7bda8f2231a5101f5f6f164 (diff)
downloadstylish-haskell-f1fe0d010144483315b3b37cb1eece93ecf3a6e5.tar.gz
Respect page breaks alone in a line
Page breaks are an old but effective way of bookmarking a file. They usually are single character lines. Stylish removes them as whitespace characters, and they are from the compiler's point of view but not from an editor's perspective.
Diffstat (limited to 'lib')
-rw-r--r--lib/Language/Haskell/Stylish/Step/TrailingWhitespace.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Language/Haskell/Stylish/Step/TrailingWhitespace.hs b/lib/Language/Haskell/Stylish/Step/TrailingWhitespace.hs
index dbc594c..e41bace 100644
--- a/lib/Language/Haskell/Stylish/Step/TrailingWhitespace.hs
+++ b/lib/Language/Haskell/Stylish/Step/TrailingWhitespace.hs
@@ -19,4 +19,9 @@ dropTrailingWhitespace = reverse . dropWhile isSpace . reverse
--------------------------------------------------------------------------------
step :: Step
-step = makeStep "TrailingWhitespace" $ \ls _ -> map dropTrailingWhitespace ls
+step = makeStep "TrailingWhitespace" $ \ls _ -> map dropTrailingWhitespace' ls
+ where
+ dropTrailingWhitespace' l = case l of
+ -- Preserve page breaks
+ "\12" -> l
+ _ -> dropTrailingWhitespace l