1name:                vty
2version:             5.33
3x-revision: 1
4license:             BSD3
5license-file:        LICENSE
6author:              AUTHORS
7maintainer:          Jonathan Daugherty (cygnus@foobox.com)
8homepage:            https://github.com/jtdaugherty/vty
9category:            User Interfaces
10synopsis:            A simple terminal UI library
11description:
12  vty is terminal GUI library in the niche of ncurses. It is intended to
13  be easy to use, have no confusing corner cases, and good support for
14  common terminal types.
15  .
16  See the @vty-examples@ package as well as the program
17  @test/interactive_terminal_test.hs@ included in the @vty@ package for
18  examples on how to use the library.
19  .
20  Import the "Graphics.Vty" convenience module to get access to the core
21  parts of the library.
22  .
23  © 2006-2007 Stefan O'Rear; BSD3 license.
24  .
25  © Corey O'Connor; BSD3 license.
26  .
27  © Jonathan Daugherty; BSD3 license.
28cabal-version:       1.18
29build-type:          Simple
30extra-doc-files:     README.md,
31                     AUTHORS,
32                     CHANGELOG.md,
33                     LICENSE
34tested-with:         GHC==7.10.3, GHC==8.0.2, GHC==8.2.2, GHC==8.4.3, GHC==8.6.5
35
36source-repository head
37  type: git
38  location: https://github.com/jtdaugherty/vty.git
39
40library
41  default-language:    Haskell2010
42  build-depends:       base >= 4.8 && < 5,
43                       blaze-builder >= 0.3.3.2 && < 0.5,
44                       bytestring,
45                       containers,
46                       deepseq >= 1.1 && < 1.5,
47                       directory,
48                       filepath >= 1.0 && < 2.0,
49                       microlens < 0.4.13,
50                       microlens-mtl,
51                       microlens-th,
52                       hashable >= 1.2,
53                       mtl >= 1.1.1.0 && < 2.3,
54                       parallel >= 2.2 && < 3.3,
55                       parsec >= 2 && < 4,
56                       stm,
57                       terminfo >= 0.3 && < 0.5,
58                       transformers >= 0.3.0.0,
59                       text >= 0.11.3,
60                       unix,
61                       utf8-string >= 0.3 && < 1.1,
62                       vector >= 0.7,
63                       binary,
64                       ansi-terminal >= 0.10.3
65
66  if !impl(ghc >= 8.0)
67    build-depends:     semigroups >= 0.16,
68                       fail
69
70  exposed-modules:     Graphics.Vty
71                       Graphics.Vty.Attributes
72                       Graphics.Vty.Attributes.Color
73                       Graphics.Vty.Attributes.Color240
74                       Graphics.Vty.Config
75                       Graphics.Vty.Error
76                       Graphics.Vty.Image
77                       Graphics.Vty.Inline
78                       Graphics.Vty.Inline.Unsafe
79                       Graphics.Vty.Input
80                       Graphics.Vty.Input.Events
81                       Graphics.Vty.Picture
82                       Graphics.Vty.Output
83                       Graphics.Text.Width
84                       Codec.Binary.UTF8.Debug
85                       Data.Terminfo.Parse
86                       Data.Terminfo.Eval
87                       Graphics.Vty.Debug
88                       Graphics.Vty.DisplayAttributes
89                       Graphics.Vty.Image.Internal
90                       Graphics.Vty.Input.Classify
91                       Graphics.Vty.Input.Classify.Types
92                       Graphics.Vty.Input.Classify.Parse
93                       Graphics.Vty.Input.Loop
94                       Graphics.Vty.Input.Mouse
95                       Graphics.Vty.Input.Focus
96                       Graphics.Vty.Input.Paste
97                       Graphics.Vty.Input.Terminfo
98                       Graphics.Vty.PictureToSpans
99                       Graphics.Vty.Span
100                       Graphics.Vty.Output.Mock
101                       Graphics.Vty.Output.Interface
102                       Graphics.Vty.Output.XTermColor
103                       Graphics.Vty.Output.TerminfoBased
104                       Graphics.Vty.UnicodeWidthTable.Types
105                       Graphics.Vty.UnicodeWidthTable.IO
106                       Graphics.Vty.UnicodeWidthTable.Query
107                       Graphics.Vty.UnicodeWidthTable.Install
108
109  other-modules:       Graphics.Vty.Debug.Image
110                       Graphics.Vty.Input.Terminfo.ANSIVT
111
112  c-sources:           cbits/gwinsz.c
113                       cbits/set_term_timing.c
114                       cbits/get_tty_erase.c
115                       cbits/mk_wcwidth.c
116
117  include-dirs:        cbits
118
119  hs-source-dirs:      src
120
121  default-extensions:  ScopedTypeVariables
122
123  ghc-options:         -O2 -funbox-strict-fields -Wall -fspec-constr -fspec-constr-count=10
124
125  ghc-prof-options:    -O2 -funbox-strict-fields -caf-all -Wall -fspec-constr -fspec-constr-count=10
126
127executable vty-build-width-table
128  main-is:             BuildWidthTable.hs
129  hs-source-dirs:      tools
130
131  default-language:    Haskell2010
132  ghc-options:         -threaded -Wall
133
134  if !impl(ghc >= 8.0)
135    build-depends:     semigroups >= 0.16
136
137  build-depends:       vty,
138                       directory,
139                       filepath,
140                       base >= 4.8 && < 5
141
142executable vty-mode-demo
143  main-is:             ModeDemo.hs
144  hs-source-dirs:      demos
145
146  default-language:    Haskell2010
147  default-extensions:  ScopedTypeVariables
148  ghc-options:         -threaded
149
150  build-depends:       vty,
151                       base >= 4.8 && < 5,
152                       containers,
153                       microlens,
154                       microlens-mtl,
155                       mtl >= 1.1.1.0 && < 2.3
156
157executable vty-demo
158  main-is:             Demo.hs
159  hs-source-dirs:      demos
160
161  default-language:    Haskell2010
162  default-extensions:  ScopedTypeVariables
163  ghc-options:         -threaded
164
165  build-depends:       vty,
166                       base >= 4.8 && < 5,
167                       containers,
168                       microlens,
169                       microlens-mtl,
170                       mtl >= 1.1.1.0 && < 2.3
171
172test-suite verify-using-mock-terminal
173  default-language:    Haskell2010
174  default-extensions:  ScopedTypeVariables
175
176  type:                detailed-0.9
177
178  hs-source-dirs:      test
179
180  test-module:         VerifyUsingMockTerminal
181
182  other-modules:       Verify
183                       Verify.Graphics.Vty.Attributes
184                       Verify.Graphics.Vty.Prelude
185                       Verify.Graphics.Vty.Picture
186                       Verify.Graphics.Vty.Image
187                       Verify.Graphics.Vty.Span
188                       Verify.Graphics.Vty.Output
189
190  build-depends:       vty,
191                       Cabal >= 1.20,
192                       QuickCheck >= 2.7,
193                       random >= 1.0 && < 1.3,
194                       base >= 4.8 && < 5,
195                       bytestring,
196                       containers,
197                       deepseq >= 1.1 && < 1.5,
198                       mtl >= 1.1.1.0 && < 2.3,
199                       text >= 0.11.3,
200                       terminfo >= 0.3 && < 0.5,
201                       unix,
202                       utf8-string >= 0.3 && < 1.1,
203                       vector >= 0.7
204
205test-suite verify-terminal
206  default-language:    Haskell2010
207  default-extensions:  ScopedTypeVariables
208
209  type:                detailed-0.9
210
211  hs-source-dirs:      test
212
213  test-module:         VerifyOutput
214
215  other-modules:       Verify
216                       Verify.Graphics.Vty.Attributes
217                       Verify.Graphics.Vty.Prelude
218                       Verify.Graphics.Vty.Picture
219                       Verify.Graphics.Vty.Image
220                       Verify.Graphics.Vty.Span
221                       Verify.Graphics.Vty.Output
222
223  build-depends:       vty,
224                       Cabal >= 1.20,
225                       QuickCheck >= 2.7,
226                       random >= 1.0 && < 1.3,
227                       base >= 4.8 && < 5,
228                       bytestring,
229                       containers,
230                       deepseq >= 1.1 && < 1.5,
231                       mtl >= 1.1.1.0 && < 2.3,
232                       terminfo >= 0.3 && < 0.5,
233                       text >= 0.11.3,
234                       unix,
235                       utf8-string >= 0.3 && < 1.1,
236                       vector >= 0.7
237
238test-suite verify-display-attributes
239  default-language:    Haskell2010
240  default-extensions:  ScopedTypeVariables
241
242  type:                detailed-0.9
243
244  hs-source-dirs:      test
245
246  test-module:         VerifyDisplayAttributes
247
248  other-modules:       Verify
249                       Verify.Graphics.Vty.Attributes
250                       Verify.Graphics.Vty.DisplayAttributes
251                       Verify.Graphics.Vty.Prelude
252                       Verify.Graphics.Vty.Picture
253                       Verify.Graphics.Vty.Image
254                       Verify.Graphics.Vty.Span
255
256  build-depends:       vty,
257                       Cabal >= 1.20,
258                       QuickCheck >= 2.7,
259                       random >= 1.0 && < 1.3,
260                       base >= 4.8 && < 5,
261                       bytestring,
262                       containers,
263                       deepseq >= 1.1 && < 1.5,
264                       mtl >= 1.1.1.0 && < 2.3,
265                       text >= 0.11.3,
266                       unix,
267                       utf8-string >= 0.3 && < 1.1,
268                       vector >= 0.7
269
270test-suite verify-empty-image-props
271  default-language:    Haskell2010
272  default-extensions:  ScopedTypeVariables
273
274  type:                detailed-0.9
275
276  hs-source-dirs:      test
277
278  test-module:         VerifyEmptyImageProps
279
280  other-modules:       Verify
281
282  build-depends:       vty,
283                       Cabal >= 1.20,
284                       QuickCheck >= 2.7,
285                       random >= 1.0 && < 1.3,
286                       base >= 4.8 && < 5,
287                       bytestring,
288                       containers,
289                       deepseq >= 1.1 && < 1.5,
290                       mtl >= 1.1.1.0 && < 2.3,
291                       text >= 0.11.3,
292                       unix,
293                       utf8-string >= 0.3 && < 1.1,
294                       vector >= 0.7
295
296test-suite verify-eval-terminfo-caps
297  default-language:    Haskell2010
298  default-extensions:  ScopedTypeVariables
299
300  type:                detailed-0.9
301
302  hs-source-dirs:      test
303
304  test-module:         VerifyEvalTerminfoCaps
305
306  other-modules:       Verify
307                       Verify.Graphics.Vty.Output
308
309  build-depends:       vty,
310                       Cabal >= 1.20,
311                       QuickCheck >= 2.7,
312                       random >= 1.0 && < 1.3,
313                       base >= 4.8 && < 5,
314                       blaze-builder >= 0.3.3.2 && < 0.5,
315                       bytestring,
316                       containers,
317                       deepseq >= 1.1 && < 1.5,
318                       mtl >= 1.1.1.0 && < 2.3,
319                       terminfo >= 0.3 && < 0.5,
320                       text >= 0.11.3,
321                       unix,
322                       utf8-string >= 0.3 && < 1.1,
323                       vector >= 0.7
324
325test-suite verify-image-ops
326  default-language:    Haskell2010
327  default-extensions:  ScopedTypeVariables
328
329  type:                detailed-0.9
330
331  hs-source-dirs:      test
332
333  test-module:         VerifyImageOps
334
335  other-modules:       Verify
336                       Verify.Graphics.Vty.Attributes
337                       Verify.Graphics.Vty.Image
338
339  build-depends:       vty,
340                       Cabal >= 1.20,
341                       QuickCheck >= 2.7,
342                       random >= 1.0 && < 1.3,
343                       base >= 4.8 && < 5,
344                       bytestring,
345                       containers,
346                       deepseq >= 1.1 && < 1.5,
347                       mtl >= 1.1.1.0 && < 2.3,
348                       text >= 0.11.3,
349                       unix,
350                       utf8-string >= 0.3 && < 1.1,
351                       vector >= 0.7
352
353test-suite verify-image-trans
354  default-language:    Haskell2010
355  default-extensions:  ScopedTypeVariables
356
357  type:                detailed-0.9
358
359  hs-source-dirs:      test
360
361  test-module:         VerifyImageTrans
362
363  other-modules:       Verify
364                       Verify.Graphics.Vty.Attributes
365                       Verify.Graphics.Vty.Image
366
367  build-depends:       vty,
368                       Cabal >= 1.20,
369                       QuickCheck >= 2.7,
370                       random >= 1.0 && < 1.3,
371                       base >= 4.8 && < 5,
372                       bytestring,
373                       containers,
374                       deepseq >= 1.1 && < 1.5,
375                       mtl >= 1.1.1.0 && < 2.3,
376                       text >= 0.11.3,
377                       unix,
378                       utf8-string >= 0.3 && < 1.1,
379                       vector >= 0.7
380
381test-suite verify-inline
382  default-language:    Haskell2010
383  default-extensions:  ScopedTypeVariables
384
385  type:                detailed-0.9
386
387  hs-source-dirs:      test
388
389  test-module:         VerifyInline
390
391  other-modules:       Verify
392                       Verify.Graphics.Vty.Output
393
394  build-depends:       vty,
395                       Cabal >= 1.20,
396                       QuickCheck >= 2.7,
397                       random >= 1.0 && < 1.3,
398                       base >= 4.8 && < 5,
399                       bytestring,
400                       containers,
401                       deepseq >= 1.1 && < 1.5,
402                       mtl >= 1.1.1.0 && < 2.3,
403                       text >= 0.11.3,
404                       unix,
405                       utf8-string >= 0.3 && < 1.1,
406                       vector >= 0.7
407
408test-suite verify-parse-terminfo-caps
409  default-language:    Haskell2010
410  default-extensions:  ScopedTypeVariables
411
412  type:                detailed-0.9
413
414  hs-source-dirs:      test
415
416  test-module:         VerifyParseTerminfoCaps
417
418  other-modules:       Verify
419                       Verify.Data.Terminfo.Parse
420                       Verify.Graphics.Vty.Output
421
422  build-depends:       vty,
423                       Cabal >= 1.20,
424                       QuickCheck >= 2.7,
425                       random >= 1.0 && < 1.3,
426                       base >= 4.8 && < 5,
427                       bytestring,
428                       containers,
429                       deepseq >= 1.1 && < 1.5,
430                       mtl >= 1.1.1.0 && < 2.3,
431                       terminfo >= 0.3 && < 0.5,
432                       text >= 0.11.3,
433                       unix,
434                       utf8-string >= 0.3 && < 1.1,
435                       vector >= 0.7
436
437test-suite verify-simple-span-generation
438  default-language:    Haskell2010
439  default-extensions:  ScopedTypeVariables
440
441  type:                detailed-0.9
442
443  hs-source-dirs:      test
444
445  test-module:         VerifySimpleSpanGeneration
446
447  other-modules:       Verify
448                       Verify.Graphics.Vty.Attributes
449                       Verify.Graphics.Vty.Prelude
450                       Verify.Graphics.Vty.Picture
451                       Verify.Graphics.Vty.Image
452                       Verify.Graphics.Vty.Span
453
454  build-depends:       vty,
455                       Cabal >= 1.20,
456                       QuickCheck >= 2.7,
457                       random >= 1.0 && < 1.3,
458                       base >= 4.8 && < 5,
459                       bytestring,
460                       containers,
461                       deepseq >= 1.1 && < 1.5,
462                       mtl >= 1.1.1.0 && < 2.3,
463                       text >= 0.11.3,
464                       unix,
465                       utf8-string >= 0.3 && < 1.1,
466                       vector >= 0.7
467
468
469test-suite verify-crop-span-generation
470  default-language:    Haskell2010
471  default-extensions:  ScopedTypeVariables
472
473  type:                detailed-0.9
474
475  hs-source-dirs:      test
476
477  test-module:         VerifyCropSpanGeneration
478
479  other-modules:       Verify
480                       Verify.Graphics.Vty.Attributes
481                       Verify.Graphics.Vty.Prelude
482                       Verify.Graphics.Vty.Picture
483                       Verify.Graphics.Vty.Image
484                       Verify.Graphics.Vty.Span
485
486  build-depends:       vty,
487                       Cabal >= 1.20,
488                       QuickCheck >= 2.7,
489                       random >= 1.0 && < 1.3,
490                       base >= 4.8 && < 5,
491                       bytestring,
492                       containers,
493                       deepseq >= 1.1 && < 1.5,
494                       mtl >= 1.1.1.0 && < 2.3,
495                       text >= 0.11.3,
496                       unix,
497                       utf8-string >= 0.3 && < 1.1,
498                       vector >= 0.7
499
500
501test-suite verify-layers-span-generation
502  default-language:    Haskell2010
503  default-extensions:  ScopedTypeVariables
504
505  type:                detailed-0.9
506
507  hs-source-dirs:      test
508
509  test-module:         VerifyLayersSpanGeneration
510
511  other-modules:       Verify
512                       Verify.Graphics.Vty.Attributes
513                       Verify.Graphics.Vty.Prelude
514                       Verify.Graphics.Vty.Picture
515                       Verify.Graphics.Vty.Image
516                       Verify.Graphics.Vty.Span
517
518  build-depends:       vty,
519                       Cabal >= 1.20,
520                       QuickCheck >= 2.7,
521                       random >= 1.0 && < 1.3,
522                       base >= 4.8 && < 5,
523                       bytestring,
524                       containers,
525                       deepseq >= 1.1 && < 1.5,
526                       mtl >= 1.1.1.0 && < 2.3,
527                       text >= 0.11.3,
528                       unix,
529                       utf8-string >= 0.3 && < 1.1,
530                       vector >= 0.7
531
532test-suite verify-color-mapping
533  default-language:    Haskell2010
534  default-extensions:  ScopedTypeVariables
535
536  type:                detailed-0.9
537
538  hs-source-dirs:      test
539
540  test-module:         VerifyColor240
541
542  other-modules:       Verify
543
544  build-depends:       vty,
545                       Cabal >= 1.20,
546                       QuickCheck >= 2.7,
547                       random >= 1.0 && < 1.3,
548                       base >= 4.8 && < 5,
549                       bytestring,
550                       containers,
551                       deepseq >= 1.1 && < 1.5,
552                       mtl >= 1.1.1.0 && < 2.3,
553                       text >= 0.11.3,
554                       unix,
555                       utf8-string >= 0.3 && < 1.1,
556                       vector >= 0.7
557
558
559test-suite verify-utf8-width
560  default-language:    Haskell2010
561  default-extensions:  ScopedTypeVariables
562
563  type:                detailed-0.9
564
565  hs-source-dirs:      test
566
567  test-module:         VerifyUtf8Width
568
569  other-modules:       Verify
570
571  build-depends:       vty,
572                       Cabal >= 1.20,
573                       QuickCheck >= 2.7,
574                       random >= 1.0 && < 1.3,
575                       base >= 4.8 && < 5,
576                       bytestring,
577                       containers,
578                       deepseq >= 1.1 && < 1.5,
579                       mtl >= 1.1.1.0 && < 2.3,
580                       text >= 0.11.3,
581                       unix,
582                       utf8-string >= 0.3 && < 1.1,
583                       vector >= 0.7
584
585test-suite verify-using-mock-input
586  default-language:    Haskell2010
587  default-extensions:  ScopedTypeVariables
588
589  type:                exitcode-stdio-1.0
590
591  hs-source-dirs:      test
592
593  main-is:             VerifyUsingMockInput.hs
594
595  build-depends:       vty,
596                       Cabal >= 1.20,
597                       QuickCheck >= 2.7,
598                       smallcheck == 1.*,
599                       quickcheck-assertions >= 0.1.1,
600                       test-framework == 0.8.*,
601                       test-framework-smallcheck == 0.2.*,
602                       random >= 1.0 && < 1.3,
603                       base >= 4.8 && < 5,
604                       bytestring,
605                       containers,
606                       deepseq >= 1.1 && < 1.5,
607                       microlens,
608                       microlens-mtl,
609                       mtl >= 1.1.1.0 && < 2.3,
610                       stm,
611                       terminfo >= 0.3 && < 0.5,
612                       text >= 0.11.3,
613                       unix,
614                       utf8-string >= 0.3 && < 1.1,
615                       vector >= 0.7
616
617  ghc-options:         -threaded -Wall
618
619test-suite verify-config
620  default-language:    Haskell2010
621  default-extensions:  ScopedTypeVariables
622
623  type:                exitcode-stdio-1.0
624
625  hs-source-dirs:      test
626
627  main-is:             VerifyConfig.hs
628
629  build-depends:       vty,
630                       Cabal >= 1.20,
631                       HUnit,
632                       QuickCheck >= 2.7,
633                       smallcheck == 1.*,
634                       quickcheck-assertions >= 0.1.1,
635                       test-framework == 0.8.*,
636                       test-framework-smallcheck == 0.2.*,
637                       test-framework-hunit,
638                       random >= 1.0 && < 1.3,
639                       base >= 4.8 && < 5,
640                       bytestring,
641                       containers,
642                       deepseq >= 1.1 && < 1.5,
643                       microlens,
644                       microlens-mtl,
645                       mtl >= 1.1.1.0 && < 2.3,
646                       string-qq,
647                       terminfo >= 0.3 && < 0.5,
648                       text >= 0.11.3,
649                       unix,
650                       utf8-string >= 0.3 && < 1.1,
651                       vector >= 0.7
652
653  ghc-options:         -threaded -Wall
654