From 4bc54497fac969b714252b025b8c7b072db9bc2d Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 27 Aug 2008 16:23:35 -0500 Subject: [PATCH] Move vocabularies which use delegation to unmaintained, and delete older unmaintained stuff --- extra/generic/lib/lib.factor | 6 - extra/reports/optimizer/optimizer.factor | 44 -- extra/turtle/authors.txt | 1 - .../balloon-bomber/authors.txt | 0 .../balloon-bomber/balloon-bomber-docs.factor | 0 .../balloon-bomber/balloon-bomber.factor | 0 .../balloon-bomber/summary.txt | 0 .../balloon-bomber/tags.txt | 0 {extra => unmaintained}/bunny/authors.txt | 0 {extra => unmaintained}/bunny/bun_zipper.ply | 0 {extra => unmaintained}/bunny/bunny.factor | 0 .../bunny/cel-shaded/cel-shaded.factor | 0 {extra => unmaintained}/bunny/deploy.factor | 0 .../fixed-pipeline/fixed-pipeline.factor | 0 .../bunny/model/model.factor | 4 +- .../bunny/outlined/outlined.factor | 0 {extra => unmaintained}/bunny/summary.txt | 0 {extra => unmaintained}/bunny/tags.txt | 0 unmaintained/cabal/authors.txt | 1 - unmaintained/cabal/cabal.factor | 94 --- unmaintained/cabal/summary.txt | 1 - unmaintained/cabal/ui/authors.txt | 2 - unmaintained/cabal/ui/summary.txt | 1 - unmaintained/cabal/ui/ui.factor | 52 -- .../cairo-demo/authors.txt | 0 .../cairo-demo/cairo-demo.factor | 0 {extra => unmaintained}/cairo/authors.txt | 0 {extra => unmaintained}/cairo/cairo.factor | 0 {extra => unmaintained}/cairo/ffi/ffi.factor | 0 .../cairo/gadgets/gadgets.factor | 0 .../cairo/samples/samples.factor | 0 {extra => unmaintained}/cairo/summary.txt | 0 {extra => unmaintained}/cairo/tags.txt | 0 .../camera/authors.txt | 0 .../camera/camera.factor | 0 {extra => unmaintained}/digraphs/authors.txt | 0 .../digraphs/digraphs-tests.factor | 0 .../digraphs/digraphs.factor | 0 {extra => unmaintained}/digraphs/summary.txt | 0 {extra => unmaintained}/digraphs/tags.txt | 0 unmaintained/enchilada/authors.txt | 1 - unmaintained/enchilada/enchilada-tests.factor | 6 - unmaintained/enchilada/enchilada.factor | 12 - unmaintained/enchilada/engine/engine.factor | 322 -------- unmaintained/enchilada/parser/parser.factor | 139 ---- unmaintained/enchilada/printer/printer.factor | 71 -- unmaintained/enchilada/summary.txt | 1 - unmaintained/enchilada/tags.txt | 1 - unmaintained/furnace-onigiri/load.factor | 12 - unmaintained/furnace-onigiri/onigiri.factor | 166 ---- unmaintained/furnace-onigiri/onigiri.facts | 0 unmaintained/furnace-onigiri/onigiri.todo | 4 - .../resources/onigirihouse.css | 7 - .../furnace-onigiri/resources/wiky/wiky.css | 15 - .../furnace-onigiri/resources/wiky/wiky.js | 373 --------- .../resources/wiky/wiky.lang.css | 9 - .../resources/wiky/wiky.lang.js | 40 - .../resources/wiky/wiky.math.css | 88 --- .../resources/wiky/wiky.math.js | 374 --------- .../furnace-onigiri/templates/atom.furnace | 23 - .../templates/entry-edit-plain.furnace | 19 - .../templates/entry-edit.furnace | 34 - .../templates/entry-show.furnace | 9 - .../furnace-onigiri/templates/footer.furnace | 16 - .../furnace-onigiri/templates/header.furnace | 25 - .../furnace-onigiri/templates/sitemap.furnace | 12 - .../gap-buffer/authors.txt | 0 .../gap-buffer/cursortree/authors.txt | 0 .../cursortree/cursortree-tests.factor | 0 .../gap-buffer/cursortree/cursortree.factor | 0 .../gap-buffer/cursortree/summary.txt | 0 .../gap-buffer/gap-buffer-tests.factor | 0 .../gap-buffer/gap-buffer.factor | 0 .../gap-buffer/summary.txt | 0 {extra => unmaintained}/gap-buffer/tags.txt | 0 {extra => unmaintained}/graphics/authors.txt | 0 .../graphics/bitmap/authors.txt | 0 .../graphics/bitmap/bitmap.factor | 0 .../graphics/bitmap/test-images/1bit.bmp | Bin .../graphics/bitmap/test-images/rgb4bit.bmp | Bin .../graphics/bitmap/test-images/rgb8bit.bmp | Bin .../bitmap/test-images/thiswayup24.bmp | Bin {extra => unmaintained}/graphics/tags.txt | 0 .../graphics/viewer/authors.txt | 0 .../graphics/viewer/viewer.factor | 0 unmaintained/irc/irc-client.factor | 264 ------- unmaintained/irc/load.factor | 7 - unmaintained/isequences/authors.txt | 1 - unmaintained/isequences/base/base.factor | 586 -------------- .../interface/interface-docs.factor | 17 - .../isequences/interface/interface.factor | 110 --- .../isequences/isequences-tests.factor | 47 -- unmaintained/isequences/isequences.factor | 7 - .../isequences/ops/cache/cache.factor | 45 -- .../isequences/ops/divide/divide.factor | 94 --- unmaintained/isequences/ops/iota/iota.factor | 53 -- .../isequences/ops/match/match.factor | 90 --- .../isequences/ops/maximum/maximum.factor | 71 -- .../isequences/ops/minimum/minimum.factor | 60 -- .../isequences/ops/modulus/modulus.factor | 26 - .../isequences/ops/multiply/multiply.factor | 26 - unmaintained/isequences/ops/ops.factor | 5 - unmaintained/isequences/ops/sort/sort.factor | 36 - unmaintained/isequences/ops/wipe/wipe.factor | 26 - unmaintained/isequences/summary.txt | 1 - unmaintained/isequences/tags.txt | 1 - {extra => unmaintained}/jamshred/authors.txt | 0 .../jamshred/deploy.factor | 0 .../jamshred/game/authors.txt | 0 .../jamshred/game/game.factor | 0 .../jamshred/gl/authors.txt | 0 {extra => unmaintained}/jamshred/gl/gl.factor | 0 .../jamshred/jamshred.factor | 0 .../jamshred/log/log.factor | 0 .../jamshred/oint/authors.txt | 0 .../jamshred/oint/oint-tests.factor | 0 .../jamshred/oint/oint.factor | 0 .../jamshred/player/authors.txt | 0 .../jamshred/player/player.factor | 0 .../jamshred/sound/bang.wav | Bin .../jamshred/sound/sound.factor | 0 {extra => unmaintained}/jamshred/summary.txt | 0 {extra => unmaintained}/jamshred/tags.txt | 0 .../jamshred/tunnel/authors.txt | 0 .../jamshred/tunnel/tunnel-tests.factor | 0 .../jamshred/tunnel/tunnel.factor | 0 unmaintained/lambda/TODO.txt | 15 - unmaintained/lambda/core.factor | 79 -- unmaintained/lambda/lambda.factor | 28 - unmaintained/lambda/load.factor | 14 - unmaintained/lambda/nodes.factor | 130 ---- unmaintained/lambda/parser.factor | 70 -- unmaintained/lambda/test/lambda.factor | 11 - unmaintained/lisp/README | 15 - unmaintained/lisp/authors.txt | 1 - unmaintained/lisp/lexer/lexer.factor | 13 - unmaintained/lisp/lisp.factor | 164 ---- unmaintained/lisp/listener/listener.factor | 28 - unmaintained/lisp/listener/mod/mod.factor | 20 - unmaintained/lisp/parser/mod/mod.factor | 38 - unmaintained/lisp/summary.txt | 2 - unmaintained/lisp/syntax/syntax.factor | 8 - unmaintained/lisp/tags.txt | 2 - .../lib => unmaintained/lsys}/authors.txt | 0 .../lsys/strings}/authors.txt | 0 .../lsys/strings/interpret}/authors.txt | 0 .../lsys/strings/interpret/interpret.factor | 0 .../lsys/strings/rewrite}/authors.txt | 0 .../lsys/strings/rewrite/rewrite.factor | 0 .../lsys/strings/strings.factor | 0 {extra => unmaintained}/lsys/summary.txt | 0 {extra => unmaintained}/lsys/tags.txt | 0 .../lsys/tortoise}/authors.txt | 0 .../lsys/tortoise/graphics}/authors.txt | 0 .../lsys/tortoise/graphics/graphics.factor | 0 .../lsys/tortoise/tortoise.factor | 0 .../lsys/ui}/authors.txt | 0 {extra => unmaintained}/lsys/ui/deploy.factor | 0 {extra => unmaintained}/lsys/ui/tags.txt | 0 {extra => unmaintained}/lsys/ui/ui.factor | 0 .../lunar-rescue/authors.txt | 0 .../lunar-rescue/lunar-rescue-docs.factor | 0 .../lunar-rescue/lunar-rescue.factor | 0 .../lunar-rescue/summary.txt | 0 {extra => unmaintained}/lunar-rescue/tags.txt | 0 unmaintained/network-clipboard/authors.txt | 1 - .../network-clipboard.factor | 96 --- {extra => unmaintained}/ogg/authors.txt | 0 {extra => unmaintained}/ogg/ogg.factor | 0 .../ogg/player/authors.txt | 0 .../ogg/player/player.factor | 0 .../ogg/player/summary.txt | 0 {extra => unmaintained}/ogg/player/tags.txt | 0 {extra => unmaintained}/ogg/summary.txt | 0 {extra => unmaintained}/ogg/tags.txt | 0 .../ogg/theora/authors.txt | 0 .../ogg/theora/summary.txt | 0 {extra => unmaintained}/ogg/theora/tags.txt | 0 .../ogg/theora/theora.factor | 0 .../ogg/vorbis/authors.txt | 0 .../ogg/vorbis/summary.txt | 0 {extra => unmaintained}/ogg/vorbis/tags.txt | 0 .../ogg/vorbis/vorbis.factor | 0 .../pango/cairo/cairo.factor | 0 .../pango/cairo/gadgets/gadgets.factor | 0 .../pango/cairo/samples/samples.factor | 0 .../pango/fonts/fonts.factor | 0 {extra => unmaintained}/pango/ft2/ft2.factor | 0 .../pango/ft2/gadgets/gadgets.factor | 0 .../pango/gadgets/gadgets.factor | 0 .../pango/layouts/layouts.factor | 0 {extra => unmaintained}/pango/pango.factor | 0 unmaintained/regexp2/regexp2-tests.factor | 5 - unmaintained/regexp2/regexp2.factor | 262 ------- unmaintained/regexp4/regexp4-tests.factor | 244 ------ unmaintained/regexp4/regexp4.factor | 712 ------------------ .../scaffold/crud-templates/edit.furnace | 21 - .../scaffold/crud-templates/list.furnace | 27 - .../scaffold/crud-templates/show.furnace | 20 - unmaintained/scaffold/scaffold.factor | 128 ---- .../semantic-db/authors.txt | 0 .../semantic-db/semantic-db-tests.factor | 0 .../semantic-db/semantic-db.factor | 0 unmaintained/shufflers/authors.txt | 1 - unmaintained/shufflers/shufflers-docs.factor | 13 - unmaintained/shufflers/shufflers-tests.factor | 8 - unmaintained/shufflers/shufflers.factor | 36 - unmaintained/shufflers/summary.txt | 1 - unmaintained/shufflers/tags.txt | 1 - .../space-invaders/authors.txt | 0 .../space-invaders/resources/BaseHit.wav | Bin .../space-invaders/resources/InvHit.Wav | Bin .../space-invaders/resources/Shot.wav | Bin .../space-invaders/resources/Ufo.wav | Bin .../space-invaders/resources/UfoHit.wav | Bin .../space-invaders/resources/Walk1.wav | Bin .../space-invaders/resources/Walk2.wav | Bin .../space-invaders/resources/Walk3.wav | Bin .../space-invaders/resources/Walk4.wav | Bin .../space-invaders/resources/invaders.rom | Bin .../space-invaders/space-invaders-docs.factor | 0 .../space-invaders/space-invaders.factor | 0 .../space-invaders/summary.txt | 0 .../space-invaders/tags.txt | 0 {extra => unmaintained}/tangle/authors.txt | 0 .../tangle/html/html-tests.factor | 0 .../tangle/html/html.factor | 0 .../tangle/menu/menu.factor | 0 .../tangle/page/page.factor | 0 .../tangle/path/path.factor | 0 .../tangle/resources/jquery-1.2.3.min.js | 0 .../tangle/resources/weave.html | 0 .../tangle/resources/weave.js | 0 .../tangle/sandbox/sandbox.factor | 0 {extra => unmaintained}/tangle/summary.txt | 0 .../tangle/tangle-tests.factor | 0 {extra => unmaintained}/tangle/tangle.factor | 0 {extra => unmaintained}/taxes/authors.txt | 0 {extra => unmaintained}/taxes/summary.txt | 0 {extra => unmaintained}/taxes/tags.txt | 0 .../taxes/taxes-tests.factor | 0 {extra => unmaintained}/taxes/taxes.factor | 0 {extra => unmaintained}/tetris/README.txt | 0 {extra => unmaintained}/tetris/authors.txt | 0 .../tetris/board/authors.txt | 0 .../tetris/board/board-tests.factor | 0 .../tetris/board/board.factor | 0 {extra => unmaintained}/tetris/deploy.factor | 0 .../tetris/game/authors.txt | 0 .../tetris/game/game-tests.factor | 0 .../tetris/game/game.factor | 0 {extra => unmaintained}/tetris/gl/authors.txt | 0 {extra => unmaintained}/tetris/gl/gl.factor | 0 .../tetris/piece/authors.txt | 0 .../tetris/piece/piece-tests.factor | 0 .../tetris/piece/piece.factor | 0 {extra => unmaintained}/tetris/summary.txt | 0 {extra => unmaintained}/tetris/tags.txt | 0 {extra => unmaintained}/tetris/tetris.factor | 0 .../tetris/tetromino/authors.txt | 0 .../tetris/tetromino/tetromino.factor | 0 {extra => unmaintained}/trees/authors.txt | 0 {extra => unmaintained}/trees/avl/authors.txt | 0 .../trees/avl/avl-docs.factor | 0 .../trees/avl/avl-tests.factor | 0 {extra => unmaintained}/trees/avl/avl.factor | 0 {extra => unmaintained}/trees/avl/summary.txt | 0 {extra => unmaintained}/trees/avl/tags.txt | 0 .../trees/splay/authors.txt | 0 .../trees/splay/splay-docs.factor | 0 .../trees/splay/splay-tests.factor | 0 .../trees/splay/splay.factor | 0 .../trees/splay/summary.txt | 0 {extra => unmaintained}/trees/splay/tags.txt | 0 {extra => unmaintained}/trees/summary.txt | 0 {extra => unmaintained}/trees/tags.txt | 0 .../trees/trees-docs.factor | 0 .../trees/trees-tests.factor | 0 {extra => unmaintained}/trees/trees.factor | 0 {extra => unmaintained}/triggers/authors.txt | 0 {extra => unmaintained}/triggers/summary.txt | 0 .../triggers/triggers-tests.factor | 0 .../triggers/triggers.factor | 0 .../ui => unmaintained/turtle}/authors.txt | 0 {extra => unmaintained}/turtle/turtle.factor | 0 285 files changed, 2 insertions(+), 5770 deletions(-) delete mode 100644 extra/generic/lib/lib.factor delete mode 100755 extra/reports/optimizer/optimizer.factor delete mode 100644 extra/turtle/authors.txt rename {extra => unmaintained}/balloon-bomber/authors.txt (100%) rename {extra => unmaintained}/balloon-bomber/balloon-bomber-docs.factor (100%) rename {extra => unmaintained}/balloon-bomber/balloon-bomber.factor (100%) rename {extra => unmaintained}/balloon-bomber/summary.txt (100%) rename {extra => unmaintained}/balloon-bomber/tags.txt (100%) rename {extra => unmaintained}/bunny/authors.txt (100%) rename {extra => unmaintained}/bunny/bun_zipper.ply (100%) rename {extra => unmaintained}/bunny/bunny.factor (100%) rename {extra => unmaintained}/bunny/cel-shaded/cel-shaded.factor (100%) rename {extra => unmaintained}/bunny/deploy.factor (100%) rename {extra => unmaintained}/bunny/fixed-pipeline/fixed-pipeline.factor (100%) rename {extra => unmaintained}/bunny/model/model.factor (97%) rename {extra => unmaintained}/bunny/outlined/outlined.factor (100%) rename {extra => unmaintained}/bunny/summary.txt (100%) rename {extra => unmaintained}/bunny/tags.txt (100%) delete mode 100644 unmaintained/cabal/authors.txt delete mode 100755 unmaintained/cabal/cabal.factor delete mode 100644 unmaintained/cabal/summary.txt delete mode 100644 unmaintained/cabal/ui/authors.txt delete mode 100644 unmaintained/cabal/ui/summary.txt delete mode 100644 unmaintained/cabal/ui/ui.factor rename {extra => unmaintained}/cairo-demo/authors.txt (100%) rename {extra => unmaintained}/cairo-demo/cairo-demo.factor (100%) rename {extra => unmaintained}/cairo/authors.txt (100%) rename {extra => unmaintained}/cairo/cairo.factor (100%) rename {extra => unmaintained}/cairo/ffi/ffi.factor (100%) rename {extra => unmaintained}/cairo/gadgets/gadgets.factor (100%) rename {extra => unmaintained}/cairo/samples/samples.factor (100%) rename {extra => unmaintained}/cairo/summary.txt (100%) rename {extra => unmaintained}/cairo/tags.txt (100%) rename {basis/opengl => unmaintained}/camera/authors.txt (100%) rename {basis/opengl => unmaintained}/camera/camera.factor (100%) rename {extra => unmaintained}/digraphs/authors.txt (100%) rename {extra => unmaintained}/digraphs/digraphs-tests.factor (100%) rename {extra => unmaintained}/digraphs/digraphs.factor (100%) rename {extra => unmaintained}/digraphs/summary.txt (100%) rename {extra => unmaintained}/digraphs/tags.txt (100%) delete mode 100644 unmaintained/enchilada/authors.txt delete mode 100644 unmaintained/enchilada/enchilada-tests.factor delete mode 100644 unmaintained/enchilada/enchilada.factor delete mode 100644 unmaintained/enchilada/engine/engine.factor delete mode 100644 unmaintained/enchilada/parser/parser.factor delete mode 100644 unmaintained/enchilada/printer/printer.factor delete mode 100644 unmaintained/enchilada/summary.txt delete mode 100644 unmaintained/enchilada/tags.txt delete mode 100644 unmaintained/furnace-onigiri/load.factor delete mode 100644 unmaintained/furnace-onigiri/onigiri.factor delete mode 100644 unmaintained/furnace-onigiri/onigiri.facts delete mode 100644 unmaintained/furnace-onigiri/onigiri.todo delete mode 100644 unmaintained/furnace-onigiri/resources/onigirihouse.css delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.css delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.js delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.lang.css delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.lang.js delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.math.css delete mode 100644 unmaintained/furnace-onigiri/resources/wiky/wiky.math.js delete mode 100644 unmaintained/furnace-onigiri/templates/atom.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/entry-edit-plain.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/entry-edit.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/entry-show.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/footer.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/header.furnace delete mode 100644 unmaintained/furnace-onigiri/templates/sitemap.furnace rename {extra => unmaintained}/gap-buffer/authors.txt (100%) rename {extra => unmaintained}/gap-buffer/cursortree/authors.txt (100%) rename {extra => unmaintained}/gap-buffer/cursortree/cursortree-tests.factor (100%) rename {extra => unmaintained}/gap-buffer/cursortree/cursortree.factor (100%) rename {extra => unmaintained}/gap-buffer/cursortree/summary.txt (100%) rename {extra => unmaintained}/gap-buffer/gap-buffer-tests.factor (100%) rename {extra => unmaintained}/gap-buffer/gap-buffer.factor (100%) rename {extra => unmaintained}/gap-buffer/summary.txt (100%) rename {extra => unmaintained}/gap-buffer/tags.txt (100%) rename {extra => unmaintained}/graphics/authors.txt (100%) rename {extra => unmaintained}/graphics/bitmap/authors.txt (100%) rename {extra => unmaintained}/graphics/bitmap/bitmap.factor (100%) rename {extra => unmaintained}/graphics/bitmap/test-images/1bit.bmp (100%) rename {extra => unmaintained}/graphics/bitmap/test-images/rgb4bit.bmp (100%) rename {extra => unmaintained}/graphics/bitmap/test-images/rgb8bit.bmp (100%) rename {extra => unmaintained}/graphics/bitmap/test-images/thiswayup24.bmp (100%) rename {extra => unmaintained}/graphics/tags.txt (100%) rename {extra => unmaintained}/graphics/viewer/authors.txt (100%) rename {extra => unmaintained}/graphics/viewer/viewer.factor (100%) delete mode 100644 unmaintained/irc/irc-client.factor delete mode 100644 unmaintained/irc/load.factor delete mode 100644 unmaintained/isequences/authors.txt delete mode 100644 unmaintained/isequences/base/base.factor delete mode 100644 unmaintained/isequences/interface/interface-docs.factor delete mode 100644 unmaintained/isequences/interface/interface.factor delete mode 100644 unmaintained/isequences/isequences-tests.factor delete mode 100644 unmaintained/isequences/isequences.factor delete mode 100644 unmaintained/isequences/ops/cache/cache.factor delete mode 100644 unmaintained/isequences/ops/divide/divide.factor delete mode 100644 unmaintained/isequences/ops/iota/iota.factor delete mode 100644 unmaintained/isequences/ops/match/match.factor delete mode 100644 unmaintained/isequences/ops/maximum/maximum.factor delete mode 100644 unmaintained/isequences/ops/minimum/minimum.factor delete mode 100644 unmaintained/isequences/ops/modulus/modulus.factor delete mode 100644 unmaintained/isequences/ops/multiply/multiply.factor delete mode 100644 unmaintained/isequences/ops/ops.factor delete mode 100644 unmaintained/isequences/ops/sort/sort.factor delete mode 100644 unmaintained/isequences/ops/wipe/wipe.factor delete mode 100644 unmaintained/isequences/summary.txt delete mode 100644 unmaintained/isequences/tags.txt rename {extra => unmaintained}/jamshred/authors.txt (100%) rename {extra => unmaintained}/jamshred/deploy.factor (100%) rename {extra => unmaintained}/jamshred/game/authors.txt (100%) rename {extra => unmaintained}/jamshred/game/game.factor (100%) rename {extra => unmaintained}/jamshred/gl/authors.txt (100%) rename {extra => unmaintained}/jamshred/gl/gl.factor (100%) rename {extra => unmaintained}/jamshred/jamshred.factor (100%) rename {extra => unmaintained}/jamshred/log/log.factor (100%) rename {extra => unmaintained}/jamshred/oint/authors.txt (100%) rename {extra => unmaintained}/jamshred/oint/oint-tests.factor (100%) rename {extra => unmaintained}/jamshred/oint/oint.factor (100%) rename {extra => unmaintained}/jamshred/player/authors.txt (100%) rename {extra => unmaintained}/jamshred/player/player.factor (100%) rename {extra => unmaintained}/jamshred/sound/bang.wav (100%) rename {extra => unmaintained}/jamshred/sound/sound.factor (100%) rename {extra => unmaintained}/jamshred/summary.txt (100%) rename {extra => unmaintained}/jamshred/tags.txt (100%) rename {extra => unmaintained}/jamshred/tunnel/authors.txt (100%) rename {extra => unmaintained}/jamshred/tunnel/tunnel-tests.factor (100%) rename {extra => unmaintained}/jamshred/tunnel/tunnel.factor (100%) delete mode 100644 unmaintained/lambda/TODO.txt delete mode 100644 unmaintained/lambda/core.factor delete mode 100644 unmaintained/lambda/lambda.factor delete mode 100644 unmaintained/lambda/load.factor delete mode 100644 unmaintained/lambda/nodes.factor delete mode 100644 unmaintained/lambda/parser.factor delete mode 100644 unmaintained/lambda/test/lambda.factor delete mode 100644 unmaintained/lisp/README delete mode 100644 unmaintained/lisp/authors.txt delete mode 100644 unmaintained/lisp/lexer/lexer.factor delete mode 100644 unmaintained/lisp/lisp.factor delete mode 100644 unmaintained/lisp/listener/listener.factor delete mode 100644 unmaintained/lisp/listener/mod/mod.factor delete mode 100644 unmaintained/lisp/parser/mod/mod.factor delete mode 100644 unmaintained/lisp/summary.txt delete mode 100644 unmaintained/lisp/syntax/syntax.factor delete mode 100644 unmaintained/lisp/tags.txt rename {extra/generic/lib => unmaintained/lsys}/authors.txt (100%) mode change 100755 => 100644 rename {extra/lsys => unmaintained/lsys/strings}/authors.txt (100%) mode change 100644 => 100755 rename {extra/lsys/strings => unmaintained/lsys/strings/interpret}/authors.txt (100%) rename {extra => unmaintained}/lsys/strings/interpret/interpret.factor (100%) rename {extra/lsys/strings/interpret => unmaintained/lsys/strings/rewrite}/authors.txt (100%) rename {extra => unmaintained}/lsys/strings/rewrite/rewrite.factor (100%) rename {extra => unmaintained}/lsys/strings/strings.factor (100%) rename {extra => unmaintained}/lsys/summary.txt (100%) rename {extra => unmaintained}/lsys/tags.txt (100%) rename {extra/lsys/strings/rewrite => unmaintained/lsys/tortoise}/authors.txt (100%) rename {extra/lsys/tortoise => unmaintained/lsys/tortoise/graphics}/authors.txt (100%) rename {extra => unmaintained}/lsys/tortoise/graphics/graphics.factor (100%) rename {extra => unmaintained}/lsys/tortoise/tortoise.factor (100%) rename {extra/lsys/tortoise/graphics => unmaintained/lsys/ui}/authors.txt (100%) rename {extra => unmaintained}/lsys/ui/deploy.factor (100%) rename {extra => unmaintained}/lsys/ui/tags.txt (100%) rename {extra => unmaintained}/lsys/ui/ui.factor (100%) rename {extra => unmaintained}/lunar-rescue/authors.txt (100%) rename {extra => unmaintained}/lunar-rescue/lunar-rescue-docs.factor (100%) rename {extra => unmaintained}/lunar-rescue/lunar-rescue.factor (100%) rename {extra => unmaintained}/lunar-rescue/summary.txt (100%) rename {extra => unmaintained}/lunar-rescue/tags.txt (100%) delete mode 100755 unmaintained/network-clipboard/authors.txt delete mode 100755 unmaintained/network-clipboard/network-clipboard.factor rename {extra => unmaintained}/ogg/authors.txt (100%) rename {extra => unmaintained}/ogg/ogg.factor (100%) rename {extra => unmaintained}/ogg/player/authors.txt (100%) rename {extra => unmaintained}/ogg/player/player.factor (100%) rename {extra => unmaintained}/ogg/player/summary.txt (100%) rename {extra => unmaintained}/ogg/player/tags.txt (100%) rename {extra => unmaintained}/ogg/summary.txt (100%) rename {extra => unmaintained}/ogg/tags.txt (100%) rename {extra => unmaintained}/ogg/theora/authors.txt (100%) rename {extra => unmaintained}/ogg/theora/summary.txt (100%) rename {extra => unmaintained}/ogg/theora/tags.txt (100%) rename {extra => unmaintained}/ogg/theora/theora.factor (100%) rename {extra => unmaintained}/ogg/vorbis/authors.txt (100%) rename {extra => unmaintained}/ogg/vorbis/summary.txt (100%) rename {extra => unmaintained}/ogg/vorbis/tags.txt (100%) rename {extra => unmaintained}/ogg/vorbis/vorbis.factor (100%) rename {extra => unmaintained}/pango/cairo/cairo.factor (100%) rename {extra => unmaintained}/pango/cairo/gadgets/gadgets.factor (100%) rename {extra => unmaintained}/pango/cairo/samples/samples.factor (100%) rename {extra => unmaintained}/pango/fonts/fonts.factor (100%) rename {extra => unmaintained}/pango/ft2/ft2.factor (100%) rename {extra => unmaintained}/pango/ft2/gadgets/gadgets.factor (100%) rename {extra => unmaintained}/pango/gadgets/gadgets.factor (100%) rename {extra => unmaintained}/pango/layouts/layouts.factor (100%) rename {extra => unmaintained}/pango/pango.factor (100%) delete mode 100644 unmaintained/regexp2/regexp2-tests.factor delete mode 100644 unmaintained/regexp2/regexp2.factor delete mode 100644 unmaintained/regexp4/regexp4-tests.factor delete mode 100644 unmaintained/regexp4/regexp4.factor delete mode 100644 unmaintained/scaffold/crud-templates/edit.furnace delete mode 100644 unmaintained/scaffold/crud-templates/list.furnace delete mode 100644 unmaintained/scaffold/crud-templates/show.furnace delete mode 100644 unmaintained/scaffold/scaffold.factor rename {extra => unmaintained}/semantic-db/authors.txt (100%) rename {extra => unmaintained}/semantic-db/semantic-db-tests.factor (100%) rename {extra => unmaintained}/semantic-db/semantic-db.factor (100%) delete mode 100644 unmaintained/shufflers/authors.txt delete mode 100644 unmaintained/shufflers/shufflers-docs.factor delete mode 100644 unmaintained/shufflers/shufflers-tests.factor delete mode 100644 unmaintained/shufflers/shufflers.factor delete mode 100644 unmaintained/shufflers/summary.txt delete mode 100644 unmaintained/shufflers/tags.txt rename {extra => unmaintained}/space-invaders/authors.txt (100%) rename {extra => unmaintained}/space-invaders/resources/BaseHit.wav (100%) rename {extra => unmaintained}/space-invaders/resources/InvHit.Wav (100%) rename {extra => unmaintained}/space-invaders/resources/Shot.wav (100%) rename {extra => unmaintained}/space-invaders/resources/Ufo.wav (100%) rename {extra => unmaintained}/space-invaders/resources/UfoHit.wav (100%) rename {extra => unmaintained}/space-invaders/resources/Walk1.wav (100%) rename {extra => unmaintained}/space-invaders/resources/Walk2.wav (100%) rename {extra => unmaintained}/space-invaders/resources/Walk3.wav (100%) rename {extra => unmaintained}/space-invaders/resources/Walk4.wav (100%) rename {extra => unmaintained}/space-invaders/resources/invaders.rom (100%) rename {extra => unmaintained}/space-invaders/space-invaders-docs.factor (100%) rename {extra => unmaintained}/space-invaders/space-invaders.factor (100%) rename {extra => unmaintained}/space-invaders/summary.txt (100%) rename {extra => unmaintained}/space-invaders/tags.txt (100%) rename {extra => unmaintained}/tangle/authors.txt (100%) rename {extra => unmaintained}/tangle/html/html-tests.factor (100%) rename {extra => unmaintained}/tangle/html/html.factor (100%) rename {extra => unmaintained}/tangle/menu/menu.factor (100%) rename {extra => unmaintained}/tangle/page/page.factor (100%) rename {extra => unmaintained}/tangle/path/path.factor (100%) rename {extra => unmaintained}/tangle/resources/jquery-1.2.3.min.js (100%) rename {extra => unmaintained}/tangle/resources/weave.html (100%) rename {extra => unmaintained}/tangle/resources/weave.js (100%) rename {extra => unmaintained}/tangle/sandbox/sandbox.factor (100%) rename {extra => unmaintained}/tangle/summary.txt (100%) rename {extra => unmaintained}/tangle/tangle-tests.factor (100%) rename {extra => unmaintained}/tangle/tangle.factor (100%) rename {extra => unmaintained}/taxes/authors.txt (100%) rename {extra => unmaintained}/taxes/summary.txt (100%) rename {extra => unmaintained}/taxes/tags.txt (100%) rename {extra => unmaintained}/taxes/taxes-tests.factor (100%) rename {extra => unmaintained}/taxes/taxes.factor (100%) rename {extra => unmaintained}/tetris/README.txt (100%) rename {extra => unmaintained}/tetris/authors.txt (100%) rename {extra => unmaintained}/tetris/board/authors.txt (100%) rename {extra => unmaintained}/tetris/board/board-tests.factor (100%) rename {extra => unmaintained}/tetris/board/board.factor (100%) rename {extra => unmaintained}/tetris/deploy.factor (100%) rename {extra => unmaintained}/tetris/game/authors.txt (100%) rename {extra => unmaintained}/tetris/game/game-tests.factor (100%) rename {extra => unmaintained}/tetris/game/game.factor (100%) rename {extra => unmaintained}/tetris/gl/authors.txt (100%) rename {extra => unmaintained}/tetris/gl/gl.factor (100%) rename {extra => unmaintained}/tetris/piece/authors.txt (100%) rename {extra => unmaintained}/tetris/piece/piece-tests.factor (100%) rename {extra => unmaintained}/tetris/piece/piece.factor (100%) rename {extra => unmaintained}/tetris/summary.txt (100%) rename {extra => unmaintained}/tetris/tags.txt (100%) rename {extra => unmaintained}/tetris/tetris.factor (100%) rename {extra => unmaintained}/tetris/tetromino/authors.txt (100%) rename {extra => unmaintained}/tetris/tetromino/tetromino.factor (100%) rename {extra => unmaintained}/trees/authors.txt (100%) rename {extra => unmaintained}/trees/avl/authors.txt (100%) rename {extra => unmaintained}/trees/avl/avl-docs.factor (100%) rename {extra => unmaintained}/trees/avl/avl-tests.factor (100%) rename {extra => unmaintained}/trees/avl/avl.factor (100%) rename {extra => unmaintained}/trees/avl/summary.txt (100%) rename {extra => unmaintained}/trees/avl/tags.txt (100%) rename {extra => unmaintained}/trees/splay/authors.txt (100%) rename {extra => unmaintained}/trees/splay/splay-docs.factor (100%) rename {extra => unmaintained}/trees/splay/splay-tests.factor (100%) rename {extra => unmaintained}/trees/splay/splay.factor (100%) rename {extra => unmaintained}/trees/splay/summary.txt (100%) rename {extra => unmaintained}/trees/splay/tags.txt (100%) rename {extra => unmaintained}/trees/summary.txt (100%) rename {extra => unmaintained}/trees/tags.txt (100%) rename {extra => unmaintained}/trees/trees-docs.factor (100%) rename {extra => unmaintained}/trees/trees-tests.factor (100%) rename {extra => unmaintained}/trees/trees.factor (100%) rename {extra => unmaintained}/triggers/authors.txt (100%) rename {extra => unmaintained}/triggers/summary.txt (100%) rename {extra => unmaintained}/triggers/triggers-tests.factor (100%) rename {extra => unmaintained}/triggers/triggers.factor (100%) rename {extra/lsys/ui => unmaintained/turtle}/authors.txt (100%) mode change 100755 => 100644 rename {extra => unmaintained}/turtle/turtle.factor (100%) diff --git a/extra/generic/lib/lib.factor b/extra/generic/lib/lib.factor deleted file mode 100644 index 975a47e93c..0000000000 --- a/extra/generic/lib/lib.factor +++ /dev/null @@ -1,6 +0,0 @@ - -USING: kernel generic sequences ; - -IN: generic.lib - -: chain ( seq -- object ) unclip swap [ tuck set-delegate ] each ; \ No newline at end of file diff --git a/extra/reports/optimizer/optimizer.factor b/extra/reports/optimizer/optimizer.factor deleted file mode 100755 index b51fa5c8ee..0000000000 --- a/extra/reports/optimizer/optimizer.factor +++ /dev/null @@ -1,44 +0,0 @@ -! Copyright (C) 2008 Slava Pestov. -! See http://factorcode.org/license.txt for BSD license. -USING: accessors assocs words sequences arrays compiler -tools.time io.styles io prettyprint vocabs kernel sorting -generator optimizer math math.order math.statistics combinators -optimizer.debugger ; -IN: report.optimizer - -: table. ( alist -- ) - 20 short tail* - standard-table-style - [ - [ [ [ pprint-cell ] each ] with-row ] each - ] tabular-output ; - -: results ( results quot title -- ) - print - [ second ] prepose - [ [ compare ] curry sort table. ] - [ - map - [ "Mean: " write mean >float . ] - [ "Median: " write median >float . ] - [ "Standard deviation: " write std >float . ] - tri - ] 2bi ; inline - -: optimization-passes ( word -- n ) - word-dataflow nip 1 count-optimization-passes nip ; - -: optimizer-measurements ( -- alist ) - all-words [ compiled>> ] filter - [ dup [ optimization-passes ] benchmark 2array ] { } map>assoc ; - -: optimizer-measurements. ( alist -- ) - { - [ [ first ] "Optimizer passes:" results ] - [ [ second ] "Compile times:" results ] - } cleave ; - -: optimizer-report ( -- ) - optimizer-measurements optimizer-measurements. ; - -MAIN: optimizer-report diff --git a/extra/turtle/authors.txt b/extra/turtle/authors.txt deleted file mode 100644 index 6cfd5da273..0000000000 --- a/extra/turtle/authors.txt +++ /dev/null @@ -1 +0,0 @@ -Eduardo Cavazos diff --git a/extra/balloon-bomber/authors.txt b/unmaintained/balloon-bomber/authors.txt similarity index 100% rename from extra/balloon-bomber/authors.txt rename to unmaintained/balloon-bomber/authors.txt diff --git a/extra/balloon-bomber/balloon-bomber-docs.factor b/unmaintained/balloon-bomber/balloon-bomber-docs.factor similarity index 100% rename from extra/balloon-bomber/balloon-bomber-docs.factor rename to unmaintained/balloon-bomber/balloon-bomber-docs.factor diff --git a/extra/balloon-bomber/balloon-bomber.factor b/unmaintained/balloon-bomber/balloon-bomber.factor similarity index 100% rename from extra/balloon-bomber/balloon-bomber.factor rename to unmaintained/balloon-bomber/balloon-bomber.factor diff --git a/extra/balloon-bomber/summary.txt b/unmaintained/balloon-bomber/summary.txt similarity index 100% rename from extra/balloon-bomber/summary.txt rename to unmaintained/balloon-bomber/summary.txt diff --git a/extra/balloon-bomber/tags.txt b/unmaintained/balloon-bomber/tags.txt similarity index 100% rename from extra/balloon-bomber/tags.txt rename to unmaintained/balloon-bomber/tags.txt diff --git a/extra/bunny/authors.txt b/unmaintained/bunny/authors.txt similarity index 100% rename from extra/bunny/authors.txt rename to unmaintained/bunny/authors.txt diff --git a/extra/bunny/bun_zipper.ply b/unmaintained/bunny/bun_zipper.ply similarity index 100% rename from extra/bunny/bun_zipper.ply rename to unmaintained/bunny/bun_zipper.ply diff --git a/extra/bunny/bunny.factor b/unmaintained/bunny/bunny.factor similarity index 100% rename from extra/bunny/bunny.factor rename to unmaintained/bunny/bunny.factor diff --git a/extra/bunny/cel-shaded/cel-shaded.factor b/unmaintained/bunny/cel-shaded/cel-shaded.factor similarity index 100% rename from extra/bunny/cel-shaded/cel-shaded.factor rename to unmaintained/bunny/cel-shaded/cel-shaded.factor diff --git a/extra/bunny/deploy.factor b/unmaintained/bunny/deploy.factor similarity index 100% rename from extra/bunny/deploy.factor rename to unmaintained/bunny/deploy.factor diff --git a/extra/bunny/fixed-pipeline/fixed-pipeline.factor b/unmaintained/bunny/fixed-pipeline/fixed-pipeline.factor similarity index 100% rename from extra/bunny/fixed-pipeline/fixed-pipeline.factor rename to unmaintained/bunny/fixed-pipeline/fixed-pipeline.factor diff --git a/extra/bunny/model/model.factor b/unmaintained/bunny/model/model.factor similarity index 97% rename from extra/bunny/model/model.factor rename to unmaintained/bunny/model/model.factor index f64030ff70..376cd3feae 100755 --- a/extra/bunny/model/model.factor +++ b/unmaintained/bunny/model/model.factor @@ -82,7 +82,7 @@ M: bunny-dlist bunny-geom bunny-dlist-list glCallList ; M: bunny-buffers bunny-geom - dup { array>> element-array>> } get-slots [ + dup [ array>> ] [ element-array>> ] bi [ { GL_VERTEX_ARRAY GL_NORMAL_ARRAY } [ GL_FLOAT 0 0 buffer-offset glNormalPointer [ @@ -99,7 +99,7 @@ M: bunny-dlist dispose list>> delete-dlist ; M: bunny-buffers dispose - { array>> element-array>> } get-slots + [ array>> ] [ element-array>> ] bi delete-gl-buffer delete-gl-buffer ; : ( model -- geom ) diff --git a/extra/bunny/outlined/outlined.factor b/unmaintained/bunny/outlined/outlined.factor similarity index 100% rename from extra/bunny/outlined/outlined.factor rename to unmaintained/bunny/outlined/outlined.factor diff --git a/extra/bunny/summary.txt b/unmaintained/bunny/summary.txt similarity index 100% rename from extra/bunny/summary.txt rename to unmaintained/bunny/summary.txt diff --git a/extra/bunny/tags.txt b/unmaintained/bunny/tags.txt similarity index 100% rename from extra/bunny/tags.txt rename to unmaintained/bunny/tags.txt diff --git a/unmaintained/cabal/authors.txt b/unmaintained/cabal/authors.txt deleted file mode 100644 index 6cfd5da273..0000000000 --- a/unmaintained/cabal/authors.txt +++ /dev/null @@ -1 +0,0 @@ -Eduardo Cavazos diff --git a/unmaintained/cabal/cabal.factor b/unmaintained/cabal/cabal.factor deleted file mode 100755 index 0ad8465498..0000000000 --- a/unmaintained/cabal/cabal.factor +++ /dev/null @@ -1,94 +0,0 @@ - -USING: kernel - io - io.streams.duplex - io.sockets - io.server - combinators continuations - namespaces generic threads sequences arrays vars ; - -IN: cabal - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -TUPLE: user name ; - -: ( client -- user ) -user construct-empty -tuck set-delegate -dup [ "name: " write flush readln ] with-stream* over set-user-name ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -VAR: users - -: init-users ( -- ) V{ } clone >users ; - -: show-users ( -- ) users> [ user-name print ] each flush ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -VAR: conversation - -: init-conversation ( -- ) V{ } clone >conversation ; - -: show-conversation ( -- ) conversation> [ print ] each flush ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -VARS: input user ; - -: ((send-input)) ( other -- ) [ input> print flush ] with-stream* ; - -: (send-input) ( other -- ) -[ ((send-input)) ] catch [ print dup dispose users> delete ] when ; - -: send-input ( other -- ) -dup duplex-stream-closed? [ users> delete ] [ (send-input) ] if ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -: tag-input ( -- ) user> user-name ": " input> 3append >input ; - -: log-input ( -- ) input> conversation> push ; - -! : send-message ( -- ) tag-input users> >array [ send-input ] each ; - -: send-message ( -- ) tag-input log-input users> >array [ send-input ] each ; - -: handle-user-loop ( -- ) -readln >input -{ { [ input> f eq? ] [ user> users> delete ] } - { [ input> "/log" = ] [ show-conversation handle-user-loop ] } - { [ input> "/users" = ] [ show-users handle-user-loop ] } - { [ t ] [ send-message handle-user-loop ] } } -cond ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -! : handle-client ( client -- ) dup users> push -! dup [ >user [ handle-user-loop ] with-stream* ] with-scope ; - -: handle-client ( client -- ) - dup users> push -dup [ >user [ handle-user-loop ] with-stream ] with-scope ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -: accept-client-loop ( server -- ) -[ accept [ handle-client ] curry in-thread ] keep -accept-client-loop ; - -! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -! : start-cabal ( -- ) -! init-users -! init-conversation -! 8000 accept-client-loop ; - -: start-cabal ( -- ) -init-users -init-conversation -8000 internet-server [ inet4? ] find nip accept-client-loop ; - -MAIN: start-cabal \ No newline at end of file diff --git a/unmaintained/cabal/summary.txt b/unmaintained/cabal/summary.txt deleted file mode 100644 index 881f8367a1..0000000000 --- a/unmaintained/cabal/summary.txt +++ /dev/null @@ -1 +0,0 @@ -Minimalist chat server diff --git a/unmaintained/cabal/ui/authors.txt b/unmaintained/cabal/ui/authors.txt deleted file mode 100644 index c7091ca9e6..0000000000 --- a/unmaintained/cabal/ui/authors.txt +++ /dev/null @@ -1,2 +0,0 @@ -Matthew Willis -Eduardo Cavazos diff --git a/unmaintained/cabal/ui/summary.txt b/unmaintained/cabal/ui/summary.txt deleted file mode 100644 index 12c0170a5d..0000000000 --- a/unmaintained/cabal/ui/summary.txt +++ /dev/null @@ -1 +0,0 @@ -Connects to a cabal server diff --git a/unmaintained/cabal/ui/ui.factor b/unmaintained/cabal/ui/ui.factor deleted file mode 100644 index 70999c32eb..0000000000 --- a/unmaintained/cabal/ui/ui.factor +++ /dev/null @@ -1,52 +0,0 @@ -USING: kernel - io - io.streams.duplex - io.sockets - namespaces sequences math math.parser threads quotations splitting - ui - ui.gadgets - ui.gadgets.panes - ui.gadgets.scrollers - ui.gadgets.tracks - ui.tools.interactor ; - -IN: cabal.ui - -TUPLE: cabal-gadget input output ; - -: ( -- gadget ) - gadget get cabal-gadget-output ; - -: ( -- gadget ) -cabal-gadget construct-empty -dup -[ over dupd set-cabal-gadget-output 5/6 track, - over dupd set-cabal-gadget-input 1/6 track, - drop ] -curry -{ 0 1 } -build-track ; - -M: cabal-gadget pref-dim* drop { 550 650 } ; - -: cabal-stream ( cabal -- stream ) - dup cabal-gadget-input swap cabal-gadget-output - ; - -: incoming-loop ( stream -- ) dup stream-readln print incoming-loop ; - -: outgoing-loop ( stream -- ) -readln over stream-print dup stream-flush outgoing-loop ; - -: cabal-thread ( -- ) - "cabal://" write readln - ":" split1 string>number - [ outgoing-loop ] in-thread incoming-loop ; - -: cabal-client ( -- ) - dup "Cabal Client" open-window - cabal-stream [ [ cabal-thread ] with-stream ] in-thread drop ; - -: cabal-client* ( -- ) [ cabal-client ] with-ui ; - -MAIN: cabal-client* \ No newline at end of file diff --git a/extra/cairo-demo/authors.txt b/unmaintained/cairo-demo/authors.txt similarity index 100% rename from extra/cairo-demo/authors.txt rename to unmaintained/cairo-demo/authors.txt diff --git a/extra/cairo-demo/cairo-demo.factor b/unmaintained/cairo-demo/cairo-demo.factor similarity index 100% rename from extra/cairo-demo/cairo-demo.factor rename to unmaintained/cairo-demo/cairo-demo.factor diff --git a/extra/cairo/authors.txt b/unmaintained/cairo/authors.txt similarity index 100% rename from extra/cairo/authors.txt rename to unmaintained/cairo/authors.txt diff --git a/extra/cairo/cairo.factor b/unmaintained/cairo/cairo.factor similarity index 100% rename from extra/cairo/cairo.factor rename to unmaintained/cairo/cairo.factor diff --git a/extra/cairo/ffi/ffi.factor b/unmaintained/cairo/ffi/ffi.factor similarity index 100% rename from extra/cairo/ffi/ffi.factor rename to unmaintained/cairo/ffi/ffi.factor diff --git a/extra/cairo/gadgets/gadgets.factor b/unmaintained/cairo/gadgets/gadgets.factor similarity index 100% rename from extra/cairo/gadgets/gadgets.factor rename to unmaintained/cairo/gadgets/gadgets.factor diff --git a/extra/cairo/samples/samples.factor b/unmaintained/cairo/samples/samples.factor similarity index 100% rename from extra/cairo/samples/samples.factor rename to unmaintained/cairo/samples/samples.factor diff --git a/extra/cairo/summary.txt b/unmaintained/cairo/summary.txt similarity index 100% rename from extra/cairo/summary.txt rename to unmaintained/cairo/summary.txt diff --git a/extra/cairo/tags.txt b/unmaintained/cairo/tags.txt similarity index 100% rename from extra/cairo/tags.txt rename to unmaintained/cairo/tags.txt diff --git a/basis/opengl/camera/authors.txt b/unmaintained/camera/authors.txt similarity index 100% rename from basis/opengl/camera/authors.txt rename to unmaintained/camera/authors.txt diff --git a/basis/opengl/camera/camera.factor b/unmaintained/camera/camera.factor similarity index 100% rename from basis/opengl/camera/camera.factor rename to unmaintained/camera/camera.factor diff --git a/extra/digraphs/authors.txt b/unmaintained/digraphs/authors.txt similarity index 100% rename from extra/digraphs/authors.txt rename to unmaintained/digraphs/authors.txt diff --git a/extra/digraphs/digraphs-tests.factor b/unmaintained/digraphs/digraphs-tests.factor similarity index 100% rename from extra/digraphs/digraphs-tests.factor rename to unmaintained/digraphs/digraphs-tests.factor diff --git a/extra/digraphs/digraphs.factor b/unmaintained/digraphs/digraphs.factor similarity index 100% rename from extra/digraphs/digraphs.factor rename to unmaintained/digraphs/digraphs.factor diff --git a/extra/digraphs/summary.txt b/unmaintained/digraphs/summary.txt similarity index 100% rename from extra/digraphs/summary.txt rename to unmaintained/digraphs/summary.txt diff --git a/extra/digraphs/tags.txt b/unmaintained/digraphs/tags.txt similarity index 100% rename from extra/digraphs/tags.txt rename to unmaintained/digraphs/tags.txt diff --git a/unmaintained/enchilada/authors.txt b/unmaintained/enchilada/authors.txt deleted file mode 100644 index bfc196ff8f..0000000000 --- a/unmaintained/enchilada/authors.txt +++ /dev/null @@ -1 +0,0 @@ -Robbert van Dalen diff --git a/unmaintained/enchilada/enchilada-tests.factor b/unmaintained/enchilada/enchilada-tests.factor deleted file mode 100644 index af24e36fe1..0000000000 --- a/unmaintained/enchilada/enchilada-tests.factor +++ /dev/null @@ -1,6 +0,0 @@ -! Copyright (C) 2007 Robbert van Dalen. -! See http://factorcode.org/license.txt for BSD license. - -USING: kernel sequences enchilada strings ; -IN: temporary - diff --git a/unmaintained/enchilada/enchilada.factor b/unmaintained/enchilada/enchilada.factor deleted file mode 100644 index 9568fa8805..0000000000 --- a/unmaintained/enchilada/enchilada.factor +++ /dev/null @@ -1,12 +0,0 @@ -! Copyright (C) 2007 Robbert van Dalen. -! See http://factorcode.org/license.txt for BSD license. - -IN: enchilada -USING: generic kernel enchilada.engine enchilada.parser enchilada.printer prettyprint ; - - -: (e-eval) ( e-expression -- ) - dup e-reducible? [ dup e-print . e-reduce (e-eval) ] [ e-print . ] if ; - -: e-eval ( string -- ) - e-parse (e-eval) ; diff --git a/unmaintained/enchilada/engine/engine.factor b/unmaintained/enchilada/engine/engine.factor deleted file mode 100644 index 8c44d16b1b..0000000000 --- a/unmaintained/enchilada/engine/engine.factor +++ /dev/null @@ -1,322 +0,0 @@ -! Copyright (C) 2007 Robbert van Dalen. -! See http://factorcode.org/license.txt for BSD license. - -IN: enchilada.engine -USING: generic kernel math sequences isequences.interface isequences.base isequences.ops ; - -! Provides Enchilada's rewriting expression engine. -! - -GENERIC: !! ( list -- list ) -GENERIC: \\ ( list -- list ) - -GENERIC: e-reducible? ( e -- ? ) -GENERIC: e-dyadic? ( o -- ? ) -GENERIC: e-operator? ( o -- ? ) -GENERIC: e-list? ( o -- ? ) -GENERIC: e-symbol? ( o -- ? ) - -GENERIC: e-m-operate ( v op -- e ) -GENERIC: e-d-operate ( v1 v2 op -- e ) - -GENERIC: e-reduce ( e -- e ) -GENERIC: free-symbols ( s -- symbols ) - -TUPLE: ireplace from to seq ; - -: unpack-ireplace ( ireplace -- from to seq ) - dup ireplace-from swap dup ireplace-to swap ireplace-seq ; inline - -GENERIC: e-replace ( from to sequence -- s ) - -: (ireplace1) ( from to seq -- ireplace ) - dup is-atom? - [ pick over i-cmp 0 = [ drop nip ] [ nip nip ] if ] - [ ] if ; - -: ( from to seq -- ireplace ) - dup i-length dup 0 = - [ 3drop drop 0 ] - [ 1 = [ (ireplace1) ] [ ] if ] - if ; - -: ireplace-i-at ( s i -- v ) - swap dup ireplace-seq rot i-at dup >r swap dup ireplace-from rot i-cmp 0 = - [ r> drop ireplace-to ] - [ dup ireplace-from swap ireplace-to r> e-replace ] - if ; - -M: object e-replace ; -M: integer e-replace -rot 2drop ; - -M: ireplace i-length ireplace-seq i-length ; -M: ireplace i-at ireplace-i-at ; -M: ireplace ileft unpack-ireplace ileft e-replace ; -M: ireplace iright unpack-ireplace iright e-replace ; -M: ireplace ihead (ihead) ; -M: ireplace itail (itail) ; -M: ireplace $$ unpack-ireplace [ $$ ] 2apply rot $$ quick-hash quick-hash ; - -TUPLE: esymbol seq ; - -GENERIC: esymbol/i-cmp ( esymbol s -- i ) - -M: object esymbol/i-cmp 2drop -1 ; -M: esymbol esymbol/i-cmp swap [ esymbol-seq ] 2apply i-cmp ; -M: esymbol object/i-cmp 2drop 1 ; -M: esymbol i-cmp swap esymbol/i-cmp ; - -DEFER: (sunion) - -: (sunion6) ( s1 s2 -- s ) - 2dup [ 0 i-at ] 2apply i-cmp dup zero? - [ 2drop ] [ 0 > [ swap ] when ++ ] if ; inline - -: (sunion5) ( s1 s2 -- s ) - over ileft i-length pick swap i-at icut rot left-right - swap roll (sunion) -rot swap (sunion) ++ ; inline - -: (sunion4) ( s1 s2 -- s ) - 2dup ifirst swap ilast i-cmp dup zero? - [ drop 1 itail ++ ] [ 0 > [ ++ ] [ (sunion5) ] if ] if ; inline - -: (sunion3) ( s1 s2 ls1 ls2 -- s ) - 1 = - [ 1 = [ (sunion6) ] [ (sunion4) ] if ] - [ 1 = [ swap ] when (sunion4) ] if ; inline - -: (sunion2) ( s1 s2 -- s ) - 2dup [ i-length ] 2apply 2dup zero? - [ 3drop drop ] [ zero? [ 2drop nip ] [ (sunion3) ] if ] if ; inline - -: (sunion) ( s1 s2 -- s ) - 2dup eq? [ drop ] [ (sunion2) ] if ; inline - -: s-union ( s1 s2 -- s ) - (sunion) ; inline - -: (free-symbols) ( s -- symbols ) - dup is-atom? - [ dup e-symbol? [ drop 0 ] unless ] - [ 0 i-at free-symbols ] if ; - -M: object free-symbols - dup i-length dup 0 = - [ 2drop 0 ] - [ 1 = [ (free-symbols) ] [ left-right [ free-symbols ] 2apply s-union ] if ] if ; - -M: integer free-symbols drop 0 ; - -M: object !! - dup i-length dup 0 = - [ 2drop 0 ] - [ 1 = [ 0 i-at dup left-side swap right-side [ e-reduce ] 2apply ] [ left-right [ !! ] 2apply ++ ] if ] if ; - -M: integer !! ; - - -: (\\) ( expr -- list ) - dup i-length dup 0 = - [ 2drop 0 ] - [ 1 = [ ] [ left-right [ (\\) ] 2apply ++ ] if ] if ; - -M: object \\ - dup i-length dup 0 = - [ 2drop 0 ] - [ 1 = [ 0 i-at left-side (\\) ] [ left-right [ \\ ] 2apply ++ ] if ] if ; -M: integer \\ ; - -TUPLE: emacro symbols expr eager? ; - -: symbol-list? ( symbols -- ? ) - i-sort dup free-symbols i-cmp 0 = ; inline - -: full-reduce ( expr -- expr ) - dup e-reducible? [ e-reduce full-reduce ] when ; - -: ( symbols expr eager? -- e-macro ) - dup [ swap full-reduce swap ] when - >r swap dup symbol-list? [ swap r> ] [ "illegal symbol list" throw ] if ; - -M: emacro free-symbols dup emacro-expr free-symbols swap emacro-symbols i-diff ; - -M: emacro e-replace - pick over [ free-symbols ] 2apply i-intersect i-length 0 = - [ -rot 2drop ] - [ dup >r emacro-expr e-replace r> dup emacro-symbols swap emacro-eager? rot swap ] if ; - -: eflatten ( s -- s ) - dup i-length dup zero? - [ 2drop 0 ] - [ 1 = [ 0 i-at left-side ] [ left-right [ eflatten ] 2apply ++ ] if ] if ; inline - -TUPLE: c-op v d-op ; - -M: object e-operator? drop f ; -M: object e-list? dup e-operator? not swap e-symbol? not and ; -M: object e-symbol? drop f ; -M: object e-dyadic? drop f ; - -M: esymbol e-symbol? drop t ; - -M: c-op e-m-operate - dup c-op-v swap c-op-d-op e-d-operate ; - -TUPLE: .- ; -M: .- e-m-operate drop -- ; -TUPLE: .` ; -M: .` e-m-operate drop `` ; -TUPLE: .$ ; -M: .$ e-m-operate drop $$ ; -TUPLE: .~ ; -M: .~ e-m-operate drop ~~ ; -TUPLE: .: ; -M: .: e-m-operate drop :: ; -TUPLE: .# ; -M: .# e-m-operate drop ## ; -TUPLE: .^ ; -M: .^ e-m-operate drop eflatten ; -TUPLE: .! ; -M: .! e-m-operate drop !! ; -TUPLE: .\ ; -M: .\ e-m-operate drop \\ ; - -TUPLE: .+ ; -M: .+ e-d-operate drop ++ ; -TUPLE: .* ; -M: .* e-d-operate drop ** [ ] 2apply ++ ; -TUPLE: ./ ; -M: ./ e-d-operate drop // [ ] 2apply ++ ; -TUPLE: .& ; -M: .& e-d-operate drop && ; -TUPLE: .| ; -M: .| e-d-operate drop || ; -TUPLE: .< ; -M: .< e-d-operate drop << [ ] 2apply ++ ; -TUPLE: .> ; -M: .> e-d-operate drop >> ; -TUPLE: .@ ; -M: .@ e-d-operate >r swap 0 i-cmp 0 = [ dup eflatten swap ++ r> ++ ] [ r> 2drop 0 ] if ; -TUPLE: .? ; -M: .? e-d-operate drop (i-eq?) [ 1 ] [ 0 ] if ; -TUPLE: .% ; -M: .% e-d-operate drop %% [ ] 2apply ++ ; - -UNION: monadic-class c-op .- .` .$ .~ .: .# .^ .! .\ emacro ; -UNION: dyadic-class .+ .* ./ .& .| .< .> .@ .? .% ; -UNION: operator-class monadic-class dyadic-class ; - -M: operator-class e-operator? drop t ; -M: monadic-class e-dyadic? drop f ; -M: dyadic-class e-dyadic? drop t ; - -DEFER: +e+ - -: (e-reducible?) ( e -- ? ) - left-right 2dup [ e-reducible? ] either? - [ 2drop t ] [ ifirst e-operator? swap ilast e-list? and ] if ; inline - -M: object e-reducible? - dup i-length 1 <= [ drop f ] [ (e-reducible?) ] if ; - -: (e-reduce2) ( e1 e2 -- e ) - 2dup ifirst swap ilast swap e-m-operate - -rot 1 itail swap dup i-length 1- ihead rot ++ swap ++ ; inline - -: (e-reduce) ( e -- e ) - left-right swap dup e-reducible? [ (e-reduce) swap ++ ] - [ swap dup e-reducible? [ (e-reduce) ++ ] [ (e-reduce2) ] if ] if ; inline - -M: object e-reduce - dup e-reducible? [ (e-reduce) ] when ; - -: (+e+2) ( e1 e2 -- e ) - 2dup ifirst swap ilast swap - -rot 1 itail swap dup i-length 1- ihead rot ++ swap ++ ; inline - -: (+e+1) ( e1 e2 -- e ) - 2dup ifirst e-dyadic? swap ilast e-list? and - [ (+e+2) ] [ ++g ] if ; inline - -TUPLE: e-exp expr reducible ; - -M: e-exp e-reducible? e-exp-reducible ; - -: ( s -- e-exp ) - dup e-exp? [ dup e-reducible? ] unless ; inline - -: +e+ ( e1 e2 -- e ) - 2dup [ i-length 1 >= ] both? - [ (+e+1) ] [ ++g ] if ; inline - -: e-ipair ( e1 e2 -- e ) - ; inline - -M: c-op e-replace dup >r c-op-v e-replace r> c-op-d-op ; - - -GENERIC: e-exp/++ ( s e -- e ) -GENERIC: e-exp/ipair ( s e -- e ) - -M: e-exp ++ swap e-exp/++ ; -M: e-exp ipair swap e-exp/ipair ; - -M: object e-exp/++ swap +e+ ; -M: object e-exp/ipair swap e-ipair ; - -M: e-exp e-exp/++ swap +e+ ; -M: e-exp e-exp/ipair swap e-ipair ; -M: e-exp object/++ swap +e+ ; -M: e-exp object/ipair swap e-ipair ; - -M: operator-class ++ +e+ ; - -M: e-exp i-length e-exp-expr i-length ; -M: e-exp i-at swap e-exp-expr swap i-at ; -M: e-exp ileft e-exp-expr ileft ; -M: e-exp iright e-exp-expr iright ; -M: e-exp ihead swap e-exp-expr swap ihead ; -M: e-exp itail swap e-exp-expr swap itail ; -M: e-exp $$ e-exp-expr $$ ; - -M: e-exp e-replace - dup i-length 1 = - [ e-exp-expr e-replace ] - [ 3dup iright e-replace >r ileft e-replace r> ++ ] if ; - -TUPLE: ereplacement from to ; - -: (ereplace) ( symbols from-symbol -- to-symbol ) - esymbol-seq dup ++ dup pick i-intersect i-length zero? - [ nip ] [ (ereplace) ] if ; inline - -: (replacements3) ( symbols from-symbol -- newsymbols replacement ) - 2dup (ereplace) rot over i-union -rot ; inline - -: (replacements2) ( symbols intersect -- replacements ) - dup i-length zero? - [ 2drop 0 ] - [ dup >r ifirst (replacements3) swap r> 1 itail (replacements2) ++ ] if ; - -: replace-s ( s replacements -- s ) - dup i-length dup zero? - [ 2drop ] - [ 1 = [ 0 i-at dup ereplacement-from swap ereplacement-to rot e-replace ] [ left-right >r replace-s r> replace-s ] if ] if ; - -: (replacements) ( value macro -- replacements ) - dup emacro-expr free-symbols swap emacro-symbols -1 ++ - i-intersect tuck swap free-symbols i-intersect (replacements2) ; inline - -: (replace-macro) ( replacements macro -- macro ) - 2dup dup >r emacro-symbols swap replace-s swap emacro-expr rot replace-s r> emacro-eager? ; - -: (eval-macro) ( value macro -- macro ) - dup >r emacro-symbols dup -1 ++ swap ilast rot r> dup >r emacro-expr e-replace r> emacro-eager? ; - -: eval-macro ( value macro -- s ) - 2dup (replacements) swap (replace-macro) (eval-macro) ; - -: emacro-e-m-operate ( value macro -- s ) - eval-macro dup emacro-symbols i-length zero? [ emacro-expr ] when ; - -M: emacro e-m-operate emacro-e-m-operate ; diff --git a/unmaintained/enchilada/parser/parser.factor b/unmaintained/enchilada/parser/parser.factor deleted file mode 100644 index 4001655261..0000000000 --- a/unmaintained/enchilada/parser/parser.factor +++ /dev/null @@ -1,139 +0,0 @@ -! Copyright (C) 2007 Robbert van Dalen. -! See http://factorcode.org/license.txt for BSD license. - -IN: enchilada.parser -USING: strings sequences kernel promises lazy-lists parser-combinators parser-combinators.simple isequences.interface isequences.base enchilada.engine ; - -USE: lazy-lists -USE: parser-combinators - -DEFER: e-expression - -LAZY: e/- ( -- parser ) - "-" token [ drop <.-> ] <@ ; - -LAZY: e/# ( -- parser ) - "#" token [ drop <.#> ] <@ ; - -LAZY: e/^ ( -- parser ) - "^" token [ drop <.^> ] <@ ; - -LAZY: e/` ( -- parser ) - "`" token [ drop <.`> ] <@ ; - -LAZY: e/: ( -- parser ) - ":" token [ drop <.:> ] <@ ; - -LAZY: e/~ ( -- parser ) - "~" token [ drop <.~> ] <@ ; - -LAZY: e/$ ( -- parser ) - "$" token [ drop <.$> ] <@ ; - -LAZY: e/! ( -- parser ) - "!" token [ drop <.!> ] <@ ; - -LAZY: e/\ ( -- parser ) - "\\" token [ drop <.\> ] <@ ; - -LAZY: e/+ ( -- parser ) - "+" token [ drop <.+> ] <@ ; - -LAZY: e/| ( -- parser ) - "|" token [ drop <.|> ] <@ ; - -LAZY: e/& ( -- parser ) - "&" token [ drop <.&> ] <@ ; - -LAZY: e/* ( -- parser ) - "*" token [ drop <.*> ] <@ ; - -LAZY: e// ( -- parser ) - "/" token [ drop <./> ] <@ ; - -LAZY: e/< ( -- parser ) - "<" token [ drop <.<> ] <@ ; - -LAZY: e/> ( -- parser ) - ">" token [ drop <.>> ] <@ ; - -LAZY: e/@ ( -- parser ) - "@" token [ drop <.@> ] <@ ; - -LAZY: e/? ( -- parser ) - "?" token [ drop <.?> ] <@ ; - -LAZY: e/% ( -- parser ) - "%" token [ drop <.%> ] <@ ; - -LAZY: e-monadic ( -- parser ) - e/- e/# <|> e/^ <|> e/` <|> e/: <|> e/~ <|> e/$ <|> e/! <|> e/\ <|> ; - -LAZY: e-dyadic ( -- parser ) - e/+ e/* <|> e/& <|> e/| <|> e// <|> e/< <|> e/> <|> e/@ <|> e/? <|> e/% <|> ; - -LAZY: e-number ( -- parser ) - 'integer' ; - -LAZY: e-letter ( -- parser ) - [ letter? ] satisfy [ 1 swap ] <@ ; - -LAZY: e-digit ( -- parser ) - [ digit? ] satisfy [ 1 swap ] <@ ; - -LAZY: e-alphanumeric-char ( -- parser ) - e-letter e-digit <|> ; - -LAZY: e-alphanumeric-symbol ( -- parser ) - e-letter e-alphanumeric-char <&> [ dup first swap second "" [ append ] reduce append ] <@ ; - -LAZY: e-symbol ( -- parser ) - e-alphanumeric-symbol 'string' <|> sp [ ] <@ ; - -LAZY: e-symbol-list ( -- parser ) - e-symbol [ { } [ ++ ] reduce ] <@ ; - -LAZY: e-macro-expression ( -- parser ) - "=" token "=" token <&> sp e-expression <&> [ dup 1 tail swap first second [ t ] [ f ] if add ] <@ ; - -LAZY: e-macro ( -- parser ) - "{" token sp e-symbol-list &> e-macro-expression <&> "}" token sp <& - [ dup first swap second dup [ first ] [ drop { 0 f } ] if dup first swap second ] <@ ; - -LAZY: e-right-expression ( -- parser ) - "=" token e-expression &> ; - -: create-e-item ( pair -- e-item ) - dup first swap second dup [ first ] [ drop 0 ] if ; - -LAZY: e-item ( -- parser ) -e-expression e-right-expression <&> [ create-e-item ] <@ ; - -LAZY: e-rest ( -- parser ) -";" token sp e-item &> [ { } [ ++ ] reduce ] <@ ; - -LAZY: e-contents ( -- parser ) -e-item e-rest <&> [ dup first swap second ++ ] <@ ; - -LAZY: e-non-empty ( -- parser ) -"[" token e-contents &> "]" token sp <& ; - -LAZY: e-empty ( -- parser ) - "[" token "]" token <&> [ drop 0 ] <@ ; - -LAZY: e-sequence ( -- parser ) - e-empty e-non-empty <|> e-number <|> ; - -LAZY: e-operand ( -- parser ) - "_" token e-sequence <&> [ dup second swap first [ -- ] when ] <@ ; - -LAZY: e-operator ( -- parser ) - e-monadic e-dyadic <|> e-macro <|> ; - -LAZY: e-element ( -- parser ) - e-operator e-operand <|> e-symbol <|> sp ; - -LAZY: e-expression ( -- parser ) - e-element [ { } [ ++ ] reduce ] <@ ; - -: e-parse ( string -- result ) e-expression parse car parse-result-parsed ; diff --git a/unmaintained/enchilada/printer/printer.factor b/unmaintained/enchilada/printer/printer.factor deleted file mode 100644 index 569c71b1eb..0000000000 --- a/unmaintained/enchilada/printer/printer.factor +++ /dev/null @@ -1,71 +0,0 @@ -! Copyright (C) 2007 Robbert van Dalen. -! See http://factorcode.org/license.txt for BSD license. - -IN: enchilada.printer -USING: prettyprint strings generic kernel math math.parser sequences isequences.interface isequences.base enchilada.engine ; - -: s-append ( s1 s2 s3 -- s ) - swap append append ; - -DEFER: e-print -DEFER: l-print - -GENERIC: (e-print) ( op -- string ) - -M: .- (e-print) drop "-" ; -M: .# (e-print) drop "#" ; -M: .$ (e-print) drop "$" ; -M: .^ (e-print) drop "^" ; -M: .` (e-print) drop "`" ; -M: .~ (e-print) drop "~" ; -M: .: (e-print) drop ":" ; -M: .! (e-print) drop "!" ; -M: .\ (e-print) drop "\\" ; - -M: .+ (e-print) drop "+" ; -M: .* (e-print) drop "*" ; -M: ./ (e-print) drop "/" ; -M: .< (e-print) drop "<" ; -M: .> (e-print) drop ">" ; -M: .| (e-print) drop "|" ; -M: .& (e-print) drop "&" ; -M: .@ (e-print) drop "@" ; -M: .? (e-print) drop "?" ; -M: .% (e-print) drop "%" ; - -: (eprint-macro-expr) ( emacro -- string ) - dup emacro-expr dup i-length 0 = - [ 2drop "" ] - [ e-print swap emacro-eager? [ "==" ] [ "=" ] if swap append ] if ; - -: (l-print1) ( e-list -- string ) - 0 i-at dup left-side swap right-side dup 0 = - [ drop dup i-length 0 = [ drop " " ] [ e-print ] if ] [ e-print swap e-print swap "=" s-append ] if ; - -: (l-print0) ( e-list -- string ) - left-right [ l-print ] 2apply ";" s-append ; - -: l-print ( e-list -- string ) - dup i-length dup 0 = - [ 2drop "0" ] [ 1 = [ (l-print1) ] [ (l-print0) ] if ] if ; - -: prefix-neg ( s -- s prefix ) - dup i-length 0 < [ -- "_" ] [ "" ] if ; - -: (e-print3) ( symbol -- string ) - esymbol-seq to-sequence >string ; - -: (e-print2) ( e-list -- string ) - dup integer? [ prefix-neg swap number>string append ] [ prefix-neg "[" append swap l-print "]" append append ] if ; - -: (e-print1) ( e-expression -- string ) - 0 i-at dup e-operator? [ (e-print) ] [ dup e-symbol? [ (e-print3) ] [ (e-print2) ] if ] if ; - -: e-print ( e-expression -- string ) - dup i-length dup 0 = - [ 2drop "" ] - [ 1 = [ (e-print1) ] [ left-right [ e-print ] 2apply " " s-append ] if ] if ; - -M: c-op (e-print) dup c-op-d-op swap c-op-v (e-print2) swap (e-print) " " s-append ; -M: emacro (e-print) "{" swap dup emacro-symbols e-print swap (eprint-macro-expr) "}" append append append ; - diff --git a/unmaintained/enchilada/summary.txt b/unmaintained/enchilada/summary.txt deleted file mode 100644 index 17d5a87279..0000000000 --- a/unmaintained/enchilada/summary.txt +++ /dev/null @@ -1 +0,0 @@ -Enchilada, a concatenative programming language diff --git a/unmaintained/enchilada/tags.txt b/unmaintained/enchilada/tags.txt deleted file mode 100644 index eab42feac7..0000000000 --- a/unmaintained/enchilada/tags.txt +++ /dev/null @@ -1 +0,0 @@ -languages diff --git a/unmaintained/furnace-onigiri/load.factor b/unmaintained/furnace-onigiri/load.factor deleted file mode 100644 index 727eaf7a92..0000000000 --- a/unmaintained/furnace-onigiri/load.factor +++ /dev/null @@ -1,12 +0,0 @@ -! Copyright (C) 2006 Matthew Willis. All Rights Reserved. -! See http://factorcode.org/license.txt for BSD license. -! - -REQUIRES: libs/calendar libs/crypto libs/basic-authentication -libs/furnace libs/serialize ; - -PROVIDE: apps/furnace-onigiri -{ +files+ { - "onigiri.factor" - "onigiri.facts" -} } ; \ No newline at end of file diff --git a/unmaintained/furnace-onigiri/onigiri.factor b/unmaintained/furnace-onigiri/onigiri.factor deleted file mode 100644 index a015659c0f..0000000000 --- a/unmaintained/furnace-onigiri/onigiri.factor +++ /dev/null @@ -1,166 +0,0 @@ -! Copyright (C) 2006 Matthew Willis. All Rights Reserved. -! See http://factorcode.org/license.txt for BSD license. -! - -USING: httpd threads kernel namespaces furnace sequences -html strings math assocs crypto io file-responder calendar -prettyprint parser errors sha2 basic-authentication arrays -serialize ; - -IN: furnace:onigiri - -TUPLE: entry title stub body created ; - -TUPLE: user name password ; - -TUPLE: meta key value ; - -: title>stub ( title -- stub ) - ! creates a url friendly name based on the title - " " split [ [ alpha? ] subset ] map "" swap remove "-" join ; - -C: entry ( title body stub -- entry ) - tuck set-entry-stub - tuck set-entry-body - dup entry-stub [ over title>stub over set-entry-stub ] unless - now over set-entry-created tuck set-entry-title ; - -C: user ( name password -- user ) - swap string>sha-256-string over set-user-password - tuck set-user-name ; - -: base-url ( -- url ) - "http://" "Host" "header" get at append ; - -: action>url ( action -- url ) - "responder-url" get swap append ; - -: stub>url ( stub -- url ) - "entry-show?stub=" swap append action>url ; - -: stub>entry ( stub -- entry ) - entry get-global [ entry-stub = ] subset-with - dup empty? [ drop f ] [ first ] if ; - -: atom ( -- ) - "text/xml" serving-content - [ f "atom" render-template ] with-html-stream ; - -: sitemap ( -- ) - "text/xml" serving-content - [ f "sitemap" render-template ] with-html-stream ; - -: css-path ( -- path ) - ! "text/css" serving-content - "css" meta crud-lookup* meta-value - [ "onigirihouse.css" ] unless* ; - -DEFER: key>meta* -: entry-list ( -- ) - "title" key>meta* meta-value - serving-html [ - "header" render-template - entry get-global - [ [ entry-created ] 2apply swap compare-timestamps ] sort - [ "entry-show" render-template ] each - f "footer" render-template - ] with-html-stream ; - -DEFER: key>meta -: entry-show ( stub -- ) - stub>entry - [ - "title" key>meta* meta-value - " - " pick entry-title 3append - serving-html [ - "header" render-template - "entry-show" render-template - f "footer" render-template - ] with-html-stream - ] [ - "title" key>meta* meta-value " - Entry not found" append - serving-html [ - [ -

