changelog shortlog graph tags branches changeset files file revisions raw help

Mercurial > core / annotate lisp/lib/skel/pkg.lisp

changeset 50: e62a6a0d5997
parent: 61482ce290f9
child: ee94191a3fb0
author: ellis <ellis@rwest.io>
date: Fri, 24 Nov 2023 00:04:43 -0500
permissions: -rw-r--r--
description: organ/lexer, ulang support, gui and web stuff
18
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
1
 ;;; skel.lisp --- skeleton library
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
2
 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
3
 ;; A hacker's project compiler.
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
4
 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
5
 ;;; Commentary:
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
6
 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
7
 ;;; Code:
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
8
 (eval-when (:compile-toplevel :load-toplevel :execute) 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
9
   (require 'sb-posix))
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
10
 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
11
 (uiop:define-package :skel/pkg
50
e62a6a0d5997 organ/lexer, ulang support, gui and web stuff
ellis <ellis@rwest.io>
parents: 18
diff changeset
12
     (:nicknames :skel)
18
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
13
   (:use :cl :std :sb-mop :cl-ppcre)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
14
   (:import-from :sb-posix :getcwd :getuid)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
15
   (:import-from :sb-unix :uid-username)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
16
   (:import-from :uiop :ensure-absolute-pathname)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
17
   (:shadowing-import-from :uiop :pathname-parent-directory-pathname :read-file-forms)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
18
   (:export
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
19
    ;; cfg
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
20
    :*skel-project* :*skel-user-config* :*default-skelrc* :*skel-project-registry* 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
21
    :*default-skelfile* :*default-skel-user* :*default-skel-cache* :*default-user-skel-config* 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
22
    :*default-system-skel-config* :*skelfile-extension* :*skelfile-boundary*
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
23
    ;; proto
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
24
    :sk-run
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
25
    :sk-new
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
26
    :sk-save
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
27
    :sk-tangle
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
28
    :sk-weave
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
29
    :sk-call
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
30
    :sk-print
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
31
    :sk-load
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
32
    :sk-compile
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
33
    :rehash-object
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
34
    :sk-transform
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
35
    :sk-read-file
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
36
    :sk-write
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
37
    :sk-writeln
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
38
    :sk-write-string
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
39
    :sk-write-file
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
40
    :sk-read-file
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
41
    :sk-install-user-config
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
42
    ;; obj
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
43
    :skel :sk-meta :def-sk-class :sk-project :sk-target :sk-source
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
44
    :sk-rule :sk-rule-target :sk-rule-source :sk-rule-recipe :make-sk-rule 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
45
    :sk-description :sk-kind :sk-rules :sk-id :sk-version :sk-name :sk-documents :sk-document 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
46
    :sk-command :sk-scripts :sk-script :sk-config :sk-snippets :sk-snippet :sk-abbrevs :sk-abbrev
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
47
    ;; accesors
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
48
    :sk-vc
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
49
    ;; header
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
50
    :make-file-header :make-shebang-file-header :make-source-file-header :file-header-kind
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
51
    :make-source-header-comment :make-shebang-comment 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
52
    ;; utils
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
53
    :init-skelfile :init-skelrc :load-skelrc :find-skelfile :load-skelfile
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
54
    :describe-skeleton :describe-project :init-skel-user-config
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
55
    ;; vm
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
56
    :make-stack-slot :make-sk-vm :sks-ref :sks-pop :sks-push))
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
57
 
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
58
 (in-package :skel/pkg)
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
59
 (defvar *skel-version* "0.1.0")
61482ce290f9 migration complete
ellis <ellis@rwest.io>
parents:
diff changeset
60
 (provide :skel)