]> gitweb.factorcode.org Git - factor.git/commitdiff
cleanups
authorSlava Pestov <slava@factorcode.org>
Thu, 1 Sep 2005 20:37:32 +0000 (20:37 +0000)
committerSlava Pestov <slava@factorcode.org>
Thu, 1 Sep 2005 20:37:32 +0000 (20:37 +0000)
13 files changed:
TODO.FACTOR.txt
doc/handbook.tex
library/bootstrap/boot-stage1.factor
library/httpd/default-responders.factor
library/httpd/file-responder.factor
library/httpd/html.factor
library/httpd/load.factor
library/httpd/resource-responder.factor [deleted file]
library/httpd/test-responder.factor [deleted file]
library/io/directories.factor [deleted file]
library/io/files.factor
library/io/stdio.factor
library/styles.factor

index bba1400e6e6d6f27fe5119e4c5192ac8699e8f49..60867117820eeb8b8cdd3b5adb4869a705f6e733 100644 (file)
@@ -1,6 +1,3 @@
-- reader syntax for arrays, byte arrays, displaced aliens\r
-- out of memory error when printing global namespace\r
-- removing unneeded #label\r
 - finish scrollbars\r
 - fix up the min thumb size hack\r
 \r
@@ -54,6 +51,7 @@
 \r
 + compiler:\r
 \r
+- removing unneeded #label\r
 - flushing optimization\r
 - compile-byte/cell: instantiating aliens\r
 - fix fixnum<< and /i overflow on PowerPC\r
@@ -71,6 +69,8 @@
 \r
 + kernel:\r
 \r
+- reader syntax for arrays, byte arrays, displaced aliens\r
+- out of memory error when printing global namespace\r
 - first time hash/vector is grown, set size to something big\r
 - merge timers with sleeping tasks\r
 - what about tasks and timers between image restarts\r
index 2e3a3486a1cde1c7a6c15bb501a00ad2321cd9c3..7e0e2492731f4c49488b7257644310e63acdf000 100644 (file)
@@ -4392,7 +4392,6 @@ Key&Description\\
 \ttindex{underline}&A boolean\\
 \ttindex{presented}&If set, a presentation for this object is output\\
 \ttindex{file}&If set, a hyperlink to that file is output\\
-\ttindex{icon}&If set, the icon named by this resource path is output\\
 \end{tabular}
 
 All keys are symbols in the \verb|styles| vocabulary.
index 74ff9842ad71d7aaca805a1b54209823ae5b1757..c82cdb2034d51c1151fd7836b9467ae867fcfda1 100644 (file)
@@ -69,7 +69,6 @@ sequences io vectors words ;
         "/library/io/string-streams.factor"
         "/library/io/c-streams.factor"
         "/library/io/files.factor"
-        "/library/io/directories.factor"
         "/library/io/binary.factor"
 
         "/library/syntax/parse-words.factor"
index 5ae7f92205338627375e2bcb4153dd81e534fdb4..56ba5f4e235ab67ef75d59a6da8c8f3ea51aae4a 100644 (file)
@@ -10,19 +10,15 @@ test-responder ;
 global [
     {{ }} clone responders set
 
-    ! Runs all unit tests and dumps result to the client. This uses
-    ! a lot of server resources, so disable it on a busy server.
-    [
-        "test" "responder" set
-        [ test-responder ] "get" set
-    ] make-responder
-    
     ! 404 error message pages are served by this guy
     [
         "404" "responder" set
         [ drop no-such-responder ] "get" set
     ] make-responder
     
+    ! Servers Factor word definitions from the image.
+    "browser" [ browser-responder ] install-cont-responder
+    
     ! Serves files from a directory stored in the "doc-root"
     ! variable. You can set the variable in the global namespace,
     ! or inside the responder.
@@ -34,15 +30,6 @@ global [
         [ file-responder ] "head" set
     ] make-responder
     
-    ! Serves Factor source code 
-    [
-        "resource" "responder" set
-        [ resource-responder ] "get" set
-    ] make-responder
-    
-    ! Servers Factor word definitions from the image.
-    "browser" [ browser-responder ] install-cont-responder
-    
     ! The root directory is served by...
     "file" set-default-responder
 
index e909a28185199b373b46eb2fffcf2313148bfe31..51dd0f8bfc820cbc5865ce1f0b7bf83dfead0628 100644 (file)
@@ -27,6 +27,18 @@ io strings ;
         serve-static
     ] ifte ;
 
+: file-link. ( text path -- )
+    file swons unit format ;
+
+: file-type. ( path -- )
+    directory? "[DIR ] " "[FILE] " ? write ;
+
+: file. ( dir name -- )
+    tuck path+ [ file-type. ] keep file-link. ;
+
+: directory. ( dir -- )
+    dup directory [ file. terpri ] each-with ;
+
 : list-directory ( directory -- )
     serving-html
      "method" get "head" = [
index 8afe197d4336f7fa2b76d80c519547a2dc93dfff..dceb67bbac80daf540ce6ea4dbfa947cedd7ae08 100644 (file)
@@ -91,16 +91,6 @@ presentation sequences strings styles words ;
         drop call
     ] ifte ;
 
-: icon-tag ( string style quot -- )
-    over icon swap assoc dup [
-        <img src= "/responder/resource/" swap append img/>
-        #! Ignore the quotation, since no further style
-        #! can be applied
-        3drop
-    ] [
-        drop call
-    ] ifte ;
-
 TUPLE: html-stream ;
 
 M: html-stream stream-write1 ( char stream -- )