"The entry you are searching for could not be found" write

-

[ entry-list ] "Back to " "title" key>meta - [ meta-value ] [ "the main page" ] if* append render-link -

- ] html-document - ] with-html-stream - ] if* ; - -: entry-edit ( stub wiky -- ) - swap stub>entry dup [ entry-title ] [ f ] if* - "title" key>meta* meta-value " - editing " rot 3append - serving-html [ - "header" render-template - swap "entry-edit" "entry-edit-plain" ? render-template - f "footer" render-template - ] with-html-stream ; - -: entry-update ( title body stub -- ) - "onigiri-realm" [ - dup stub>entry [ - nip tuck set-entry-body tuck set-entry-title - ] [ - dup entry get-global swap add entry set-global - ] if* entry-stub entry-show - ] with-basic-authentication ; - -: entry-delete ( stub -- ) - "onigiri-realm" [ - stub>entry entry get-global remove entry set-global entry-list - ] with-basic-authentication ; - -DEFER: name>user -: onigiri-realm ( name password -- bool ) - swap name>user [ user-password = ] [ drop f ] if* - user get-global empty? or ; - -: register-actions ( -- ) - \ entry-list { } define-action - \ entry-show { { "stub" } } define-action - \ entry-edit { { "stub" } { "wiky" f v-default } } define-action - \ entry-update { { "title" } { "body" } { "stub" } } define-action - \ entry-delete { { "stub" } } define-action - \ atom { } define-action - \ sitemap { } define-action - "onigiri" "entry-list" "apps/furnace-onigiri/templates/" web-app - "onigiri-resources" [ - [ - "apps/furnace-onigiri/resources/" resource-path "doc-root" set - file-responder - ] with-scope - ] add-simple-responder - [ onigiri-realm ] "onigiri-realm" add-realm - ! and finally, use scaffolding for metadata and user data - [ - "furnace:onigiri" set-in - meta "key" "onigiri-realm" scaffold - user "name" "onigiri-realm" scaffold - ] with-scope ; - -: onigiri ( -- ) - register-actions - "default-responder" key>meta* meta-value - [ "onigiri" set-default-responder ] when - "port" key>meta* meta-value string>number [ 8888 ] unless* - [ httpd ] in-thread drop ; - -: onigiri-dump ( path -- ) - [ - [ - entry get-global serialize - meta get-global serialize - user get-global serialize - ] with-serialized - ] with-file-writer ; - -: onigiri-boot ( path -- ) - [ - [ - deserialize entry set-global - deserialize meta set-global - deserialize user set-global - ] with-serialized - ] with-stream ; diff --git a/unmaintained/furnace-onigiri/onigiri.facts b/unmaintained/furnace-onigiri/onigiri.facts deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/unmaintained/furnace-onigiri/onigiri.todo b/unmaintained/furnace-onigiri/onigiri.todo deleted file mode 100644 index 2785c009f8..0000000000 --- a/unmaintained/furnace-onigiri/onigiri.todo +++ /dev/null @@ -1,4 +0,0 @@ -Recent posts sidebar -Links sidebar -Widgets (Onigirihouse feels ...) -Tagging* \ No newline at end of file diff --git a/unmaintained/furnace-onigiri/resources/onigirihouse.css b/unmaintained/furnace-onigiri/resources/onigirihouse.css deleted file mode 100644 index 89f26645f8..0000000000 --- a/unmaintained/furnace-onigiri/resources/onigirihouse.css +++ /dev/null @@ -1,7 +0,0 @@ -body { font: 14px "Trebuchet MS", Arial, Helvetica, sans-serif; } -h1, h2, h3, h4, h5, h6 { font-family: lucida grande ; } -#header { text-align: center ; } -#container { max-width: 720px ; margin: 0 auto; padding: 20px; } -.entry { margin-bottom: 75px ; } -a { color: #5C832F; text-decoration: none; } -a:hover { text-decoration: underline; } \ No newline at end of file diff --git a/unmaintained/furnace-onigiri/resources/wiky/wiky.css b/unmaintained/furnace-onigiri/resources/wiky/wiky.css deleted file mode 100644 index 062f34efd9..0000000000 --- a/unmaintained/furnace-onigiri/resources/wiky/wiky.css +++ /dev/null @@ -1,15 +0,0 @@ -/* == wiky == */ -*.wiki blockquote { background:#ddd; border:solid 1px #999; margin-left:1em; padding:0.5em;} -*.wiki table { - border-collapse: collapse; - empty-cells: show; -} - -*.wiki table td { - border: solid 1px black; - padding: 0.25em 0.5em 0.25em 0.5em; - text-align: center; -} - -/*pre { font-size:100%; background: #eed; border:1px dotted #999; padding:0 0.5em; overflow:auto; }*/ -pre { font-family:courier new, monospace; overflow:auto; } diff --git a/unmaintained/furnace-onigiri/resources/wiky/wiky.js b/unmaintained/furnace-onigiri/resources/wiky/wiky.js deleted file mode 100644 index 71e46ff86a..0000000000 --- a/unmaintained/furnace-onigiri/resources/wiky/wiky.js +++ /dev/null @@ -1,373 +0,0 @@ -/* This work is licensed under Creative Commons GNU LGPL License. - - License: http://creativecommons.org/licenses/LGPL/2.1/ - - Author: Stefan Goessner/2005-06 - Web: http://goessner.net/ -*/ -var Wiky = { - version: 0.95, - blocks: null, - rules: { - all: [ - "Wiky.rules.pre", - "Wiky.rules.nonwikiblocks", - "Wiky.rules.wikiblocks", - "Wiky.rules.post", - ], - pre: [ - { rex:/(\r?\n)/g, tmplt:"\xB6" }, // replace line breaks with '¶' .. - ], - post: [ - { rex:/(^\xB6)|(\xB6$)/g, tmplt:"" }, // .. remove linebreaks at BOS and EOS .. - { rex:/@([0-9]+)@/g, tmplt:function($0,$1){return Wiky.restore($1);} }, // resolve blocks .. - { rex:/\xB6/g, tmplt:"\n" } // replace '¶' with line breaks .. - ], - nonwikiblocks: [ - { rex:/\\([%])/g, tmplt:function($0,$1){return Wiky.store($1);} }, - { rex:/\[(?:\{([^}]*)\})?(?:\(([^)]*)\))?%(.*?)%\]/g, tmplt:function($0,$1,$2,$3){return ":p]"+Wiky.store("" + Wiky.apply($3, $2?Wiky.rules.lang[Wiky.attr($2)]:Wiky.rules.code) + "")+"[p:";} } //programm code block - ], - wikiblocks: [ - "Wiky.rules.nonwikiinlines", - "Wiky.rules.escapes", - { rex:/(?:^|\xB6)(={1,6})(.*?)[=]*(?=\xB6|$)/g, tmplt:function($0,$1,$2){ var h=$1.length; return ":p]\xB6"+$2+"\xB6[p:";} }, //

