From 5db89a31aaf6459a56ee727a28c327e4830561b6 Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Fri, 28 Dec 2018 17:53:40 -0800 Subject: [PATCH] qtestify --- .../fonts}/FiraMono-Regular.ttf | Bin quad/{quad => qtest/fonts}/charter.ttf | Bin quad/{quad => qtest/fonts}/fira.ttf | Bin quad/{quad => qtest}/kafka.rkt | 2 +- quad/{quad => qtest}/kafka.txt | 0 quad/{quad => qtest}/typewriter-test.rkt | 0 quad/quad/test-glyph-layout.rkt | 8 --- quad/quad/tty-test.rkt | 4 -- quad/quad/tty.rkt | 62 ------------------ quad/quad/typewriter.rkt | 2 +- 10 files changed, 2 insertions(+), 76 deletions(-) rename quad/{quad => qtest/fonts}/FiraMono-Regular.ttf (100%) rename quad/{quad => qtest/fonts}/charter.ttf (100%) rename quad/{quad => qtest/fonts}/fira.ttf (100%) rename quad/{quad => qtest}/kafka.rkt (72%) rename quad/{quad => qtest}/kafka.txt (100%) rename quad/{quad => qtest}/typewriter-test.rkt (100%) delete mode 100644 quad/quad/test-glyph-layout.rkt delete mode 100644 quad/quad/tty-test.rkt delete mode 100644 quad/quad/tty.rkt diff --git a/quad/quad/FiraMono-Regular.ttf b/quad/qtest/fonts/FiraMono-Regular.ttf similarity index 100% rename from quad/quad/FiraMono-Regular.ttf rename to quad/qtest/fonts/FiraMono-Regular.ttf diff --git a/quad/quad/charter.ttf b/quad/qtest/fonts/charter.ttf similarity index 100% rename from quad/quad/charter.ttf rename to quad/qtest/fonts/charter.ttf diff --git a/quad/quad/fira.ttf b/quad/qtest/fonts/fira.ttf similarity index 100% rename from quad/quad/fira.ttf rename to quad/qtest/fonts/fira.ttf diff --git a/quad/quad/kafka.rkt b/quad/qtest/kafka.rkt similarity index 72% rename from quad/quad/kafka.rkt rename to quad/qtest/kafka.rkt index c69d4cbb..7defb82b 100644 --- a/quad/quad/kafka.rkt +++ b/quad/qtest/kafka.rkt @@ -1,5 +1,5 @@ #lang racket/base (require quad/typewriter racket/file racket/runtime-path racket/path) (define-runtime-path kafka "kafka.txt") -(run (qexpr->quad (quad #:fontsize "18" (file->string kafka))) (path-replace-extension kafka #".pdf")) +(run (qexpr->quad (quad #:fontsize "14" (file->string kafka))) (path-replace-extension kafka #".pdf")) diff --git a/quad/quad/kafka.txt b/quad/qtest/kafka.txt similarity index 100% rename from quad/quad/kafka.txt rename to quad/qtest/kafka.txt diff --git a/quad/quad/typewriter-test.rkt b/quad/qtest/typewriter-test.rkt similarity index 100% rename from quad/quad/typewriter-test.rkt rename to quad/qtest/typewriter-test.rkt diff --git a/quad/quad/test-glyph-layout.rkt b/quad/quad/test-glyph-layout.rkt deleted file mode 100644 index 6d8b1ad8..00000000 --- a/quad/quad/test-glyph-layout.rkt +++ /dev/null @@ -1,8 +0,0 @@ -#lang br -(require fontland/font) - -(define f (open-font "fira.ttf")) - -(define gr (time (layout f "fifl"))) - -gr \ No newline at end of file diff --git a/quad/quad/tty-test.rkt b/quad/quad/tty-test.rkt deleted file mode 100644 index 6064051d..00000000 --- a/quad/quad/tty-test.rkt +++ /dev/null @@ -1,4 +0,0 @@ -#lang quad/tty -'(doc - (page (line (char "a") (char " ") (char "b")) (line (char "c") (char "d"))) - (page (line (char "e") (char "f")) (line (char "g") (char " ") (char "h")))) \ No newline at end of file diff --git a/quad/quad/tty.rkt b/quad/quad/tty.rkt deleted file mode 100644 index 0079b807..00000000 --- a/quad/quad/tty.rkt +++ /dev/null @@ -1,62 +0,0 @@ -#lang debug br/quicklang -(require racket/contract "qexpr.rkt") -(provide (except-out (all-from-out br/quicklang) #%module-begin) - (rename-out [mb #%module-begin])) - -(define/contract (render-tty qexpr) - (qexpr? . -> . string?) - (define page 0) (define row 0) (define col 0) - (define (increment-page!) (set! page (add1 page)) page) - (define (increment-row!) (set! row (add1 row)) row) - (define (increment-col!) (set! col (add1 col)) col) - (define strs - (let loop ([x qexpr]) - (match x - [`(char ,x) (list (format "move to col ~a" (increment-col!)) (format "draw char ~a" (char->integer (car (string->list x)))))] - [`(line ,@xs) (list (format "move to row ~a" (increment-row!)) (map loop xs) (begin (set! col 0) #f) )] - [`(page ,@xs) (list (format "move to page ~a" (increment-page!)) (map loop xs) (begin (set! row 0) #f))] - [`(doc ,@xs) (map loop xs)]))) - (string-join (map string-downcase (filter values (flatten strs))) "\n")) - -(module+ test - (require rackunit) - (define q '(doc - (page (line (char "a") (char " ") (char "b")) (line (char "c") (char "d"))) - (page (line (char "e") (char "f")) (line (char "g") (char " ") (char "h"))))) - (check-equal? (render-tty q) - "move to page 1 -move to row 1 -move to col 1 -draw char 97 -move to col 2 -draw char 32 -move to col 3 -draw char 98 -move to row 2 -move to col 1 -draw char 99 -move to col 2 -draw char 100 -move to page 2 -move to row 1 -move to col 1 -draw char 101 -move to col 2 -draw char 102 -move to row 2 -move to col 1 -draw char 103 -move to col 2 -draw char 32 -move to col 3 -draw char 104")) - -(define-macro (mb ARG) - #'(#%module-begin - (display (render-tty ARG)))) - -(module reader syntax/module-reader - quad/tty - #:read read - #:read-syntax read-syntax - (require racket/base)) \ No newline at end of file diff --git a/quad/quad/typewriter.rkt b/quad/quad/typewriter.rkt index 655b7c9a..ba587b9e 100644 --- a/quad/quad/typewriter.rkt +++ b/quad/quad/typewriter.rkt @@ -2,7 +2,7 @@ (require racket/promise racket/list sugar/debug "quad.rkt" "atomize.rkt" "break.rkt" "qexpr.rkt" "generic.rkt" "position.rkt" pitfall/document pitfall/vector pitfall/font pitfall/annotation pitfall/color pitfall/text fontland/font racket/runtime-path pollen/tag) (provide (rename-out [mb #%module-begin]) (except-out (all-from-out br/quicklang) #%module-begin)) -(define-runtime-path charter "charter.ttf") +(define-runtime-path charter "../qtest/fonts/charter.ttf") (define (soft-break? q) (and (quad? q)