@@ -112,10 +102,8 @@ M: html-stream stream-format ( str style stream -- )
     [
         [
             [
-                [
-                    [ drop chars>entities write ] span-tag
-                ] file-link-tag
-            ] icon-tag
+                [ drop chars>entities write ] span-tag
+            ] file-link-tag
         ] browser-link-tag
     ] with-wrapper ;
 
@@ -131,7 +119,6 @@ C: html-stream ( stream -- stream )
     #! font-style
     #! font-size
     #! underline
-    #! icon
     #! file
     #! word
     #! vocab
index 3d78266fc90cbea7bf5a925d95a4bc5f08a0bfee..8cf325f27d202074fd06c60d3e1b7075b252ee30 100644 (file)
@@ -7,8 +7,6 @@ USING: kernel parser sequences io ;
     "/library/httpd/responder.factor"
     "/library/httpd/httpd.factor"
     "/library/httpd/file-responder.factor"
-    "/library/httpd/test-responder.factor"
-    "/library/httpd/resource-responder.factor"
     "/library/httpd/cont-responder.factor"
     "/library/httpd/browser-responder.factor"
     "/library/httpd/default-responders.factor"
diff --git a/library/httpd/resource-responder.factor b/library/httpd/resource-responder.factor
deleted file mode 100644 (file)
index fa5f941..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-! Copyright (C) 2004, 2005 Slava Pestov.
-! See http://factor.sf.net/license.txt for BSD license.
-IN: resource-responder
-USING: httpd kernel lists namespaces io ;
-
-: resource-response ( mime-type -- )
-    "Content-Type" swons unit "200 OK" response terpri ;
-
-: serve-resource ( filename mime-type -- )
-    dup mime-type resource-response  "method" get "head" = [
-        drop
-    ] [
-        <resource-stream> stdio get stream-copy
-    ] ifte ;
-
-: resource-responder ( filename -- )
-    "resource-path" get [
-        serve-resource
-    ] [
-        drop "404 resource-path not set" httpd-error
-    ] ifte ;
diff --git a/library/httpd/test-responder.factor b/library/httpd/test-responder.factor
deleted file mode 100644 (file)
index fef5856..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-! Copyright (C) 2004, 2005 Slava Pestov.
-! See http://factor.sf.net/license.txt for BSD license.
-IN: test-responder
-USING: html httpd kernel test ;
-
-: test-responder ( argument -- )
-    drop
-    serving-html
-    "Factor Test Suite" [ all-tests ] simple-html-document ;
diff --git a/library/io/directories.factor b/library/io/directories.factor
deleted file mode 100644 (file)
index 6e3ad05..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-! Copyright (C) 2004, 2005 Slava Pestov.
-! See http://factor.sf.net/license.txt for BSD license.
-IN: io
-USING: hashtables kernel lists namespaces presentation sequences
-strings styles ;
-
-! Hyperlinked directory listings.
-
-: dir-icon "/library/icons/Folder.png" ;
-: file-icon "/library/icons/File.png" ;
-: file-icon. directory? dir-icon file-icon ? write-icon ;
-
-: file-link. ( dir name -- )
-    tuck path+ file swons unit format ;
-
-: file. ( dir name -- )
-    #! If "doc-root" set, create links relative to it.
-    2dup path+ file-icon. " " write file-link. terpri ;
-
-: directory. ( dir -- )
-    #! If "doc-root" set, create links relative to it.
-    dup directory [
-        dup [ "." ".." ] member? [ 2drop ] [ file. ] ifte
-    ] each-with ;
index 373e52c0b9e1a6d8ba14f5d40dc0cd19b0c27d15..a4d8014d01e4a24efd279d41a2cc0e3627f7e585 100644 (file)
@@ -6,10 +6,16 @@ USING: kernel lists namespaces sequences strings ;
 ! Words for accessing filesystem meta-data.
 
 : path+ ( path path -- path ) "/" swap append3 ;
+
 : exists? ( file -- ? ) stat >boolean ;
+
 : directory? ( file -- ? ) stat car ;
-: directory ( dir -- list ) (directory) string-sort ;
+
+: directory ( dir -- list )
+    (directory) { "." ".." } swap seq-diff string-sort ;
+
 : file-length ( file -- length ) stat third ;
+
 : file-extension ( filename -- extension )
     "." split cdr dup [ peek ] when ;
 
index 6e4842f12b6aa6de92bc59766ee6ee5e9cb04e19..3f186edfa69fad36a6e88079e26024c1b988363f 100644 (file)
@@ -14,10 +14,6 @@ USING: errors generic kernel lists namespaces strings styles ;
 : terpri ( -- )              stdio get stream-terpri ;\r
 : close  ( -- )              stdio get stream-close ;\r
 \r
-: write-icon ( resource -- )\r
-    #! Write an icon. Eg, /library/icons/File.png\r
-    icon swons unit "" swap format ;\r
-\r
 : write-object ( string object -- )\r
     presented swons unit format ;\r
 \r
index 2b762cd34b965c2e798a9c8335f11a1fe877d154..b279008e2eecaac38adb24cabd80d0cbbc59c299 100644 (file)
@@ -27,7 +27,5 @@ SYMBOL: bold-italic
 
 SYMBOL: underline
 
-SYMBOL: icon
-
 SYMBOL: presented
 SYMBOL: file