..

- { rex:/(?:^|\xB6)[-]{4}(?:\xB6|$)/g, tmplt:"\xB6
\xB6" }, // horizontal ruler .. - { rex:/\\\\([ \xB6])/g, tmplt:"
$1" }, // forced line break .. - { rex:/(^|\xB6)([*01aAiIg]*[\.*])[ ]/g, tmplt:function($0,$1,$2){var state=$2.replace(/([*])/g,"u").replace(/([\.])/,"");return ":"+state+"]"+$1+"["+state+":";}}, - { rex:/(?:^|\xB6);[ ](.*?):[ ]/g, tmplt:"\xB6:l][l:$1:d][d:"}, // ; term : definition - { rex:/\[(?:\{([^}]*)\})?(?:\(([^)]*)\))?\"/g, tmplt:function($0,$1,$2){return ":p][p:"; } }, // block quotation start - { rex:/\"\]/g, tmplt:":p][p:" }, // block quotation end - { rex:/\[(\{[^}]*\})?\|/g, tmplt:":t]$1[r:" }, // .. start table .. - { rex:/\|\]/g, tmplt:":r][t:" }, // .. end table .. - { rex:/\|\xB6[ ]?\|/g, tmplt:":r]\xB6[r:" }, // .. end/start table row .. - { rex:/\|/g, tmplt:":c][c:" }, // .. end/start table cell .. - { rex:/^(.*)$/g, tmplt:"[p:$1:p]" }, // start paragraph '[p:' at BOS .. end paragraph ':p]' at EOS .. - { rex:/(([\xB6])([ \t\f\v\xB6]*?)){2,}/g, tmplt:":p]$1[p:" }, // .. separate paragraphs at blank lines .. - { rex:/\[([01AIacdgilprtu]+)[:](.*?)[:]([01AIacdgilprtu]+)\]/g, tmplt:function($0,$1,$2,$3){return Wiky.sectionRule($1==undefined?"":$1,"",Wiky.apply($2,Wiky.rules.wikiinlines),!$3?"":$3);} }, - { rex:/\[[01AIacdgilprtu]+[:]|[:][01AIacdgilprtu]+\]/g, tmplt:"" }, // .. remove singular section delimiters (they frequently exist with incomplete documents while typing) .. - { rex:/(?:([0-9]*)[>])?([ ]?)(.*?)([ ]?)<\/td>/g, tmplt:function($0,$1,$2,$3,$4){return ""+$2+$3+$4+"";} }, - { rex:/<(p|table)>(?:\xB6)?(?:\{(.*?)\})/g, tmplt:function($0,$1,$2){return "<"+$1+Wiky.style($2)+">";} }, - { rex:/

([ \t\f\v\xB6]*?)<\/p>/g, tmplt:"$1" }, // .. remove empty paragraphs .. - "Wiky.rules.shortcuts" - ], - nonwikiinlines: [ - { rex:/%(?:\{([^}]*)\})?(?:\(([^)]*)\))?(.*?)%/g, tmplt:function($0,$1,$2,$3){return Wiky.store("" + Wiky.apply($3, $2?Wiky.rules.lang[Wiky.attr($2)]:Wiky.rules.code) + "");} }, // inline code - { rex:/%(.*?)%/g, tmplt:function($0,$1){return Wiky.store("" + Wiky.apply($2, Wiky.rules.code) + "");} } - ], - wikiinlines: [ - { rex:/\*([^*]+)\*/g, tmplt:"$1" }, // .. strong .. - { rex:/_([^_]+)_/g, tmplt:"$1" }, - { rex:/\^([^^]+)\^/g, tmplt:"$1" }, - { rex:/~([^~]+)~/g, tmplt:"$1" }, - { rex:/\(-(.+?)-\)/g, tmplt:"$1" }, - { rex:/\?([^ \t\f\v\xB6]+)\((.+)\)\?/g, tmplt:"$1" }, // .. abbreviation .. - { rex:/\[(?:\{([^}]*)\})?[Ii]ma?ge?\:([^ ,\]]*)(?:[, ]([^\]]*))?\]/g, tmplt:function($0,$1,$2,$3){return Wiky.store("");} }, // wikimedia image style .. - { rex:/\[([^ ,]+)[, ]([^\]]*)\]/g, tmplt:function($0,$1,$2){return Wiky.store(""+$2+"");}}, // wiki block style uri's .. - { rex:/(((http(s?))\:\/\/)?[A-Za-z0-9\._\/~\-:]+\.(?:png|jpg|jpeg|gif|bmp))/g, tmplt:function($0,$1,$2){return Wiky.store("\""+$1+"\"/");} }, // simple images .. - { rex:/((mailto\:|javascript\:|(news|file|(ht|f)tp(s?))\:\/\/)[A-Za-z0-9\.:_\/~%\-+&#?!=()@\x80-\xB5\xB7\xFF]+)/g, tmplt:"$1" } // simple uri's .. - ], - escapes: [ - { rex:/\\([|*_~\^])/g, tmplt:function($0,$1){return Wiky.store($1);} }, - { rex:/\\&/g, tmplt:"&" }, - { rex:/\\>/g, tmplt:">" }, - { rex:/\\/g, tmplt:"↔"}, // $harr; - { rex:/<-/g, tmplt:"←"}, // ← - { rex:/->/g, tmplt:"→"}, //→ - ], - code: [ - { rex:/&/g, tmplt:"&"}, - { rex://g, tmplt:">"} - ], - lang: {} - }, - - inverse: { - all: [ - "Wiky.inverse.pre", - "Wiky.inverse.nonwikiblocks", - "Wiky.inverse.wikiblocks", - "Wiky.inverse.post" - ], - pre: [ - { rex:/(\r?\n)/g, tmplt:"\xB6" } // replace line breaks with '¶' .. - ], - post: [ - { rex:/@([0-9]+)@/g, tmplt:function($0,$1){return Wiky.restore($1);} }, // resolve blocks .. - { rex:/\xB6/g, tmplt:"\n" } // replace '¶' with line breaks .. - ], - nonwikiblocks: [ - { rex:/]*)>(.*?)<\/pre>/mgi, tmplt:function($0,$1,$2){return Wiky.store("["+Wiky.invStyle($1)+Wiky.invAttr($1,["lang"]).replace(/x\-/,"")+"%"+Wiky.apply($2, Wiky.hasAttr($1,"lang")?Wiky.inverse.lang[Wiky.attrVal($1,"lang").substr(2)]:Wiky.inverse.code)+"%]");} } //code block - ], - wikiblocks: [ - "Wiky.inverse.nonwikiinlines", - "Wiky.inverse.escapes", - "Wiky.inverse.wikiinlines", - { rex:/

