on master help sign in
fix test coverage collection. Had to revert tests not depending on full library. Ah well.
commitc5d9a90701eacd040deb5dd7819af22bc7bafa04 authorCorey O'Connor <coreyoconnor@gmail.com> dateTue 2 Jul 2013, 09:42 (13 years ago) parent5ce86b4
9 files changed+125−224
CHANGELOG+3 README.md+12 src/Codec/Binary/UTF8/Debug.hs+3−1 src/Graphics/Vty/Debug.hs−1 src/Graphics/Vty/Picture.hs+7−4 src/Graphics/Vty/PictureToSpans.hs−3 src/Graphics/Vty/Span.hs+20−6 src/Graphics/Vty/Terminal/Debug.hs+3−6 vty.cabal+77−203
CHANGELOG+3
@@ -1,3 +1,6 @@
1+5.0.0
2+ * API changes:
3+
144.7.0.0
25 * API changes:
36 * Added Graphics.Vty.Image.crop: Ensure an image is no larger than the specified size.
README.md+12
@@ -54,3 +54,15 @@ special rules might be invalid on newer Mac OS.
5454## Windows
5555
5656None!
57+
58+# Development Notes
59+
60+## Coverage
61+
62+On my system the hpc coverage mix file receives a bad hash when using template haskell. This means
63+Graphics.Vty.Span needs to have the hash value fixed after being re-generated. I just pull the
64+expected hash from the first tix file that fails. The error message is unhelpful:
65+
66+hpc: can not find vty-5.0.0/Graphics.Vty.Span in ["./dist/hpc/mix/vty-5.0.0"]
67+
68+which is incorrect: The file can be found but the hash is incorrect.
src/Codec/Binary/UTF8/Debug.hs+3−1
@@ -1,3 +1,4 @@
1+{-# LANGUAGE NoMonomorphismRestriction #-}
12-- Copyright 2009 Corey O'Connor
23module Codec.Binary.UTF8.Debug
34 where
@@ -10,8 +11,9 @@ import Numeric
1011
1112-- | Converts an array of ISO-10646 characters (Char type) to an array of Word8 bytes that is the
1213-- corresponding UTF8 byte sequence
13−utf8_from_iso :: Integral i => [i] -> [Word8]
14+utf8_from_iso :: [Int] -> [Word8]
1415utf8_from_iso = encode . map toEnum
1516
17+pp_utf8 :: [Int] -> IO ()
1618pp_utf8 = print . map (\f -> f "") . map showHex . utf8_from_iso
1719
src/Graphics/Vty/Debug.hs−1
@@ -11,7 +11,6 @@ import Graphics.Vty.Span
1111import Graphics.Vty.DisplayRegion
1212
1313import qualified Data.Vector as Vector
14−import Data.Word
1514
1615row_ops_effected_columns :: DisplayOps -> [Int]
1716row_ops_effected_columns spans
src/Graphics/Vty/Picture.hs+7−4
@@ -38,22 +38,22 @@ import Control.DeepSeq
3838-- reasonable defaults for pic_cursor and pic_background.
3939data Picture = Picture
4040 { pic_cursor :: Cursor
41− , pic_image :: Image
41+ , pic_layers :: [Image]
4242 , pic_background :: Background
4343 }
4444
4545instance Show Picture where
46− show (Picture _ image _ ) = "Picture ?? " ++ show image ++ " ??"
46+ show (Picture _ layers _ ) = "Picture ?? " ++ show layers ++ " ??"
4747
4848instance NFData Picture where
49− rnf (Picture c i b) = c `deepseq` i `deepseq` b `deepseq` ()
49+ rnf (Picture c l b) = c `deepseq` l `deepseq` b `deepseq` ()
5050
5151-- | Create a picture for display for the given image. The picture will not have a displayed cursor
5252-- and the background display attribute will be `current_attr`.
5353pic_for_image :: Image -> Picture
5454pic_for_image i = Picture
5555 { pic_cursor = NoCursor
56− , pic_image = i
56+ , pic_layers = [i]
5757 , pic_background = Background ' ' current_attr
5858 }
5959
@@ -92,3 +92,6 @@ data Background = Background
9292instance NFData Background where
9393 rnf (Background c a) = c `seq` a `seq` ()
9494
95+-- | Compatibility with applications that do not use more than a single layer.
96+pic_image :: Picture -> Image
97+pic_image = head . pic_layers
src/Graphics/Vty/PictureToSpans.hs−3
@@ -2,6 +2,3 @@
22module Graphics.Vty.PictureToSpans
33 where
44
5−import Graphics.Vty.Picture
6−import Graphics.Vty.Span
7−
src/Graphics/Vty/Span.hs+20−6
@@ -140,13 +140,27 @@ columns_to_char_offset _cx _ = error "columns_to_char_offset applied to span op
140140-- | Produces the span ops that will render the given picture, possibly cropped or padded, into the
141141-- specified region.
142142spans_for_pic :: Picture -> DisplayRegion -> DisplayOps
143−spans_for_pic pic r = DisplayOps r $ Vector.create (build_spans pic r)
143+spans_for_pic pic r = DisplayOps r $ Vector.create (combined_spans_for_layers pic r)
144+
145+-- | Produces the span ops for each layer then combines them.
146+--
147+-- TODO: a fold over a builder function. start with span ops that are a bg fill of the entire
148+-- region.
149+combined_spans_for_layers :: Picture -> DisplayRegion -> ST s (MRowOps s)
150+combined_spans_for_layers pic r = do
151+ layer_ops <- mapM (\layer -> build_spans layer r (pic_background pic)) (pic_layers pic)
152+ case layer_ops of
153+ [] -> fail "empty picture"
154+ [ops] -> return ops
155+ _ -> fail "TODO: picture with more than one layer not supported"
144156
145157-- | Builds a vector of row operations that will output the given picture to the terminal.
146158--
147159-- Crops to the given display region.
148−build_spans :: Picture -> DisplayRegion -> ST s (MRowOps s)
149−build_spans pic out_region = do
160+--
161+-- TODO: I'm pretty sure there is an algorithm that does not require a mutable buffer.
162+build_spans :: Image -> DisplayRegion -> Background -> ST s (MRowOps s)
163+build_spans image out_region background = do
150164 -- First we create a mutable vector for each rows output operations.
151165 out_ops <- Vector.replicate (region_height out_region) Vector.empty
152166 -- \todo I think building the span operations in display order would provide better performance.
@@ -165,10 +179,10 @@ build_spans pic out_region = do
165179 -- display that image. The number of columns remaining in this row before exceeding the
166180 -- bounds is also provided. This is used to clip the span ops produced to the display.
167181 let full_build = do
168− start_image_build $ pic_image pic
182+ start_image_build image
169183 -- Fill in any unspecified columns with the background pattern.
170184 forM_ [0 .. (region_height out_region - 1)] (add_row_completion out_region)
171− init_env = BlitEnv (pic_background pic) out_region out_ops
185+ init_env = BlitEnv background out_region out_ops
172186 init_state = BlitState 0 0 0 0 (region_width out_region) (region_height out_region)
173187 _ <- runStateT (runReaderT full_build init_env) init_state
174188 return ()
@@ -306,7 +320,7 @@ add_maybe_clipped_join name skip remaining offset i0_dim i0 i1 size = do
306320 put $ state & offset +~ i0_dim' & remaining -~ i0_dim'
307321 add_maybe_clipped i1
308322
309−-- TODO: store a skip list in HorizText
323+-- TODO: store a skip list in HorizText(?)
310324-- TODO: represent display strings containing chars that are not 1 column chars as a separate
311325-- display string value?
312326-- TODO: assumes max column width is 2
src/Graphics/Vty/Terminal/Debug.hs+3−6
@@ -13,14 +13,11 @@ import Graphics.Vty.Terminal.Generic
1313
1414import Control.Applicative
1515import Control.Monad.Trans
16−import Control.Monad.State.Strict
1716
1817import qualified Data.ByteString.UTF8 as BS
1918import qualified Data.ByteString as BSCore
2019import Data.IORef
21−import qualified Data.Sequence as Seq
2220import qualified Data.String.UTF8 as UTF8
23−import Data.Word
2421
2522import Foreign.Marshal.Array ( peekArray )
2623import Foreign.Ptr ( plusPtr )
@@ -56,7 +53,7 @@ instance Terminal DebugTerminal where
5653 reserve_display _t = return ()
5754 release_display _t = return ()
5855 display_bounds t = return $ debug_terminal_bounds t
59− display_terminal_instance t r c = return $ c (DebugDisplay r)
56+ display_terminal_instance _t r c = return $ c (DebugDisplay r)
6057 output_byte_buffer t out_buffer buffer_size
6158 = liftIO $ do
6259 putStrLn $ "output_byte_buffer ?? " ++ show buffer_size
@@ -64,7 +61,7 @@ instance Terminal DebugTerminal where
6461 >>= return . UTF8.fromRep . BSCore.pack
6562 >>= writeIORef (debug_terminal_last_output t)
6663
67− output_handle t = return stdout
64+ output_handle _t = return stdout
6865
6966data DebugDisplay = DebugDisplay
7067 { debug_display_bounds :: DisplayRegion
@@ -83,7 +80,7 @@ instance DisplayTerminal DebugDisplay where
8380 context_region d = debug_display_bounds d
8481
8582 -- | Assume 16 colors
86− context_color_count d = 16
83+ context_color_count _d = 16
8784
8885 -- | A cursor move is always visualized as the single character 'M'
8986 move_cursor_required_bytes _d _x _y = 1
vty.cabal+77−203
@@ -55,7 +55,6 @@ library
5555
5656 exposed-modules: Graphics.Vty
5757 Graphics.Vty.Attributes
58− Graphics.Vty.DisplayRegion
5958 Graphics.Vty.Error
6059 Graphics.Vty.Image
6160 Graphics.Vty.Inline
@@ -63,13 +62,19 @@ library
6362 Graphics.Vty.Picture
6463 Graphics.Vty.Terminal
6564 Graphics.Text.Width
66−
67− other-modules: Data.Marshalling
65+ -- the modules below are only meant to be used by the tests.
66+ Codec.Binary.UTF8.Debug
6867 Data.Terminfo.Parse
6968 Data.Terminfo.Eval
69+ Data.Marshalling
70+ Graphics.Vty.Debug
71+ Graphics.Vty.Debug.Image
72+ Graphics.Vty.DisplayRegion
7073 Graphics.Vty.DisplayAttributes
7174 Graphics.Vty.Image.Internal
75+ Graphics.Vty.PictureToSpans
7276 Graphics.Vty.Span
77+ Graphics.Vty.Terminal.Debug
7378 Graphics.Vty.Terminal.Generic
7479 Graphics.Vty.Terminal.MacOSX
7580 Graphics.Vty.Terminal.XTermColor
@@ -92,9 +97,10 @@ library
9297test-suite verify-attribute-ops
9398 default-language: Haskell2010
9499 type: detailed-0.9
95− hs-source-dirs: src test
100+ hs-source-dirs: test
96101 test-module: VerifyAttributeOps
97− build-depends: Cabal == 1.17.*,
102+ build-depends: vty,
103+ Cabal == 1.17.*,
98104 QuickCheck >= 2.4,
99105 random == 1.0.*,
100106 base >= 4 && < 5,
@@ -111,44 +117,26 @@ test-suite verify-attribute-ops
111117 unix,
112118 utf8-string >= 0.3 && < 0.4,
113119 vector >= 0.7
120+
114121
115122test-suite verify-using-mock-terminal
116123 default-language: Haskell2010
117124
118125 type: detailed-0.9
119126
120− hs-source-dirs: src test
127+ hs-source-dirs: test
121128
122129 test-module: VerifyMockTerminal
123130
124− other-modules: Graphics.Vty
125− Graphics.Vty.Attributes
126− Graphics.Vty.DisplayAttributes
127− Graphics.Vty.DisplayRegion
128− Graphics.Vty.Image
129− Graphics.Vty.Image.Internal
130− Graphics.Vty.Picture
131− Graphics.Vty.Span
132− Graphics.Vty.Terminal
133− Graphics.Vty.Terminal.Generic
134− Graphics.Vty.Terminal.Debug
135− Graphics.Vty.Debug
136− Graphics.Vty.Debug.Image
137− Graphics.Text.Width
138− Verify
131+ other-modules: Verify
139132 Verify.Graphics.Vty.Attributes
140133 Verify.Graphics.Vty.DisplayRegion
141134 Verify.Graphics.Vty.Picture
142135 Verify.Graphics.Vty.Image
143136 Verify.Graphics.Vty.Span
144137
145− c-sources: cbits/gwinsz.c
146− cbits/set_term_timing.c
147− cbits/mk_wcwidth.c
148−
149− include-dirs: cbits
150−
151− build-depends: Cabal == 1.17.*,
138+ build-depends: vty,
139+ Cabal == 1.17.*,
152140 QuickCheck >= 2.4,
153141 random == 1.0.*,
154142 base >= 4 && < 5,
@@ -165,44 +153,26 @@ test-suite verify-using-mock-terminal
165153 unix,
166154 utf8-string >= 0.3 && < 0.4,
167155 vector >= 0.7
156+
168157
169158test-suite verify-display-attributes
170159 default-language: Haskell2010
171160
172161 type: detailed-0.9
173162
174− hs-source-dirs: src test
163+ hs-source-dirs: test
175164
176165 test-module: VerifyDisplayAttributes
177166
178− other-modules: Graphics.Vty
179− Graphics.Vty.Attributes
180− Graphics.Vty.DisplayAttributes
181− Graphics.Vty.DisplayRegion
182− Graphics.Vty.Image
183− Graphics.Vty.Image.Internal
184− Graphics.Vty.Picture
185− Graphics.Vty.Span
186− Graphics.Vty.Terminal
187− Graphics.Vty.Terminal.Generic
188− Graphics.Vty.Terminal.Debug
189− Graphics.Vty.Debug
190− Graphics.Vty.Debug.Image
191− Graphics.Text.Width
192− Verify
167+ other-modules: Verify
193168 Verify.Graphics.Vty.Attributes
194169 Verify.Graphics.Vty.DisplayRegion
195170 Verify.Graphics.Vty.Picture
196171 Verify.Graphics.Vty.Image
197172 Verify.Graphics.Vty.Span
198173
199− c-sources: cbits/gwinsz.c
200− cbits/set_term_timing.c
201− cbits/mk_wcwidth.c
202−
203− include-dirs: cbits
204−
205− build-depends: Cabal == 1.17.*,
174+ build-depends: vty,
175+ Cabal == 1.17.*,
206176 QuickCheck >= 2.4,
207177 random == 1.0.*,
208178 base >= 4 && < 5,
@@ -219,20 +189,21 @@ test-suite verify-display-attributes
219189 unix,
220190 utf8-string >= 0.3 && < 0.4,
221191 vector >= 0.7
192+
222193
223194test-suite verify-empty-image-props
224195 default-language: Haskell2010
225196
226197 type: detailed-0.9
227198
228− hs-source-dirs: src test
199+ hs-source-dirs: test
229200
230201 test-module: VerifyEmptyImageProps
231202
232− other-modules: Graphics.Vty.Picture
233− Verify
203+ other-modules: Verify
234204
235− build-depends: Cabal == 1.17.*,
205+ build-depends: vty,
206+ Cabal == 1.17.*,
236207 QuickCheck >= 2.4,
237208 random == 1.0.*,
238209 base >= 4 && < 5,
@@ -249,23 +220,21 @@ test-suite verify-empty-image-props
249220 unix,
250221 utf8-string >= 0.3 && < 0.4,
251222 vector >= 0.7
223+
252224
253225test-suite verify-eval-terminfo-caps
254226 default-language: Haskell2010
255227
256228 type: detailed-0.9
257229
258− hs-source-dirs: src test
230+ hs-source-dirs: test
259231
260232 test-module: VerifyEvalTerminfoCaps
261233
262− other-modules: Data.Terminfo.Parse
263− Data.Terminfo.Eval
264− Data.Marshalling
265− Graphics.Text.Width
266− Verify
234+ other-modules: Verify
267235
268− build-depends: Cabal == 1.17.*,
236+ build-depends: vty,
237+ Cabal == 1.17.*,
269238 QuickCheck >= 2.4,
270239 random == 1.0.*,
271240 base >= 4 && < 5,
@@ -282,36 +251,23 @@ test-suite verify-eval-terminfo-caps
282251 unix,
283252 utf8-string >= 0.3 && < 0.4,
284253 vector >= 0.7
254+
285255
286256test-suite verify-image-ops
287257 default-language: Haskell2010
288258
289259 type: detailed-0.9
290260
291− hs-source-dirs: src test
261+ hs-source-dirs: test
292262
293263 test-module: VerifyImageOps
294264
295− other-modules: Graphics.Vty.Attributes
296− Graphics.Vty.DisplayAttributes
297− Graphics.Vty.DisplayRegion
298− Graphics.Vty.Image
299− Graphics.Vty.Image.Internal
300− Graphics.Vty.Picture
301− Graphics.Vty.Span
302− Graphics.Vty.Debug.Image
303− Graphics.Text.Width
304− Verify
265+ other-modules: Verify
305266 Verify.Graphics.Vty.Attributes
306267 Verify.Graphics.Vty.Image
307268
308− c-sources: cbits/gwinsz.c
309− cbits/set_term_timing.c
310− cbits/mk_wcwidth.c
311−
312− include-dirs: cbits
313−
314− build-depends: Cabal == 1.17.*,
269+ build-depends: vty,
270+ Cabal == 1.17.*,
315271 QuickCheck >= 2.4,
316272 random == 1.0.*,
317273 base >= 4 && < 5,
@@ -328,30 +284,23 @@ test-suite verify-image-ops
328284 unix,
329285 utf8-string >= 0.3 && < 0.4,
330286 vector >= 0.7
287+
331288
332289test-suite verify-image-trans
333290 default-language: Haskell2010
334291
335292 type: detailed-0.9
336293
337− hs-source-dirs: src test
294+ hs-source-dirs: test
338295
339296 test-module: VerifyImageTrans
340297
341− other-modules: Graphics.Vty.Attributes
342− Graphics.Vty.Debug.Image
343− Graphics.Vty.Image
344− Graphics.Vty.Image.Internal
345− Graphics.Text.Width
346− Verify
298+ other-modules: Verify
347299 Verify.Graphics.Vty.Attributes
348300 Verify.Graphics.Vty.Image
349301
350− c-sources: cbits/mk_wcwidth.c
351−
352− include-dirs: cbits
353−
354− build-depends: Cabal == 1.17.*,
302+ build-depends: vty,
303+ Cabal == 1.17.*,
355304 QuickCheck >= 2.4,
356305 random == 1.0.*,
357306 base >= 4 && < 5,
@@ -368,41 +317,19 @@ test-suite verify-image-trans
368317 unix,
369318 utf8-string >= 0.3 && < 0.4,
370319 vector >= 0.7
320+
371321
372322test-suite verify-inline
373323 default-language: Haskell2010
374324
375325 type: detailed-0.9
376326
377− hs-source-dirs: src test
327+ hs-source-dirs: test
378328
379329 test-module: VerifyInline
380330
381− other-modules: Graphics.Text.Width
382− Data.Terminfo.Eval
383− Data.Terminfo.Parse
384− Data.Marshalling
385− Graphics.Vty.Attributes
386− Graphics.Vty.DisplayAttributes
387− Graphics.Vty.DisplayRegion
388− Graphics.Vty.Image
389− Graphics.Vty.Image.Internal
390− Graphics.Vty.Inline
391− Graphics.Vty.Picture
392− Graphics.Vty.Span
393− Graphics.Vty.Terminal
394− Graphics.Vty.Terminal.Generic
395− Graphics.Vty.Terminal.MacOSX
396− Graphics.Vty.Terminal.TerminfoBased
397− Graphics.Vty.Terminal.XTermColor
398−
399− c-sources: cbits/gwinsz.c
400− cbits/set_term_timing.c
401− cbits/mk_wcwidth.c
402−
403− include-dirs: cbits
404−
405− build-depends: Cabal == 1.17.*,
331+ build-depends: vty,
332+ Cabal == 1.17.*,
406333 QuickCheck >= 2.4,
407334 random == 1.0.*,
408335 base >= 4 && < 5,
@@ -419,23 +346,22 @@ test-suite verify-inline
419346 unix,
420347 utf8-string >= 0.3 && < 0.4,
421348 vector >= 0.7
349+
422350
423351test-suite verify-parse-terminfo-caps
424352 default-language: Haskell2010
425353
426354 type: detailed-0.9
427355
428− hs-source-dirs: src test
356+ hs-source-dirs: test
429357
430358 test-module: VerifyParseTerminfoCaps
431359
432− other-modules: Data.Terminfo.Parse
433− Verify
360+ other-modules: Verify
434361 Verify.Data.Terminfo.Parse
435362
436− include-dirs: cbits
437−
438− build-depends: Cabal == 1.17.*,
363+ build-depends: vty,
364+ Cabal == 1.17.*,
439365 QuickCheck >= 2.4,
440366 random == 1.0.*,
441367 base >= 4 && < 5,
@@ -452,22 +378,21 @@ test-suite verify-parse-terminfo-caps
452378 unix,
453379 utf8-string >= 0.3 && < 0.4,
454380 vector >= 0.7
381+
455382
456383test-suite verify-picture-ops
457384 default-language: Haskell2010
458385
459386 type: detailed-0.9
460387
461− hs-source-dirs: src test
388+ hs-source-dirs: test
462389
463390 test-module: VerifyPictureOps
464391
465− other-modules: Graphics.Vty.Picture
466− Verify
392+ other-modules: Verify
467393
468− include-dirs: cbits
469−
470− build-depends: Cabal == 1.17.*,
394+ build-depends: vty,
395+ Cabal == 1.17.*,
471396 QuickCheck >= 2.4,
472397 random == 1.0.*,
473398 base >= 4 && < 5,
@@ -484,44 +409,26 @@ test-suite verify-picture-ops
484409 unix,
485410 utf8-string >= 0.3 && < 0.4,
486411 vector >= 0.7
412+
487413
488414test-suite verify-picture-to-span
489415 default-language: Haskell2010
490416
491417 type: detailed-0.9
492418
493− hs-source-dirs: src test
419+ hs-source-dirs: test
494420
495421 test-module: VerifyPictureToSpan
496422
497− other-modules: Graphics.Vty
498− Graphics.Vty.Attributes
499− Graphics.Vty.DisplayAttributes
500− Graphics.Vty.DisplayRegion
501− Graphics.Vty.Image
502− Graphics.Vty.Image.Internal
503− Graphics.Vty.Picture
504− Graphics.Vty.Span
505− Graphics.Vty.Terminal
506− Graphics.Vty.Terminal.Generic
507− Graphics.Vty.Terminal.Debug
508− Graphics.Vty.Debug
509− Graphics.Vty.Debug.Image
510− Graphics.Text.Width
511− Verify
423+ other-modules: Verify
512424 Verify.Graphics.Vty.Attributes
513425 Verify.Graphics.Vty.DisplayRegion
514426 Verify.Graphics.Vty.Picture
515427 Verify.Graphics.Vty.Image
516428 Verify.Graphics.Vty.Span
517429
518− c-sources: cbits/gwinsz.c
519− cbits/set_term_timing.c
520− cbits/mk_wcwidth.c
521−
522− include-dirs: cbits
523−
524− build-depends: Cabal == 1.17.*,
430+ build-depends: vty,
431+ Cabal == 1.17.*,
525432 QuickCheck >= 2.4,
526433 random == 1.0.*,
527434 base >= 4 && < 5,
@@ -538,44 +445,26 @@ test-suite verify-picture-to-span
538445 unix,
539446 utf8-string >= 0.3 && < 0.4,
540447 vector >= 0.7
448+
541449
542450test-suite verify-span-ops
543451 default-language: Haskell2010
544452
545453 type: detailed-0.9
546454
547− hs-source-dirs: src test
455+ hs-source-dirs: test
548456
549457 test-module: VerifySpanOps
550458
551− other-modules: Graphics.Vty
552− Graphics.Vty.Attributes
553− Graphics.Vty.DisplayAttributes
554− Graphics.Vty.DisplayRegion
555− Graphics.Vty.Image
556− Graphics.Vty.Image.Internal
557− Graphics.Vty.Picture
558− Graphics.Vty.Span
559− Graphics.Vty.Terminal
560− Graphics.Vty.Terminal.Generic
561− Graphics.Vty.Terminal.Debug
562− Graphics.Vty.Debug
563− Graphics.Vty.Debug.Image
564− Graphics.Text.Width
565− Verify
459+ other-modules: Verify
566460 Verify.Graphics.Vty.Attributes
567461 Verify.Graphics.Vty.DisplayRegion
568462 Verify.Graphics.Vty.Picture
569463 Verify.Graphics.Vty.Image
570464 Verify.Graphics.Vty.Span
571465
572− c-sources: cbits/gwinsz.c
573− cbits/set_term_timing.c
574− cbits/mk_wcwidth.c
575−
576− include-dirs: cbits
577−
578− build-depends: Cabal == 1.17.*,
466+ build-depends: vty,
467+ Cabal == 1.17.*,
579468 QuickCheck >= 2.4,
580469 random == 1.0.*,
581470 base >= 4 && < 5,
@@ -592,27 +481,21 @@ test-suite verify-span-ops
592481 unix,
593482 utf8-string >= 0.3 && < 0.4,
594483 vector >= 0.7
484+
595485
596486test-suite verify-utf8-width
597487 default-language: Haskell2010
598488
599489 type: detailed-0.9
600490
601− hs-source-dirs: src test
491+ hs-source-dirs: test
602492
603493 test-module: VerifyUtf8Width
604494
605− other-modules: Graphics.Text.Width
606− Graphics.Vty.Attributes
607− Graphics.Vty.Image
608− Graphics.Vty.Image.Internal
609− Verify
610−
611− c-sources: cbits/mk_wcwidth.c
612−
613− include-dirs: cbits
495+ other-modules: Verify
614496
615− build-depends: Cabal == 1.17.*,
497+ build-depends: vty,
498+ Cabal == 1.17.*,
616499 QuickCheck >= 2.4,
617500 random == 1.0.*,
618501 base >= 4 && < 5,
@@ -629,21 +512,17 @@ test-suite verify-utf8-width
629512 unix,
630513 utf8-string >= 0.3 && < 0.4,
631514 vector >= 0.7
515+
632516
633517executable vty-interactive-terminal-test
634518 main-is: interactive_terminal_test.hs
635519
636520 default-language: Haskell2010
637521
638− hs-source-dirs: src test
639−
640− c-sources: cbits/gwinsz.c
641− cbits/set_term_timing.c
642− cbits/mk_wcwidth.c
643−
644− include-dirs: cbits
522+ hs-source-dirs: test
645523
646− build-depends: base >= 4 && < 5,
524+ build-depends: vty,
525+ base >= 4 && < 5,
647526 bytestring,
648527 containers,
649528 deepseq >= 1.1 && < 1.4,
@@ -664,15 +543,10 @@ executable vty-benchmark
664543
665544 default-language: Haskell2010
666545
667− hs-source-dirs: src test
668−
669− c-sources: cbits/gwinsz.c
670− cbits/set_term_timing.c
671− cbits/mk_wcwidth.c
672−
673− include-dirs: cbits
546+ hs-source-dirs: test
674547
675− build-depends: base >= 4 && < 5,
548+ build-depends: vty,
549+ base >= 4 && < 5,
676550 bytestring,
677551 Cabal == 1.17.*,
678552 containers,