Commit836104e1Recorded12 Jan 2026Repositorysigil-css
sigil-css: API review and cleanup
Message
- Change internal function comments from ;;; to ;;
- Add API review in notes/review/sigil-css.md
Changed
src/sigil/css.sgl | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)Diff
src/sigil/css.sglmodified
@@ -103,10 +103,10 @@
103
;; ========== Core Data Structures ========== 104
;; 105
;; CSS rules are represented as tagged lists:−106
;;; (rule selector ((prop . value) ...) (child-rules ...))−107
;;; (media query (rules ...))−108
;;; (keyframes name ((step props ...) ...))−109
;;; (vars ((name . value) ...))+106
;; (rule selector ((prop . value) ...) (child-rules ...))+107
;; (media query (rules ...))+108
;; (keyframes name ((step props ...) ...))+109
;; (vars ((name . value) ...)) 110
111
;; Internal helpers (% prefix = exported for macro hygiene only) 112
(define (%make-rule selector props children)@@ -305,7 +305,7 @@
305
fragments) 306
(get-output-string out))) 307
−308
;;; Write a single fragment+308
;; Write a single fragment 309
(define (write-fragment frag out indent) 310
(cond 311
((rule? frag)@@ -324,7 +324,7 @@
324
;; List of fragments 325
(for-each (lambda (f) (write-fragment f out indent)) frag)))) 326
−327
;;; Write a rule+327
;; Write a rule 328
(define (write-rule rule out indent) 329
(let ((selector (%rule-selector rule)) 330
(props (%rule-props rule))@@ -350,7 +350,7 @@
350
(write-fragment child out indent)) 351
children))) 352
−353
;;; Write media query+353
;; Write media query 354
(define (write-media media out indent) 355
(let ((query (cadr media)) 356
(rules (caddr media)))@@ -365,7 +365,7 @@
365
(write-indent out indent) 366
(display "}\n\n" out))) 367
−368
;;; Write keyframes+368
;; Write keyframes 369
(define (write-keyframes kf out indent) 370
(let ((name (cadr kf)) 371
(steps (caddr kf)))@@ -394,7 +394,7 @@
394
(write-indent out indent) 395
(display "}\n\n" out))) 396
−397
;;; Write :root with CSS variables+397
;; Write :root with CSS variables 398
(define (write-vars vars out indent) 399
(let ((pairs (cadr vars))) 400
(write-indent out indent)@@ -410,19 +410,19 @@
410
(write-indent out indent) 411
(display "}\n\n" out))) 412
−413
;;; Write @import+413
;; Write @import 414
(define (write-import imp out) 415
(let ((url (cadr imp))) 416
(display "@import url('" out) 417
(display url out) 418
(display "');\n" out))) 419
−420
;;; Write raw CSS+420
;; Write raw CSS 421
(define (write-raw raw out) 422
(display (cadr raw) out) 423
(display "\n" out)) 424
−425
;;; Write indentation+425
;; Write indentation 426
(define (write-indent out level) 427
(let loop ((i 0)) 428
(when (< i level)@@ -488,14 +488,14 @@
488
;; ========== Value Helpers ========== 489
490
;; Convert property name (symbol or string) to string−491
;;; % prefix = exported for macro hygiene+491
;; % prefix = exported for macro hygiene 492
(define (%prop-name->string name) 493
(if (symbol? name) 494
(symbol->string name) 495
name)) 496
−497
;;; Convert a single value to string−498
;;; % prefix = exported for macro hygiene+497
;; Convert a single value to string+498
;; % prefix = exported for macro hygiene 499
(define (%value->string v) 500
(cond 501
((string? v) v)@@ -503,8 +503,8 @@
503
((symbol? v) (symbol->string v)) 504
(else (format "~a" v)))) 505
−506
;;; Convert multiple values to space-separated string−507
;;; % prefix = exported for macro hygiene+506
;; Convert multiple values to space-separated string+507
;; % prefix = exported for macro hygiene 508
(define (%values->string vals) 509
(string-join (map %value->string vals) " ")) 510