(.*?)<\/h1>/mgi, tmplt:"=$1=" }, - { rex:/

(.*?)<\/h2>/mgi, tmplt:"==$1==" }, - { rex:/

(.*?)<\/h3>/mgi, tmplt:"===$1===" }, - { rex:/

(.*?)<\/h4>/mgi, tmplt:"====$1====" }, - { rex:/

(.*?)<\/h5>/mgi, tmplt:"=====$1=====" }, - { rex:/
(.*?)<\/h6>/mgi, tmplt:"======$1======" }, - { rex:/<(p|table)[^>]+(style=\"[^\"]*\")[^>]*>/mgi, tmplt:function($0,$1,$2){return "<"+$1+">"+Wiky.invStyle($2);} }, - { rex:/\xB6{2}
  • \"]*)\"?[^>]*?>([^<]*)/mgi, tmplt:function($0,$1,$2){return $1.replace(/u/g,"*").replace(/([01aAiIg])$/,"$1.")+" "+$2;}}, // list items .. - { rex:/(^|\xB6)<(u|o)l[^>]*?>\xB6/mgi, tmplt:"$1" }, // only outer level list start at BOL ... - { rex:/(<\/(?:dl|ol|ul|p)>[ \xB6]*<(?:p)>)/gi, tmplt:"\xB6\xB6" }, - { rex:/
    (.*?)<\/dt>[ \f\n\r\t\v]*
    /mgi, tmplt:"; $1: " }, - { rex:/]*)>/mgi, tmplt:function($0,$1){return Wiky.store("["+Wiky.invStyle($1)+Wiky.invAttr($1,["cite","title"])+"\"");} }, - { rex:/<\/blockquote>/mgi, tmplt:"\"]" }, - { rex:/\xB6*[ ]?|<\/tr>/mgi, tmplt:"|" }, // ie6 only .. - { rex:/\xB6]*?)>/mgi, tmplt:"\xB6" }, - { rex:/]*?)>/mgi, tmplt:"|$1>" }, - { rex:/]*?)>/mgi, tmplt:"|" }, - { rex://mgi, tmplt:"[" }, - { rex:/<\/table>/mgi, tmplt:"]" }, - { rex:/]*?)>\xB6*|<\/td>\xB6*|\xB6*|<\/tbody>/mgi, tmplt:"" }, - { rex://mgi, tmplt:"----" }, - { rex://mgi, tmplt:"\\\\" }, - { rex:/(

    |<(d|o|u)l[^>]*>|<\/(dl|ol|ul|p)>|<\/(li|dd)>)/mgi, tmplt:"" }, - "Wiky.inverse.shortcuts" - ], - nonwikiinlines: [ - { rex:/(.*?)<\/code>/g, tmplt:function($0,$1){return Wiky.store("%"+Wiky.apply($1, Wiky.inverse["code"])+"%");} } - ], - wikiinlines: [ - { rex:/]*?>(.*?)<\/strong>/mgi, tmplt:"*$1*" }, - { rex:/]*?>(.*?)<\/b>/mgi, tmplt:"*$1*" }, - { rex:/]*?>(.*?)<\/em>/mgi, tmplt:"_$1_" }, - { rex:/]*?>(.*?)<\/i>/mgi, tmplt:"_$1_" }, - { rex:/]*?>(.*?)<\/sup>/mgi, tmplt:"^$1^" }, - { rex:/]*?>(.*?)<\/sub>/mgi, tmplt:"~$1~" }, - { rex:/]*?>(.*?)<\/del>/mgi, tmplt:"(-$1-)" }, - { rex:/(.*?)<\/abbr>/mgi, tmplt:"?$2($1)?" }, - { rex:/]*?>(.*?)<\/a>/mgi, tmplt:function($0,$1,$2){return $1==$2?$1:"["+$1+","+$2+"]";}}, - { rex:/]*)\/>/mgi, tmplt:function($0,$1){var a=Wiky.attrVal($1,"alt"),h=Wiky.attrVal($1,"src"),t=Wiky.attrVal($1,"title"),s=Wiky.attrVal($1,"style");return s||(t&&h!=t)?("["+Wiky.invStyle($1)+"img:"+h+(t&&(","+t))+"]"):h;}}, - ], - escapes: [ - { rex:/([|*_~%\^])/g, tmplt:"\\$1" }, - { rex:/&/g, tmplt:"\\&" }, - { rex:/>/g, tmplt:"\\>" }, - { rex:/</g, tmplt:"\\<" } - ], - shortcuts: [ - { rex:/–|\u2013/g, tmplt:"--"}, - { rex:/—|\u2014/g, tmplt:"---"}, - { rex:/…|\u2026/g, tmplt:"..."}, - { rex:/↔|\u2194/g, tmplt:"<->"}, - { rex:/←|\u2190/g, tmplt:"<-"}, - { rex:/→|\u2192/g, tmplt:"->"} - ], - code: [ - { rex:/&/g, tmplt:"&"}, - { rex:/</g, tmplt:"<"}, - { rex:/>/g, tmplt:">"} - ], - lang: {} - }, - - toHtml: function(str) { - Wiky.blocks = []; - return Wiky.apply(str, Wiky.rules.all); - }, - - toWiki: function(str) { - Wiky.blocks = []; - return Wiky.apply(str, Wiky.inverse.all); - }, - - apply: function(str, rules) { - if (str && rules) - for (var i in rules) { - if (typeof(rules[i]) == "string") - str = Wiky.apply(str, eval(rules[i])); - else - str = str.replace(rules[i].rex, rules[i].tmplt); - } - return str; - }, - store: function(str, unresolved) { - return unresolved ? "@" + (Wiky.blocks.push(str)-1) + "@" - : "@" + (Wiky.blocks.push(str.replace(/@([0-9]+)@/g, function($0,$1){return Wiky.restore($1);}))-1) + "@"; - }, - restore: function(idx) { - return Wiky.blocks[idx]; - }, - attr: function(str, name, idx) { - var a = str && str.split(",")[idx||0]; - return a ? (name ? (" "+name+"=\""+a+"\"") : a) : ""; - }, - hasAttr: function(str, name) { - return new RegExp(name+"=").test(str); - }, - attrVal: function(str, name) { - return str.replace(new RegExp("^.*?"+name+"=\"(.*?)\".*?$"), "$1"); - }, - invAttr: function(str, names) { - var a=[], x; - for (var i in names) - if (str.indexOf(names[i]+"=")>=0) - a.push(str.replace(new RegExp("^.*?"+names[i]+"=\"(.*?)\".*?$"), "$1")); - return a.length ? ("("+a.join(",")+")") : ""; - }, - style: function(str) { - var s = str && str.split(/,|;/), p, style = ""; - for (var i in s) { - p = s[i].split(":"); - if (p[0] == ">") style += "margin-left:4em;"; - else if (p[0] == "<") style += "margin-right:4em;"; - else if (p[0] == ">>") style += "float:right;"; - else if (p[0] == "<<") style += "float:left;"; - else if (p[0] == "=") style += "display:block;margin:0 auto;"; - else if (p[0] == "_") style += "text-decoration:underline;"; - else if (p[0] == "b") style += "border:solid 1px;"; - else if (p[0] == "c") style += "color:"+p[1]+";"; - else if (p[0] == "C") style += "background:"+p[1]+";"; - else if (p[0] == "w") style += "width:"+p[1]+";"; - else style += p[0]+":"+p[1]+";"; - } - return style ? " style=\""+style+"\"" : ""; - }, - invStyle: function(str) { - var s = /style=/.test(str) ? str.replace(/^.*?style=\"(.*?)\".*?$/, "$1") : "", - p = s && s.split(";"), pi, prop = []; - for (var i in p) { - pi = p[i].split(":"); - if (pi[0] == "margin-left" && pi[1]=="4em") prop.push(">"); - else if (pi[0] == "margin-right" && pi[1]=="4em") prop.push("<"); - else if (pi[0] == "float" && pi[1]=="right") prop.push(">>"); - else if (pi[0] == "float" && pi[1]=="left") prop.push("<<"); - else if (pi[0] == "margin" && pi[1]=="0 auto") prop.push("="); - else if (pi[0] == "display" && pi[1]=="block") ; - else if (pi[0] == "text-decoration" && pi[1]=="underline") prop.push("_"); - else if (pi[0] == "border" && pi[1]=="solid 1px") prop.push("b"); - else if (pi[0] == "color") prop.push("c:"+pi[1]); - else if (pi[0] == "background") prop.push("C:"+pi[1]); - else if (pi[0] == "width") prop.push("w:"+pi[1]); - else if (pi[0]) prop.push(pi[0]+":"+pi[1]); - } - return prop.length ? ("{" + prop.join(",") + "}") : ""; - }, - sectionRule: function(fromLevel, style, content, toLevel) { - var trf = { p_p: "

    $1

    ", - p_u: "

    $1

    ", - p_o: "

    $1

    ", - // p - ul - // ul - p - u_p: "$1", - u_c: "$1", - u_r: "$1", - uu_p: "$1", - uo_p: "$1", - uuu_p: "$1", - uou_p: "$1", - uuo_p: "$1", - uoo_p: "$1", - // ul - ul - u_u: "$1", - uu_u: "$1", - uo_u: "$1", - uuu_u: "$1", - uou_u: "$1", - uuo_u: "$1", - uoo_u: "$1", - u_uu: "$1", - // ul - ol - u_o: "$1", - uu_o: "$1", - uo_o: "$1", - uuu_o: "$1", - uou_o: "$1", - uuo_o: "$1", - uoo_o: "$1", - u_uo: "$1", - // ol - p - o_p: "$1", - oo_p: "$1", - ou_p: "$1", - ooo_p: "$1", - ouo_p: "$1", - oou_p: "$1", - ouu_p: "$1", - // ol - ul - o_u: "$1", - oo_u: "$1", - ou_u: "$1", - ooo_u: "$1", - ouo_u: "$1", - oou_u: "$1", - ouu_u: "$1", - o_ou: "$1", - // -- ol - ol -- - o_o: "$1", - oo_o: "$1", - ou_o: "$1", - ooo_o: "$1", - ouo_o: "$1", - oou_o: "$1", - ouu_o: "$1", - o_oo: "$1", - // -- dl -- - l_d: "
    $1
    ", - d_l: "
    $1
    ", - d_u: "
    $1
      ", - d_o: "
      $1
        ", - p_l: "

        $1

        ", - u_l: "$1
    ", - o_l: "$1
    ", - uu_l: "$1
    ", - uo_l: "$1
    ", - ou_l: "$1
    ", - oo_l: "$1
    ", - d_p: "
    $1
    ", - // -- table -- - p_t: "

    $1

    ", - p_r: "

    $1

    ", - p_c: "

    $1

    ", - t_p: "

    $1

    ", - r_r: "$1", - r_p: "

    $1

    ", - r_c: "$1", - r_u: "$1