├── .gitignore ├── bugs ├── printing-broken ├── support-control-d-in-repl ├── load-system-broken ├── tabs ├── test-continuation-barriers ├── intern-symbols ├── cannot-apply-js-funs ├── keyword-symbols-in-operator-position ├── lexical-contour-errors ├── require-broken ├── restarts-missing-from-load ├── do-not-use-javascript-truthiness ├── generic-equality ├── generic-order ├── utf8-strings ├── better-debugger-ui └── userspace-unclear ├── scripts ├── build-and-test └── publish ├── test ├── lisp │ ├── test-browser.lisp │ ├── test-sample-1.lisp │ ├── test-subsample.lisp │ ├── tests.system.lisp │ ├── test-sample-2.lisp │ ├── test-subsystem.system.lisp │ ├── test-node.lisp │ └── test-sample.system.lisp ├── test.js └── test.html ├── repl ├── dl │ └── new-theme │ │ ├── img │ │ ├── busy1.gif │ │ ├── mark.gif │ │ ├── mark-2.gif │ │ ├── modalbg.gif │ │ ├── resize.gif │ │ ├── resize.png │ │ ├── titlebg.png │ │ ├── tmpcal.gif │ │ ├── boxes │ │ │ ├── s1.png │ │ │ ├── s1-dim.png │ │ │ ├── shadow.png │ │ │ ├── shadow-vb.png │ │ │ ├── shadow-dim.png │ │ │ └── shadow-vb-dim.png │ │ ├── checkbox-0.png │ │ ├── checkbox-1.png │ │ ├── checkbox-2.png │ │ ├── color │ │ │ └── hue.png │ │ ├── resizebg.gif │ │ ├── spinner-up.gif │ │ ├── spinner-up.png │ │ ├── tree │ │ │ ├── dot.gif │ │ │ ├── minus.gif │ │ │ ├── minus.png │ │ │ ├── plus.gif │ │ │ ├── plus.png │ │ │ ├── lines-b.gif │ │ │ ├── lines-c.gif │ │ │ ├── lines-v.gif │ │ │ ├── lines-tcb.gif │ │ │ ├── plus-hover.gif │ │ │ └── minus-hover.gif │ │ ├── icons │ │ │ ├── colors.png │ │ │ ├── calendar.png │ │ │ ├── dynarch-small.png │ │ │ └── gnome-fs-chardev.png │ │ ├── menu │ │ │ ├── darrow.gif │ │ │ ├── rarrow.gif │ │ │ ├── darrow-small.gif │ │ │ └── rarrow-hover.gif │ │ ├── spinner-down.gif │ │ ├── spinner-down.png │ │ ├── arrows │ │ │ ├── dropdown.png │ │ │ ├── nav-left.gif │ │ │ ├── nav-right.gif │ │ │ ├── scroll-up.gif │ │ │ ├── nav-left-x2.gif │ │ │ ├── nav-right-x2.gif │ │ │ ├── scroll-down.gif │ │ │ ├── scroll-up-hover.gif │ │ │ ├── sort-ascending.gif │ │ │ ├── sort-descending.gif │ │ │ ├── scroll-down-hover.gif │ │ │ ├── scroll-up-disabled.gif │ │ │ └── scroll-down-disabled.gif │ │ ├── btn-choose-file.gif │ │ ├── btn-choose-file.png │ │ ├── dialog │ │ │ ├── buttons.png │ │ │ ├── quit-btn.png │ │ │ ├── maximize-btn.png │ │ │ ├── minimize-btn.png │ │ │ ├── quit-btn-active.png │ │ │ ├── quit-btn-hover.png │ │ │ ├── maximize-btn-hover.png │ │ │ ├── minimize-btn-hover.png │ │ │ ├── maximize-btn-active.png │ │ │ ├── minimize-btn-active.png │ │ │ └── montage │ │ ├── entry-warning.png │ │ ├── grid-drop-col.gif │ │ ├── radiobutton-0.png │ │ ├── radiobutton-1.png │ │ ├── radiobutton-2.png │ │ ├── resizebar-horiz.gif │ │ ├── resizebar-vert.gif │ │ ├── resizebar-vert1.gif │ │ ├── resizebar-vert2.gif │ │ ├── resizebar-vert2.png │ │ ├── thin-shadows │ │ │ ├── B.png │ │ │ ├── BL.png │ │ │ ├── BR.png │ │ │ ├── L.png │ │ │ ├── R.png │ │ │ ├── T.png │ │ │ ├── TL.png │ │ │ ├── TR.png │ │ │ └── shadows.css │ │ ├── thin-shadows1 │ │ │ ├── B.png │ │ │ ├── L.png │ │ │ ├── R.png │ │ │ ├── T.png │ │ │ ├── BL.png │ │ │ ├── BR.png │ │ │ ├── TL.png │ │ │ ├── TR.png │ │ │ └── shadows.css │ │ ├── tree-drop-here.gif │ │ ├── resizebar-horiz1.gif │ │ ├── resizebar-horiz2.png │ │ ├── checkbox-0-disabled.png │ │ ├── checkbox-1-disabled.png │ │ ├── shadows │ │ │ ├── dlg-active │ │ │ │ ├── B.png │ │ │ │ ├── L.png │ │ │ │ ├── R.png │ │ │ │ ├── T.png │ │ │ │ ├── BL.png │ │ │ │ ├── BR.png │ │ │ │ ├── TL.png │ │ │ │ ├── TR.png │ │ │ │ └── shadows.css │ │ │ ├── dlg-dragging │ │ │ │ ├── B.png │ │ │ │ ├── L.png │ │ │ │ ├── R.png │ │ │ │ ├── T.png │ │ │ │ ├── BL.png │ │ │ │ ├── BR.png │ │ │ │ ├── TL.png │ │ │ │ └── TR.png │ │ │ └── dlg-inactive │ │ │ │ ├── B.png │ │ │ │ ├── L.png │ │ │ │ ├── R.png │ │ │ │ ├── T.png │ │ │ │ ├── BL.png │ │ │ │ ├── BR.png │ │ │ │ ├── TL.png │ │ │ │ ├── TR.png │ │ │ │ └── shadows.css │ │ ├── tree-drop-here-lower.gif │ │ ├── tree-drop-here-upper.gif │ │ ├── radiobutton-0-disabled.png │ │ ├── radiobutton-1-disabled.png │ │ └── new-checkradio │ │ │ ├── check-line.png │ │ │ ├── check-mark.png │ │ │ ├── checkfocus.png │ │ │ ├── opt-line.png │ │ │ ├── opt-mark.png │ │ │ ├── opt-normal.png │ │ │ ├── check-normal.png │ │ │ ├── opt-line-active.png │ │ │ ├── opt-mark-active.png │ │ │ ├── check-line-active.png │ │ │ ├── check-mark-active.png │ │ │ ├── opt-line-prelight.png │ │ │ ├── opt-mark-prelight.png │ │ │ ├── opt-normal-active.png │ │ │ ├── check-line-prelight.png │ │ │ ├── check-mark-prelight.png │ │ │ ├── check-normal-active.png │ │ │ ├── opt-line-insensitive.png │ │ │ ├── opt-mark-insensitive.png │ │ │ ├── opt-normal-prelight.png │ │ │ ├── check-line-insensitive.png │ │ │ ├── check-mark-insensitive.png │ │ │ ├── check-normal-prelight.png │ │ │ ├── opt-normal-insensitive.png │ │ │ └── check-normal-insensitive.png │ │ ├── basedefs.css │ │ ├── dlconsole.css │ │ ├── uploadentry.css │ │ └── basedefs.scss ├── ymacs │ └── css │ │ ├── ymacs.css │ │ ├── ymacs-light.css │ │ ├── ymacs-dark.css │ │ ├── ymacs-common.css │ │ ├── themes │ │ ├── emacs-tango.css │ │ ├── emacs-billw.css │ │ ├── emacs-mishoo2.css │ │ ├── emacs-standard.css │ │ ├── emacs-whiteboard.css │ │ ├── emacs-adwaita.css │ │ ├── emacs-andreas.css │ │ ├── emacs-mishoo.css │ │ ├── emacs-zenburn.css │ │ ├── emacs-gnome2.css │ │ ├── emacs-scintilla.css │ │ ├── emacs-calm-forest.css │ │ ├── emacs-classic.css │ │ ├── emacs-bharadwaj.css │ │ ├── emacs-standard-dark.css │ │ ├── emacs-vim-colors.css │ │ ├── emacs-blue-mood.css │ │ ├── emacs-standard-xemacs.css │ │ ├── emacs-gtk-ide.css │ │ ├── emacs-charcoal-black.css │ │ ├── emacs-clarity-and-beauty.css │ │ ├── emacs-linh-dang-dark.css │ │ └── emacs-high-contrast.css │ │ ├── ymacs-syntax-light.css │ │ └── ymacs-syntax-dark.css └── repl.html ├── cmd ├── qua.js └── qua-run.js ├── src ├── arch-browser.js ├── arch.js ├── print.js ├── main.js └── read.js ├── package.json ├── lisp ├── repl.lisp ├── arch.lisp └── arch-browser.lisp └── demo ├── balls.html └── setImmediate.js /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | build/boot.js 3 | node_modules/ 4 | -------------------------------------------------------------------------------- /bugs/printing-broken: -------------------------------------------------------------------------------- 1 | #void should print as #void etc 2 | -------------------------------------------------------------------------------- /scripts/build-and-test: -------------------------------------------------------------------------------- 1 | ./build/build.js && ./test/test.js 2 | 3 | -------------------------------------------------------------------------------- /bugs/support-control-d-in-repl: -------------------------------------------------------------------------------- 1 | The REPL currently prints #void for ^D 2 | -------------------------------------------------------------------------------- /test/lisp/test-browser.lisp: -------------------------------------------------------------------------------- 1 | ;; Browser-specific tests can go here. 2 | -------------------------------------------------------------------------------- /test/lisp/test-sample-1.lisp: -------------------------------------------------------------------------------- 1 | (defconstant test:+sample-value+ 33) 2 | -------------------------------------------------------------------------------- /bugs/load-system-broken: -------------------------------------------------------------------------------- 1 | LOAD-SYSTEM doesn't load into specified environment. -------------------------------------------------------------------------------- /bugs/tabs: -------------------------------------------------------------------------------- 1 | There are some tabs in the code from when I had Emacs misconfigured. -------------------------------------------------------------------------------- /bugs/test-continuation-barriers: -------------------------------------------------------------------------------- 1 | CONTINUATION-BARRIER is currently untested. -------------------------------------------------------------------------------- /test/lisp/test-subsample.lisp: -------------------------------------------------------------------------------- 1 | (defconstant test-sub:+sample-value+ 44) 2 | -------------------------------------------------------------------------------- /test/lisp/tests.system.lisp: -------------------------------------------------------------------------------- 1 | (defsystem tests 2 | :depends-on () 3 | :components ("test.lisp")) 4 | -------------------------------------------------------------------------------- /bugs/intern-symbols: -------------------------------------------------------------------------------- 1 | Symbols should probably be interned so that EQ and EQL (used by CASE) 2 | properly works. -------------------------------------------------------------------------------- /bugs/cannot-apply-js-funs: -------------------------------------------------------------------------------- 1 | Because APPLY uses UNWRAP, it (and FUNCALL) cannot be used with native 2 | JS functions. -------------------------------------------------------------------------------- /repl/dl/new-theme/img/busy1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/busy1.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/mark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/mark.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/mark-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/mark-2.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/modalbg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/modalbg.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resize.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resize.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resize.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/titlebg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/titlebg.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tmpcal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tmpcal.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/s1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/s1.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/checkbox-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/checkbox-0.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/checkbox-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/checkbox-1.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/checkbox-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/checkbox-2.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/color/hue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/color/hue.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebg.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/spinner-up.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/spinner-up.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/spinner-up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/spinner-up.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/dot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/dot.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/minus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/minus.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/minus.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/plus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/plus.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/plus.png -------------------------------------------------------------------------------- /test/lisp/test-sample-2.lisp: -------------------------------------------------------------------------------- 1 | (defun test:sample-fn () 2 | (+ test:+sample-value+ 3 | test-sub:+sample-value+)) 4 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/s1-dim.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/s1-dim.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/shadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/shadow.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/icons/colors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/icons/colors.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/menu/darrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/menu/darrow.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/menu/rarrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/menu/rarrow.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/spinner-down.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/spinner-down.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/spinner-down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/spinner-down.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/lines-b.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/lines-b.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/lines-c.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/lines-c.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/lines-v.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/lines-v.gif -------------------------------------------------------------------------------- /scripts/publish: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -eux 3 | ./scripts/build-and-test 4 | npm version patch 5 | npm publish 6 | 7 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/dropdown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/dropdown.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/nav-left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/nav-left.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/shadow-vb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/shadow-vb.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/btn-choose-file.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/btn-choose-file.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/btn-choose-file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/btn-choose-file.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/buttons.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/quit-btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/quit-btn.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/entry-warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/entry-warning.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/grid-drop-col.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/grid-drop-col.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/icons/calendar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/icons/calendar.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/radiobutton-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/radiobutton-0.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/radiobutton-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/radiobutton-1.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/radiobutton-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/radiobutton-2.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-horiz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-horiz.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-vert.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-vert.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-vert1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-vert1.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-vert2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-vert2.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-vert2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-vert2.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/B.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/BL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/BR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/L.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/R.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/T.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/T.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/TL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows/TR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/B.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/L.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/R.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/T.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/T.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree-drop-here.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree-drop-here.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/lines-tcb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/lines-tcb.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/plus-hover.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/plus-hover.gif -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs.css: -------------------------------------------------------------------------------- 1 | @import url("ymacs-dark.css"); 2 | @import url("ymacs-light.css"); 3 | @import url("ymacs-common.css"); 4 | -------------------------------------------------------------------------------- /test/lisp/test-subsystem.system.lisp: -------------------------------------------------------------------------------- 1 | (defsystem test-subsystem 2 | :depends-on () 3 | :components ("test-subsample.lisp")) 4 | -------------------------------------------------------------------------------- /bugs/keyword-symbols-in-operator-position: -------------------------------------------------------------------------------- 1 | If a keyword appears in operator position e.g. (:foo 1 2) it gets 2 | looked up as a function. -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/nav-right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/nav-right.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-up.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-up.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/shadow-dim.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/shadow-dim.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/menu/darrow-small.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/menu/darrow-small.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/menu/rarrow-hover.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/menu/rarrow-hover.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-horiz1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-horiz1.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/resizebar-horiz2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/resizebar-horiz2.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/BL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/BR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/TL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/thin-shadows1/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/thin-shadows1/TR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree/minus-hover.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree/minus-hover.gif -------------------------------------------------------------------------------- /bugs/lexical-contour-errors: -------------------------------------------------------------------------------- 1 | Some macros like PUSH-PROMPT that use lambdas introduce new 2 | lexical contours where there shouldn't be any. 3 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/nav-left-x2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/nav-left-x2.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/nav-right-x2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/nav-right-x2.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-down.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-down.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/boxes/shadow-vb-dim.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/boxes/shadow-vb-dim.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/checkbox-0-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/checkbox-0-disabled.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/checkbox-1-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/checkbox-1-disabled.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/maximize-btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/maximize-btn.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/minimize-btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/minimize-btn.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/icons/dynarch-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/icons/dynarch-small.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/B.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/L.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/R.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/T.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/T.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree-drop-here-lower.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree-drop-here-lower.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/tree-drop-here-upper.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/tree-drop-here-upper.gif -------------------------------------------------------------------------------- /bugs/require-broken: -------------------------------------------------------------------------------- 1 | NODE:REQUIRE and friends are confused about where to load files from 2 | (current dir vs dir of Lisp file). Needs rethought. -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-up-hover.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-up-hover.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/sort-ascending.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/sort-ascending.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/sort-descending.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/sort-descending.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/quit-btn-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/quit-btn-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/quit-btn-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/quit-btn-hover.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/icons/gnome-fs-chardev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/icons/gnome-fs-chardev.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/radiobutton-0-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/radiobutton-0-disabled.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/radiobutton-1-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/radiobutton-1-disabled.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/BL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/BR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/TL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-active/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-active/TR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/B.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/L.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/R.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/T.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/T.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/B.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/L.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/R.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/T.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/T.png -------------------------------------------------------------------------------- /bugs/restarts-missing-from-load: -------------------------------------------------------------------------------- 1 | The abort and quit restarts shouldn't only be available in the REPL, 2 | they should also be available for normal LOAD. -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-down-hover.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-down-hover.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-up-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-up-disabled.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/maximize-btn-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/maximize-btn-hover.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/minimize-btn-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/minimize-btn-hover.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-line.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-mark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-mark.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/checkfocus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/checkfocus.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-line.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-mark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-mark.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-normal.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/BL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/BR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/TL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-dragging/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-dragging/TR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/BL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/BR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/TL.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/shadows/dlg-inactive/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/shadows/dlg-inactive/TR.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/arrows/scroll-down-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/arrows/scroll-down-disabled.gif -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/maximize-btn-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/maximize-btn-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/minimize-btn-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/dialog/minimize-btn-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-normal.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-line-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-line-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-mark-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-mark-active.png -------------------------------------------------------------------------------- /test/lisp/test-node.lisp: -------------------------------------------------------------------------------- 1 | ;; Node-specific tests 2 | 3 | (let () 4 | (load-system "test/lisp/test-sample.system.lisp") 5 | (%expect 77 (test:sample-fn))) 6 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-line-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-line-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-mark-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-mark-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-line-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-line-prelight.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-mark-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-mark-prelight.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-normal-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-normal-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-line-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-line-prelight.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-mark-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-mark-prelight.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-normal-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-normal-active.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-line-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-line-insensitive.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-mark-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-mark-insensitive.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-normal-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-normal-prelight.png -------------------------------------------------------------------------------- /test/lisp/test-sample.system.lisp: -------------------------------------------------------------------------------- 1 | (defsystem test-sample 2 | :depends-on ("test-subsystem.system.lisp") 3 | :components ("test-sample-1.lisp" "test-sample-2.lisp")) 4 | -------------------------------------------------------------------------------- /bugs/do-not-use-javascript-truthiness: -------------------------------------------------------------------------------- 1 | Currently, IF, WHEN, etc work like in JS. Supporting the same 2 | semantics in any other implementation language would be a horror. 3 | -------------------------------------------------------------------------------- /bugs/generic-equality: -------------------------------------------------------------------------------- 1 | = should be 2 | - value equality for numbers, strings, booleans etc, 3 | - pointer equality for JS objects 4 | - deep equality for Qua structures 5 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-line-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-line-insensitive.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-mark-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-mark-insensitive.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-normal-prelight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-normal-prelight.png -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/opt-normal-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/opt-normal-insensitive.png -------------------------------------------------------------------------------- /bugs/generic-order: -------------------------------------------------------------------------------- 1 | <= should be: 2 | - well-defined across primitives like numbers, strings, booleans 3 | - #t for JS objects 4 | - deep ordering for Qua structures 5 | 6 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/new-checkradio/check-normal-insensitive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qua-lang/qua-vm/HEAD/repl/dl/new-theme/img/new-checkradio/check-normal-insensitive.png -------------------------------------------------------------------------------- /repl/dl/new-theme/basedefs.css: -------------------------------------------------------------------------------- 1 | /* Part of DynarchLIB 2 | Copyright (c) Dynarch.com 2005-2009. All rights reserved. 3 | See http://www.dynarchlib.com/licensing for details. */ 4 | -------------------------------------------------------------------------------- /test/test.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | console.log(require("../src/main.js").vm().eval_string("(push-userspace (load \"test/lisp/test.lisp\") (load \"test/lisp/test-node.lisp\"))")); 3 | -------------------------------------------------------------------------------- /bugs/utf8-strings: -------------------------------------------------------------------------------- 1 | maybe there should be something like "platform strings" and 'UTF-8 2 | strings' with differing syntax? 3 | 4 | E.g. in Qua/JS "foo" would be UTF-16 but 'foo' would be UTF-8 5 | -------------------------------------------------------------------------------- /bugs/better-debugger-ui: -------------------------------------------------------------------------------- 1 | The debugger should have: 2 | - nested debug levels, like CL debuggers 3 | - allow evaluating arbitrary expressions, and not only restart numbers 4 | (use :c to choose a restart) 5 | -------------------------------------------------------------------------------- /cmd/qua.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | // This is the main entry point for the `qua' UNIX command. 3 | console.log(require("../src/main.js").vm().eval_string("(push-userspace (load \"" + __dirname + "/../lisp/repl.lisp\"))")); 4 | -------------------------------------------------------------------------------- /cmd/qua-run.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | // qua-run file.lisp 3 | // Runs a Qua file and quits. 4 | // HACKCKCKKCKCKCK -- why is this so horrible? 5 | require("../src/main.js").vm().eval_string("(push-userspace (load \"" + process.argv[2] + "\"))"); 6 | -------------------------------------------------------------------------------- /repl/dl/new-theme/img/dialog/montage: -------------------------------------------------------------------------------- 1 | montage -adjoin -background transparent -geometry 27x16 quit-btn.png quit-btn-hover.png quit-btn-active.png maximize-btn.png maximize-btn-hover.png maximize-btn-active.png minimize-btn.png minimize-btn-hover.png minimize-btn-active.png tmp.png 2 | -------------------------------------------------------------------------------- /src/arch-browser.js: -------------------------------------------------------------------------------- 1 | // Browser-specific code. The package.json's browser field contains a 2 | // mapping so that this gets used instead of arch.js if we're doing a 3 | // browser build. 4 | module.exports = function(vm, init_env) { 5 | // Here we could do browser-specific exports to Lisp. 6 | }; 7 | -------------------------------------------------------------------------------- /repl/dl/new-theme/dlconsole.css: -------------------------------------------------------------------------------- 1 | html, body { margin: 0; padding: 0; background-color: #ffee99; color: #000; } 2 | 3 | body, table { font: 13px tahoma,verdana,sans-serif; } 4 | 5 | .msg { margin: 0.5em; } 6 | 7 | .sep { 8 | font-size: 1px; 9 | line-height: 1px; 10 | overflow: hidden; 11 | height: 1px; 12 | margin: 6px 0; 13 | background-color: #f00; 14 | } 15 | 16 | .current { background-color: #fe0; } 17 | -------------------------------------------------------------------------------- /test/test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Qua Tests 5 | 6 | 7 | 8 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs-light.css: -------------------------------------------------------------------------------- 1 | @import url("ymacs-syntax-light.css"); 2 | 3 | @import url("themes/emacs-andreas.css"); 4 | @import url("themes/emacs-high-contrast.css"); 5 | @import url("themes/emacs-gtk-ide.css"); 6 | @import url("themes/emacs-standard-xemacs.css"); 7 | @import url("themes/emacs-bharadwaj.css"); 8 | @import url("themes/emacs-scintilla.css"); 9 | @import url("themes/emacs-vim-colors.css"); 10 | @import url("themes/emacs-standard.css"); 11 | @import url("themes/emacs-tango.css"); 12 | @import url("themes/emacs-adwaita.css"); 13 | @import url("themes/emacs-whiteboard.css"); 14 | -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs-dark.css: -------------------------------------------------------------------------------- 1 | @import url("ymacs-syntax-dark.css"); 2 | 3 | @import url("themes/emacs-mishoo.css"); 4 | @import url("themes/emacs-mishoo2.css"); 5 | @import url("themes/emacs-billw.css"); 6 | @import url("themes/emacs-charcoal-black.css"); 7 | @import url("themes/emacs-clarity-and-beauty.css"); 8 | @import url("themes/emacs-classic.css"); 9 | @import url("themes/emacs-gnome2.css"); 10 | @import url("themes/emacs-calm-forest.css"); 11 | @import url("themes/emacs-linh-dang-dark.css"); 12 | @import url("themes/emacs-blue-mood.css"); 13 | @import url("themes/emacs-zenburn.css"); 14 | @import url("themes/emacs-standard-dark.css"); 15 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "qua-vm", 3 | "description": "The Qua Lisp virtual machine", 4 | "author": "Manuel Simoni", 5 | "version": "0.0.15", 6 | "main": "./src/main.js", 7 | "bin": { 8 | "qua": "./cmd/qua.js", 9 | "qua-run": "./cmd/qua-run.js" 10 | }, 11 | "dependencies": { 12 | "browserify": "^16.2.3", 13 | "deep-equal": "^1.0.1", 14 | "jsparse": "^0.1.0", 15 | "readline-sync": "^1.4.9" 16 | }, 17 | "browser": { 18 | "./src/arch.js": "./src/arch-browser.js", 19 | "./build/out/bootstrap.json": "./build/out/bootstrap-browser.json" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /repl/dl/new-theme/uploadentry.css: -------------------------------------------------------------------------------- 1 | body { background-color: transparent; margin: 0; padding: 0; overflow: hidden; height: 100%; } 2 | 3 | form, input { font: 12px Tahoma,"Lucida Sans","Trebuchet MS",Tahoma,Verdana,sans-serif; height: 22px; width: 80px; } 4 | form { margin: 0; padding: 0; } 5 | 6 | .upload { 7 | display: block; 8 | background: url("img/btn-choose-file.gif") no-repeat 0 50%; 9 | overflow: hidden; 10 | cursor: pointer; 11 | width: 80px; 12 | height: 22px; 13 | position: relative; 14 | } 15 | .upload input { 16 | opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; 17 | position: absolute; 18 | cursor: pointer; 19 | height: 100%; 20 | width: auto; 21 | } 22 | -------------------------------------------------------------------------------- /lisp/repl.lisp: -------------------------------------------------------------------------------- 1 | ;;;; Main 2 | 3 | (push-userspace 4 | (print "Welcome to Qua!") 5 | (print "Press ENTER to evaluate the current line in Qua.") 6 | (let ((env (the-environment))) 7 | (block quit 8 | (restart-bind ((quit (lambda () 9 | (print "Goodbye!") 10 | (return-from quit)))) 11 | (loop 12 | (block abort 13 | (restart-bind ((abort (lambda () 14 | (print "Aborting") 15 | (return-from abort)))) 16 | (let ((forms (read))) 17 | (prin1 (eval (list* #'progn forms) env)))))))))) 18 | -------------------------------------------------------------------------------- /repl/repl.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Qua REPL 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/arch.js: -------------------------------------------------------------------------------- 1 | // Node-specific code (Node is the "default architecture", due to the 2 | // way Browserify's `package.json' browser field works, that lets us 3 | // switch the contents of this file with those of `arch-browser.js' if 4 | // we're doing a browser build.) 5 | var fs = require("fs"); 6 | var path = require("path"); 7 | var readline = require("readline-sync"); 8 | module.exports = function(vm, init_env) { 9 | // Export some utils... might be better to just give `require' to 10 | // Lisp, and then do everything from there? 11 | vm.defun(init_env, "%%require", require); 12 | vm.defun(init_env, "%%read-file-sync", vm.jswrap(fs.readFileSync)); 13 | // FIXME: any uses of this outside of this file are probably broken 14 | vm.read_line = function() { return readline.question("> "); }; 15 | vm.defun(init_env, "%%read-line", vm.jswrap(vm.read_line)); 16 | vm.defun(init_env, "%%dirname", vm.jswrap(function() { return __dirname; })); 17 | }; 18 | -------------------------------------------------------------------------------- /bugs/userspace-unclear: -------------------------------------------------------------------------------- 1 | It should be like this: 2 | 3 | (CONTINUATION-BARRIER (PUSH-PROMPT +USER-PROMPT+ ...)) happens automatically: 4 | 5 | - around VM toplevel entry calls (eval_string() etc)* 6 | - around synchronous JS-LAMBDAs and asynchronous JS-CALLBACKs* 7 | (* implicitly due to PUSH-USERSPACE) 8 | 9 | (PUSH-USERSPACE ...) happens automatically: 10 | 11 | - around VM toplevel entry calls (eval_string() etc) 12 | - asynchronous JS-CALLBACKs 13 | 14 | PUSH-USERSPACE adds a CONTINUATION-BARRIER, so trying to escape it 15 | always raises. 16 | 17 | 18 | Here's a diff how it might work? 19 | 20 | (defmacro js-lambda (lambda-list . body) 21 | - (list #'js-function 22 | - (list #'lambda lambda-list 23 | - (list #'%%continuation-barrier 24 | - (list #'push-userspace 25 | - (list* #'progn body)))))) 26 | -(def #'function #'js-lambda) ; alternative name 27 | + (list #'js-function ;; turn inner Lisp combiner into JS function 28 | + (list #'lambda lambda-list ;; inner Lisp combiner 29 | + (list #'%%continuation-barrier ;; prevent continuation escape 30 | + (list* #'push-prompt +user-prompt+ ;; get stack trace until here 31 | + body))))) ;; user body 32 | + 33 | +;;; JS-CALLBACK 34 | +(defmacro js-callback (lambda-list . body) 35 | + (list #'js-function ;; turn inner Lisp combiner into JS function 36 | + (list #'lambda lambda-list ;; inner Lisp combiner 37 | + (list #'push-userspace 38 | + body)))) 39 | + 40 | +;;;; Userspace 41 | + 42 | +;;; Delimits all user interactions, so that stack traces can be taken. 43 | +(defconstant +user-prompt+ :user-prompt) 44 | + 45 | +;;; Wrapped around all user code. Provides useful handler bindings, 46 | +;;; prompts, and other dynamic stuff. 47 | +(deffexpr push-userspace body env 48 | + (continuation-barrier 49 | + (push-prompt +user-prompt+ 50 | + (dynamic-bind ((*standard-input* (%arch-standard-input)) 51 | + (*standard-output* (%arch-standard-output))) 52 | -------------------------------------------------------------------------------- /src/print.js: -------------------------------------------------------------------------------- 1 | // The whole printing is stuff not very good indeed 2 | module.exports = function(vm, init_env) { 3 | vm.PRINT_ESCAPE = vm.make_dynamic(true); 4 | vm.unreadable_object_to_string = function(object) { 5 | var c = vm.class_of(object); 6 | var class_name = c.class_name || c.name; // FIXME: why? 7 | return "#[" + class_name + " " + object + "]"; 8 | }; 9 | vm.object_to_string = function(object) { 10 | switch(typeof(object)) { 11 | case "string": 12 | if (vm.dynamic(vm.PRINT_ESCAPE)) { 13 | return JSON.stringify(object); 14 | } else { 15 | return object; 16 | } 17 | case "number": 18 | return String(object); 19 | default: 20 | if (object && object.qua_to_string) { 21 | return object.qua_to_string(object); 22 | } else { 23 | return vm.unreadable_object_to_string(object); 24 | } 25 | } 26 | }; 27 | vm.Sym.prototype.qua_to_string = function(sym) { 28 | switch(sym.ns) { 29 | case vm.VAR_NS: return sym.name; 30 | case vm.FUN_NS: return "#'" + sym.name; 31 | case vm.KWD_NS: return ":" + sym.name; 32 | default: return vm.sym_key(sym); 33 | } 34 | }; 35 | vm.Prim.prototype.qua_to_string = function(prim) { 36 | return "#[built-in " + prim.name + "]"; 37 | }; 38 | vm.Cons.prototype.qua_to_string = function(cons) { 39 | return "(" + vm.cons_to_string(cons) + ")" 40 | }; 41 | vm.cons_to_string = function (c) { 42 | if (vm.cdr(c) === vm.NIL) { 43 | return vm.object_to_string(vm.car(c)); 44 | } else if (vm.cdr(c) instanceof vm.Cons) { 45 | return vm.object_to_string(vm.car(c)) + " " + vm.cons_to_string(vm.cdr(c)); 46 | } else { 47 | return vm.object_to_string(vm.car(c)) + " . " + vm.object_to_string(vm.cdr(c)); 48 | } 49 | }; 50 | vm.def(vm.init_env, "%%*print-escape*", vm.PRINT_ESCAPE); 51 | vm.defun(vm.init_env, "%%object-to-string", vm.jswrap(vm.object_to_string)); 52 | }; 53 | -------------------------------------------------------------------------------- /lisp/arch.lisp: -------------------------------------------------------------------------------- 1 | ;;;;; Node-specific Lisp code 2 | 3 | ;;; The quality of this code is a bit of a joke at the moment and 4 | ;;; needs serious reconsideration and/or reorganization. 5 | 6 | ;;; Require module relative to user code / current project. 7 | (defun node:require (module) 8 | (%%require (@resolve #'%%require module (js-object :paths (js-array "."))))) 9 | 10 | ;;; Require module relative to VM code. Code that is called from user 11 | ;;; commands (e.g. qua-bundle) must use this to access VM-local files 12 | ;;; and modules. 13 | ;;; TODO: remove hair 14 | (defun node:require-vm-relative (module) 15 | (%%require module)) 16 | 17 | (defstruct node-input-stream) 18 | (defstruct node-output-stream) 19 | 20 | (defconstant +node-stdout+ (.stdout $process)) 21 | 22 | (defmethod read-string-from-stream ((stream node-input-stream)) 23 | (%%read-line)) 24 | (defmethod write-string-to-stream ((stream node-output-stream) string) 25 | (@write +node-stdout+ string)) 26 | 27 | (defun %arch-standard-input () 28 | (make-instance 'node-input-stream)) 29 | (defun %arch-standard-output () 30 | (make-instance 'node-output-stream)) 31 | 32 | (defconstant node:path (node:require "path")) 33 | (def #'node:dirname (.dirname node:path)) 34 | (def #'node:join-paths (.join node:path)) 35 | 36 | (defconstant node:fs (node:require "fs")) 37 | (def #'node:read-file-sync (.readFileSync node:fs)) 38 | (def #'node:write-file-sync (.writeFileSync node:fs)) 39 | (def #'node:create-write-stream (.createWriteStream node:fs)) 40 | 41 | (defun read-file-as-string (path) (node:read-file-sync path "utf8")) 42 | 43 | (defun read-file (path) 44 | (list* #'progn (%%parse-forms (read-file-as-string path)))) 45 | 46 | ;; Loads a file into the current or specified environment. 47 | (defun/env load (path . opt-env) denv 48 | (eval (read-file path) (optional opt-env denv))) 49 | 50 | ;; Loads all components of a system into the current or specified 51 | ;; environment. 52 | (defun/env load-system (path . opt-env) denv 53 | (let* ((env (optional opt-env denv)) 54 | (#'defsystem 55 | (vau (name :depends-on deps :components components) #ign 56 | (list-for-each (lambda (dep) 57 | (load-system (node:join-paths (node:dirname path) dep) env)) 58 | deps) 59 | (list-for-each (lambda (component) 60 | (load (node:join-paths (node:dirname path) component) env)) 61 | components)))) 62 | (load path))) 63 | -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs-common.css: -------------------------------------------------------------------------------- 1 | .Ymacs_Frame { 2 | font-family: "DejaVu Sans Mono","Lucida Sans Typewriter",monospace; 3 | overflow: hidden; 4 | } 5 | 6 | /* .Ymacs_Frame { */ 7 | /* opacity: 0.8; */ 8 | /* } */ 9 | /* .Ymacs_Frame-active { */ 10 | /* opacity: 1; */ 11 | /* } */ 12 | 13 | .Ymacs-frame-overlays { 14 | overflow: hidden; 15 | position: relative; 16 | } 17 | 18 | .Ymacs-frame-content { 19 | white-space: pre; 20 | padding-bottom: 1000px; 21 | } 22 | 23 | .Ymacs-caret { 24 | margin: 0; 25 | padding: 0; 26 | } 27 | 28 | .Ymacs_Frame-focus .Ymacs-caret { 29 | opacity: 1; 30 | } 31 | 32 | .Ymacs_Minibuffer .Ymacs-caret { background-color: inherit; color: inherit; } 33 | 34 | .Ymacs_Minibuffer .Ymacs_Modeline { display: none; } 35 | 36 | .Ymacs_Minibuffer .Ymacs-frame-content { 37 | padding-bottom: 0; 38 | } 39 | 40 | /* .Ymacs_Frame-hasOverlays .Ymacs-current-line { */ 41 | /* background: transparent !important; */ 42 | /* } */ 43 | 44 | .Ymacs-overwrite-mode .Ymacs-caret { 45 | border-radius: 15px; 46 | } 47 | 48 | .Ymacs_Overlay { position: absolute; right: 0; opacity: 0.5; filter: alpha(opacity=50); } 49 | .Ymacs_Overlay .match-paren { opacity: 0.4; filter: alpha(opacity=40); } 50 | .Ymacs_Overlay .selection { opacity: 0.7; filter: alpha(opacity=70); } 51 | 52 | .Ymacs_Message_Popup { 53 | background-color: wheat; 54 | padding: 10px; 55 | } 56 | 57 | .Ymacs_Modeline { 58 | font-family: "Lucida Sans Typewriter",monospace; 59 | white-space: pre; 60 | padding-bottom: 1px; 61 | overflow: hidden; 62 | } 63 | 64 | .Ymacs_Modeline:after { 65 | content: "-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------"; 66 | } 67 | 68 | .Ymacs_Message_Popup { 69 | background-color: wheat; 70 | color: #000; 71 | padding: 10px; 72 | } 73 | 74 | .Ymacs_Completion_Popup .DlMenuItem .div2 { font-size: 100%; } 75 | 76 | .Ymacs-line-numbers .Ymacs-frame-content { counter-reset: ymacs-line 0; } 77 | .Ymacs-line-numbers .Ymacs-frame-content div.line { counter-increment: ymacs-line; } 78 | .Ymacs-line-numbers .Ymacs-frame-content div.line:before { 79 | color: #888; 80 | display: inline-block; 81 | width: 3em; 82 | padding-right: 0.5em; 83 | margin-right: 0.5em; 84 | content: counter(ymacs-line, decimal); 85 | text-align: right; 86 | } 87 | 88 | .Ymacs-splitbar-horiz { border-bottom: 1px solid #000; } 89 | .Ymacs-splitbar-vert { border-left: 1px solid #000; border-right: 1px solid #000; border-bottom: 1px solid #000; } 90 | 91 | .Ymacs_Frame .minibuffer-prompt { font-weight: bold } 92 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | // This is the main Qua file, that pulls together all components and 2 | // creates a user environment in which Qua code can be evaluated. 3 | // 4 | // The major weakness is that only a single Qua VM per JS process is 5 | // currently supported. Changing this is simply a matter of 6 | // refactoring `vm.js' so that it does its thing within a function, 7 | // instead of globally. 8 | var qua = module.exports; 9 | 10 | // The boot bytecode is the precompiled version of the 11 | // `bootstrap.lisp' file plus either `arch.lisp' or 12 | // `arch-browser.lisp' depending on whether we run in Node or are 13 | // doing a browser build. 14 | var boot_bytecode = require("../build/out/bootstrap.json"); 15 | 16 | qua.vm = function() { 17 | // VM initialization: The `vm.init' function from the file `vm.js' 18 | // performs the major part of initialization: it populates a fresh 19 | // environment, called the init environment, with primitive bindings. 20 | var vm = require("./vm.js"); 21 | vm.init(); 22 | 23 | // Once that is done, we run some "plug-in" files, each of which 24 | // receives the VM module, and the created init environment, and can 25 | // add new primitive functionality to both. Most of these are 26 | // plug-ins simply to keep the `vm.js' file a bit leaner and more 27 | // readable. The only files where this is really required are the 28 | // `arch.js'/`arch-browser.js' files that get used depending on what 29 | // architecture we're building for with some Browserify magic in 30 | // `package.json'. 31 | require("./read.js")(vm, vm.init_env); // S-Expression Parser 32 | require("./print.js")(vm, vm.init_env); // (Not Yet) Pretty Printer 33 | require("./arch.js")(vm, vm.init_env); // Architecture-Specific Code 34 | 35 | // Main entry point, all evaluation goes through this. Is_boot is 36 | // only used during boot, to disable pushing userspace 37 | // (PUSH-USERSPACE is only defined near the end of booting). 38 | vm.eval_sexp = function(x, e, is_boot) { 39 | if (!is_boot) { 40 | x = vm.list(vm.fun_sym("push-userspace"), x); 41 | } 42 | return vm.evaluate(e ? e : vm.init_env, x); 43 | }; 44 | // Add some convenient wrappers 45 | vm.eval_string = function(s, e, is_boot) { 46 | return vm.eval_sexp(vm.parse_forms_progn(s), e, is_boot); 47 | }; 48 | vm.eval_bytecode = function(c, e, is_boot) { 49 | return vm.eval_sexp(vm.parse_bytecode(c), e, is_boot); 50 | }; 51 | 52 | // Finally, we run the Lisp boot bytecode, i.e. the preparsed Lisp 53 | // code from the file `bootstrap.lisp', that sets up the 54 | // user-level language. 55 | vm.eval_bytecode(boot_bytecode, vm.init_env, true); 56 | 57 | return vm; 58 | }; 59 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-tango.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-tango .Ymacs_Frame { color: #2d3335; background-color: #ededeb; } 2 | .Ymacs-Theme-tango .Ymacs_Frame .type { color: #1f4986; } 3 | .Ymacs-Theme-tango .Ymacs_Frame .builtin { color: #744f7a; } 4 | .Ymacs-Theme-tango .Ymacs_Frame .function-name { color: #a30000; } 5 | .Ymacs-Theme-tango .Ymacs_Frame .variable-name { color: #b24f00; } 6 | .Ymacs-Theme-tango .Ymacs_Frame .constant { color: #1f4986; font-weight: bold; } 7 | .Ymacs-Theme-tango .Ymacs_Frame .string { color: #5b3465; } 8 | .Ymacs-Theme-tango .Ymacs_Frame .string-starter { color: #5b3465; } 9 | .Ymacs-Theme-tango .Ymacs_Frame .string-stopper { color: #5b3465; } 10 | .Ymacs-Theme-tango .Ymacs_Frame .regexp { color: #5b3465; } 11 | .Ymacs-Theme-tango .Ymacs_Frame .regexp-starter { color: #5b3465; } 12 | .Ymacs-Theme-tango .Ymacs_Frame .regexp-stopper { color: #5b3465; } 13 | .Ymacs-Theme-tango .Ymacs_Frame .regexp-modifier { color: #5b3465; } 14 | .Ymacs-Theme-tango .Ymacs_Frame .keyword { color: #336503; } 15 | .Ymacs-Theme-tango .Ymacs_Frame .comment { color: #5e605b; } 16 | .Ymacs-Theme-tango .Ymacs_Frame .mcomment { color: #5e605b; } 17 | .Ymacs-Theme-tango .Ymacs_Frame .comment-starter { color: #5e605b; } 18 | .Ymacs-Theme-tango .Ymacs_Frame .mcomment-starter { color: #5e605b; } 19 | .Ymacs-Theme-tango .Ymacs_Frame .mcomment-stopper { color: #5e605b; } 20 | .Ymacs-Theme-tango .Ymacs_Frame .number { color: #1f4986; font-weight: bold; } 21 | .Ymacs-Theme-tango .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-tango .Ymacs_Frame .error { color: #a30000; } 23 | .Ymacs-Theme-tango .Ymacs_Frame .xml-open-tag { color: #a30000; } 24 | .Ymacs-Theme-tango .Ymacs_Frame .xml-close-tag { color: #a30000; } 25 | .Ymacs-Theme-tango .Ymacs_Frame .xml-attribute { color: #b24f00; } 26 | .Ymacs-Theme-tango .Ymacs_Frame .xml-entity-starter { color: #1f4986; } 27 | .Ymacs-Theme-tango .Ymacs_Frame .xml-entity-stopper { color: #1f4986; } 28 | .Ymacs-Theme-tango .Ymacs_Frame .xml-entity { color: #1f4986; } 29 | .Ymacs-Theme-tango .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-tango .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-tango .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-tango .Ymacs_Frame .xml-cdata { color: #5e605b; } 33 | .Ymacs-Theme-tango .Ymacs_Frame .xml-cdata-starter { color: #5e605b; } 34 | .Ymacs-Theme-tango .Ymacs_Frame .xml-cdata-stopper { color: #5e605b; } 35 | .Ymacs-Theme-tango .Ymacs_Frame .lisp-keyword { color: #1f4986; font-weight: bold; } 36 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading1 { } 37 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading2 { } 38 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading3 { } 39 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-blockquote { color: #5e605b; } 43 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-blockquote1 { color: #5e605b; } 44 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-blockquote2 { color: #5e605b; } 45 | .Ymacs-Theme-tango .Ymacs_Frame .markdown-blockquote3 { color: #5e605b; } 46 | -------------------------------------------------------------------------------- /demo/balls.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Qua Balls 5 | 6 | 7 | 8 | 9 |

Qua

10 | 36 | 37 | 38 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-billw.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-billw .Ymacs_Frame { color: #fff8dc; background-color: #000000; } 2 | .Ymacs-Theme-billw .Ymacs_Frame .type { color: #ffff00; } 3 | .Ymacs-Theme-billw .Ymacs_Frame .builtin { color: #b0c4de; } 4 | .Ymacs-Theme-billw .Ymacs_Frame .function-name { color: #00fa9a; } 5 | .Ymacs-Theme-billw .Ymacs_Frame .variable-name { color: #ffa07a; } 6 | .Ymacs-Theme-billw .Ymacs_Frame .constant { color: #fa8072; } 7 | .Ymacs-Theme-billw .Ymacs_Frame .string { color: #ffa500; } 8 | .Ymacs-Theme-billw .Ymacs_Frame .string-starter { color: #ffa500; } 9 | .Ymacs-Theme-billw .Ymacs_Frame .string-stopper { color: #ffa500; } 10 | .Ymacs-Theme-billw .Ymacs_Frame .regexp { color: #ffa500; } 11 | .Ymacs-Theme-billw .Ymacs_Frame .regexp-starter { color: #ffa500; } 12 | .Ymacs-Theme-billw .Ymacs_Frame .regexp-stopper { color: #ffa500; } 13 | .Ymacs-Theme-billw .Ymacs_Frame .regexp-modifier { color: #ffa500; } 14 | .Ymacs-Theme-billw .Ymacs_Frame .keyword { color: #00ffff; } 15 | .Ymacs-Theme-billw .Ymacs_Frame .comment { color: #ffd700; } 16 | .Ymacs-Theme-billw .Ymacs_Frame .mcomment { color: #ffd700; } 17 | .Ymacs-Theme-billw .Ymacs_Frame .comment-starter { color: #ffd700; } 18 | .Ymacs-Theme-billw .Ymacs_Frame .mcomment-starter { color: #ffd700; } 19 | .Ymacs-Theme-billw .Ymacs_Frame .mcomment-stopper { color: #ffd700; } 20 | .Ymacs-Theme-billw .Ymacs_Frame .number { color: #fa8072; } 21 | .Ymacs-Theme-billw .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-billw .Ymacs_Frame .error { color: #ffd700; font-weight: bold; } 23 | .Ymacs-Theme-billw .Ymacs_Frame .xml-open-tag { color: #00fa9a; } 24 | .Ymacs-Theme-billw .Ymacs_Frame .xml-close-tag { color: #00fa9a; } 25 | .Ymacs-Theme-billw .Ymacs_Frame .xml-attribute { color: #ffa07a; } 26 | .Ymacs-Theme-billw .Ymacs_Frame .xml-entity-starter { color: #fa8072; } 27 | .Ymacs-Theme-billw .Ymacs_Frame .xml-entity-stopper { color: #fa8072; } 28 | .Ymacs-Theme-billw .Ymacs_Frame .xml-entity { color: #fa8072; } 29 | .Ymacs-Theme-billw .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-billw .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-billw .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-billw .Ymacs_Frame .xml-cdata { color: #ffd700; } 33 | .Ymacs-Theme-billw .Ymacs_Frame .xml-cdata-starter { color: #ffd700; } 34 | .Ymacs-Theme-billw .Ymacs_Frame .xml-cdata-stopper { color: #ffd700; } 35 | .Ymacs-Theme-billw .Ymacs_Frame .lisp-keyword { color: #fa8072; } 36 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-blockquote { color: #ffd700; } 43 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-blockquote1 { color: #ffd700; } 44 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-blockquote2 { color: #ffd700; } 45 | .Ymacs-Theme-billw .Ymacs_Frame .markdown-blockquote3 { color: #ffd700; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-mishoo2.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-mishoo2 .Ymacs_Frame { color: #dbdbdb; background-color: #1a1a1a; } 2 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .type { color: #97f4fe; } 3 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .builtin { color: #ef7f7f; } 4 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .function-name { color: #d9a41f; } 5 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .variable-name { color: #b3edb3; } 6 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .constant { color: #a1cc59; } 7 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .string { color: #ddb786; } 8 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .string-starter { color: #ddb786; } 9 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .string-stopper { color: #ddb786; } 10 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .regexp { color: #ddb786; } 11 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .regexp-starter { color: #ddb786; } 12 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .regexp-stopper { color: #ddb786; } 13 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .regexp-modifier { color: #ddb786; } 14 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .keyword { color: #00befe; font-weight: bold; } 15 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .comment { color: #3fbf4f; } 16 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .mcomment { color: #3fbf4f; } 17 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .comment-starter { color: #9fbf4f; } 18 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .mcomment-starter { color: #9fbf4f; } 19 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .mcomment-stopper { color: #9fbf4f; } 20 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .number { color: #a1cc59; } 21 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .error { color: #fe0000; font-weight: bold; } 23 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-open-tag { color: #d9a41f; } 24 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-close-tag { color: #d9a41f; } 25 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-attribute { color: #b3edb3; } 26 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-entity-starter { color: #a1cc59; } 27 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-entity-stopper { color: #a1cc59; } 28 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-entity { color: #a1cc59; } 29 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-cdata { color: #3fbf4f; } 33 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-cdata-starter { color: #9fbf4f; } 34 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .xml-cdata-stopper { color: #9fbf4f; } 35 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .lisp-keyword { color: #a1cc59; } 36 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading1 { font-weight: bold; } 37 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading2 { font-weight: bold; } 38 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading3 { font-weight: bold; } 39 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-blockquote { color: #3fbf4f; } 43 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-blockquote1 { color: #3fbf4f; } 44 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-blockquote2 { color: #3fbf4f; } 45 | .Ymacs-Theme-mishoo2 .Ymacs_Frame .markdown-blockquote3 { color: #3fbf4f; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-standard.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-standard .Ymacs_Frame { color: #000000; background-color: #ffffff; } 2 | .Ymacs-Theme-standard .Ymacs_Frame .type { color: #228b22; } 3 | .Ymacs-Theme-standard .Ymacs_Frame .builtin { color: #483d8b; } 4 | .Ymacs-Theme-standard .Ymacs_Frame .function-name { color: #0000ff; } 5 | .Ymacs-Theme-standard .Ymacs_Frame .variable-name { color: #a0522d; } 6 | .Ymacs-Theme-standard .Ymacs_Frame .constant { color: #008b8b; } 7 | .Ymacs-Theme-standard .Ymacs_Frame .string { color: #8b2252; } 8 | .Ymacs-Theme-standard .Ymacs_Frame .string-starter { color: #8b2252; } 9 | .Ymacs-Theme-standard .Ymacs_Frame .string-stopper { color: #8b2252; } 10 | .Ymacs-Theme-standard .Ymacs_Frame .regexp { color: #8b2252; } 11 | .Ymacs-Theme-standard .Ymacs_Frame .regexp-starter { color: #8b2252; } 12 | .Ymacs-Theme-standard .Ymacs_Frame .regexp-stopper { color: #8b2252; } 13 | .Ymacs-Theme-standard .Ymacs_Frame .regexp-modifier { color: #8b2252; } 14 | .Ymacs-Theme-standard .Ymacs_Frame .keyword { color: #a020f0; } 15 | .Ymacs-Theme-standard .Ymacs_Frame .comment { color: #b22222; } 16 | .Ymacs-Theme-standard .Ymacs_Frame .mcomment { color: #b22222; } 17 | .Ymacs-Theme-standard .Ymacs_Frame .comment-starter { color: #b22222; } 18 | .Ymacs-Theme-standard .Ymacs_Frame .mcomment-starter { color: #b22222; } 19 | .Ymacs-Theme-standard .Ymacs_Frame .mcomment-stopper { color: #b22222; } 20 | .Ymacs-Theme-standard .Ymacs_Frame .number { color: #008b8b; } 21 | .Ymacs-Theme-standard .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-standard .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-standard .Ymacs_Frame .xml-open-tag { color: #0000ff; } 24 | .Ymacs-Theme-standard .Ymacs_Frame .xml-close-tag { color: #0000ff; } 25 | .Ymacs-Theme-standard .Ymacs_Frame .xml-attribute { color: #a0522d; } 26 | .Ymacs-Theme-standard .Ymacs_Frame .xml-entity-starter { color: #008b8b; } 27 | .Ymacs-Theme-standard .Ymacs_Frame .xml-entity-stopper { color: #008b8b; } 28 | .Ymacs-Theme-standard .Ymacs_Frame .xml-entity { color: #008b8b; } 29 | .Ymacs-Theme-standard .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-standard .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-standard .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-standard .Ymacs_Frame .xml-cdata { color: #b22222; } 33 | .Ymacs-Theme-standard .Ymacs_Frame .xml-cdata-starter { color: #b22222; } 34 | .Ymacs-Theme-standard .Ymacs_Frame .xml-cdata-stopper { color: #b22222; } 35 | .Ymacs-Theme-standard .Ymacs_Frame .lisp-keyword { color: #008b8b; } 36 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading1 { font-weight: bold; } 37 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading2 { font-weight: bold; } 38 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading3 { font-weight: bold; } 39 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-blockquote { color: #b22222; } 43 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-blockquote1 { color: #b22222; } 44 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-blockquote2 { color: #b22222; } 45 | .Ymacs-Theme-standard .Ymacs_Frame .markdown-blockquote3 { color: #b22222; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-whiteboard.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-whiteboard .Ymacs_Frame { color: #000000; background-color: #f5f5f5; } 2 | .Ymacs-Theme-whiteboard .Ymacs_Frame .type { color: #00688b; } 3 | .Ymacs-Theme-whiteboard .Ymacs_Frame .builtin { color: #cd6600; } 4 | .Ymacs-Theme-whiteboard .Ymacs_Frame .function-name { color: #cd9b1d; } 5 | .Ymacs-Theme-whiteboard .Ymacs_Frame .variable-name { color: #2e8b57; } 6 | .Ymacs-Theme-whiteboard .Ymacs_Frame .constant { color: #6e8b3d; } 7 | .Ymacs-Theme-whiteboard .Ymacs_Frame .string { color: #8b7355; } 8 | .Ymacs-Theme-whiteboard .Ymacs_Frame .string-starter { color: #8b7355; } 9 | .Ymacs-Theme-whiteboard .Ymacs_Frame .string-stopper { color: #8b7355; } 10 | .Ymacs-Theme-whiteboard .Ymacs_Frame .regexp { color: #8b7355; } 11 | .Ymacs-Theme-whiteboard .Ymacs_Frame .regexp-starter { color: #8b7355; } 12 | .Ymacs-Theme-whiteboard .Ymacs_Frame .regexp-stopper { color: #8b7355; } 13 | .Ymacs-Theme-whiteboard .Ymacs_Frame .regexp-modifier { color: #8b7355; } 14 | .Ymacs-Theme-whiteboard .Ymacs_Frame .keyword { color: #1c86ee; } 15 | .Ymacs-Theme-whiteboard .Ymacs_Frame .comment { color: #7f7f7f; } 16 | .Ymacs-Theme-whiteboard .Ymacs_Frame .mcomment { color: #7f7f7f; } 17 | .Ymacs-Theme-whiteboard .Ymacs_Frame .comment-starter { color: #7f7f7f; } 18 | .Ymacs-Theme-whiteboard .Ymacs_Frame .mcomment-starter { color: #7f7f7f; } 19 | .Ymacs-Theme-whiteboard .Ymacs_Frame .mcomment-stopper { color: #7f7f7f; } 20 | .Ymacs-Theme-whiteboard .Ymacs_Frame .number { color: #6e8b3d; } 21 | .Ymacs-Theme-whiteboard .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-whiteboard .Ymacs_Frame .error { color: #ff0000; } 23 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-open-tag { color: #cd9b1d; } 24 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-close-tag { color: #cd9b1d; } 25 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-attribute { color: #2e8b57; } 26 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-entity-starter { color: #6e8b3d; } 27 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-entity-stopper { color: #6e8b3d; } 28 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-entity { color: #6e8b3d; } 29 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-cdata { color: #7f7f7f; } 33 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-cdata-starter { color: #7f7f7f; } 34 | .Ymacs-Theme-whiteboard .Ymacs_Frame .xml-cdata-stopper { color: #7f7f7f; } 35 | .Ymacs-Theme-whiteboard .Ymacs_Frame .lisp-keyword { color: #6e8b3d; } 36 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading1 { } 37 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading2 { } 38 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading3 { } 39 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-blockquote { color: #7f7f7f; } 43 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-blockquote1 { color: #7f7f7f; } 44 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-blockquote2 { color: #7f7f7f; } 45 | .Ymacs-Theme-whiteboard .Ymacs_Frame .markdown-blockquote3 { color: #7f7f7f; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-adwaita.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-adwaita .Ymacs_Frame { color: #2d3335; background-color: #ececec; } 2 | .Ymacs-Theme-adwaita .Ymacs_Frame .type { color: #2e8a57; font-weight: bold; } 3 | .Ymacs-Theme-adwaita .Ymacs_Frame .builtin { color: #9f1fef; } 4 | .Ymacs-Theme-adwaita .Ymacs_Frame .function-name { color: #00568d; font-weight: bold; } 5 | .Ymacs-Theme-adwaita .Ymacs_Frame .variable-name { color: #0083c7; font-weight: bold; } 6 | .Ymacs-Theme-adwaita .Ymacs_Frame .constant { color: #f4656c; } 7 | .Ymacs-Theme-adwaita .Ymacs_Frame .string { color: #4d9905; } 8 | .Ymacs-Theme-adwaita .Ymacs_Frame .string-starter { color: #4d9905; } 9 | .Ymacs-Theme-adwaita .Ymacs_Frame .string-stopper { color: #4d9905; } 10 | .Ymacs-Theme-adwaita .Ymacs_Frame .regexp { color: #4d9905; } 11 | .Ymacs-Theme-adwaita .Ymacs_Frame .regexp-starter { color: #4d9905; } 12 | .Ymacs-Theme-adwaita .Ymacs_Frame .regexp-stopper { color: #4d9905; } 13 | .Ymacs-Theme-adwaita .Ymacs_Frame .regexp-modifier { color: #4d9905; } 14 | .Ymacs-Theme-adwaita .Ymacs_Frame .keyword { color: #a42929; font-weight: bold; } 15 | .Ymacs-Theme-adwaita .Ymacs_Frame .comment { color: #1f4986; } 16 | .Ymacs-Theme-adwaita .Ymacs_Frame .mcomment { color: #1f4986; } 17 | .Ymacs-Theme-adwaita .Ymacs_Frame .comment-starter { color: #1f4986; } 18 | .Ymacs-Theme-adwaita .Ymacs_Frame .mcomment-starter { color: #1f4986; } 19 | .Ymacs-Theme-adwaita .Ymacs_Frame .mcomment-stopper { color: #1f4986; } 20 | .Ymacs-Theme-adwaita .Ymacs_Frame .number { color: #f4656c; } 21 | .Ymacs-Theme-adwaita .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-adwaita .Ymacs_Frame .error { color: #f4656c; font-weight: bold; } 23 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-open-tag { color: #00568d; font-weight: bold; } 24 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-close-tag { color: #00568d; font-weight: bold; } 25 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-attribute { color: #0083c7; font-weight: bold; } 26 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-entity-starter { color: #f4656c; } 27 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-entity-stopper { color: #f4656c; } 28 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-entity { color: #f4656c; } 29 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-cdata { color: #1f4986; } 33 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-cdata-starter { color: #1f4986; } 34 | .Ymacs-Theme-adwaita .Ymacs_Frame .xml-cdata-stopper { color: #1f4986; } 35 | .Ymacs-Theme-adwaita .Ymacs_Frame .lisp-keyword { color: #f4656c; } 36 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading1 { } 37 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading2 { } 38 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading3 { } 39 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-blockquote { color: #1f4986; } 43 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-blockquote1 { color: #1f4986; } 44 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-blockquote2 { color: #1f4986; } 45 | .Ymacs-Theme-adwaita .Ymacs_Frame .markdown-blockquote3 { color: #1f4986; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-andreas.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-andreas .Ymacs_Frame { color: #000000; background-color: #ffffff; } 2 | .Ymacs-Theme-andreas .Ymacs_Frame .type { color: #681fab; } 3 | .Ymacs-Theme-andreas .Ymacs_Frame .builtin { color: #da70d6; } 4 | .Ymacs-Theme-andreas .Ymacs_Frame .function-name { color: #0000cd; } 5 | .Ymacs-Theme-andreas .Ymacs_Frame .variable-name { color: #0000cd; } 6 | .Ymacs-Theme-andreas .Ymacs_Frame .constant { color: #5f9ea0; } 7 | .Ymacs-Theme-andreas .Ymacs_Frame .string { color: #008b00; } 8 | .Ymacs-Theme-andreas .Ymacs_Frame .string-starter { color: #008b00; } 9 | .Ymacs-Theme-andreas .Ymacs_Frame .string-stopper { color: #008b00; } 10 | .Ymacs-Theme-andreas .Ymacs_Frame .regexp { color: #008b00; } 11 | .Ymacs-Theme-andreas .Ymacs_Frame .regexp-starter { color: #008b00; } 12 | .Ymacs-Theme-andreas .Ymacs_Frame .regexp-stopper { color: #008b00; } 13 | .Ymacs-Theme-andreas .Ymacs_Frame .regexp-modifier { color: #008b00; } 14 | .Ymacs-Theme-andreas .Ymacs_Frame .keyword { color: #ff0000; } 15 | .Ymacs-Theme-andreas .Ymacs_Frame .comment { color: #ffa500; } 16 | .Ymacs-Theme-andreas .Ymacs_Frame .mcomment { color: #ffa500; } 17 | .Ymacs-Theme-andreas .Ymacs_Frame .comment-starter { color: #b22222; } 18 | .Ymacs-Theme-andreas .Ymacs_Frame .mcomment-starter { color: #b22222; } 19 | .Ymacs-Theme-andreas .Ymacs_Frame .mcomment-stopper { color: #b22222; } 20 | .Ymacs-Theme-andreas .Ymacs_Frame .number { color: #5f9ea0; } 21 | .Ymacs-Theme-andreas .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-andreas .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-open-tag { color: #0000cd; } 24 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-close-tag { color: #0000cd; } 25 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-attribute { color: #0000cd; } 26 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-entity-starter { color: #5f9ea0; } 27 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-entity-stopper { color: #5f9ea0; } 28 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-entity { color: #5f9ea0; } 29 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-cdata { color: #ffa500; } 33 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-cdata-starter { color: #b22222; } 34 | .Ymacs-Theme-andreas .Ymacs_Frame .xml-cdata-stopper { color: #b22222; } 35 | .Ymacs-Theme-andreas .Ymacs_Frame .lisp-keyword { color: #5f9ea0; } 36 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-blockquote { color: #ffa500; } 43 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-blockquote1 { color: #ffa500; } 44 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-blockquote2 { color: #ffa500; } 45 | .Ymacs-Theme-andreas .Ymacs_Frame .markdown-blockquote3 { color: #ffa500; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-mishoo.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-mishoo .Ymacs_Frame { color: #faebd7; background-color: #1e2e2e; } 2 | .Ymacs-Theme-mishoo .Ymacs_Frame .type { color: #7ccd7c; } 3 | .Ymacs-Theme-mishoo .Ymacs_Frame .builtin { color: #98fb98; font-weight: bold; } 4 | .Ymacs-Theme-mishoo .Ymacs_Frame .function-name { color: #63b8ff; } 5 | .Ymacs-Theme-mishoo .Ymacs_Frame .variable-name { color: #fff68f; } 6 | .Ymacs-Theme-mishoo .Ymacs_Frame .constant { color: #7fffd4; } 7 | .Ymacs-Theme-mishoo .Ymacs_Frame .string { color: #ffa500; } 8 | .Ymacs-Theme-mishoo .Ymacs_Frame .string-starter { color: #ffa500; } 9 | .Ymacs-Theme-mishoo .Ymacs_Frame .string-stopper { color: #ffa500; } 10 | .Ymacs-Theme-mishoo .Ymacs_Frame .regexp { color: #ffa500; } 11 | .Ymacs-Theme-mishoo .Ymacs_Frame .regexp-starter { color: #ffa500; } 12 | .Ymacs-Theme-mishoo .Ymacs_Frame .regexp-stopper { color: #ffa500; } 13 | .Ymacs-Theme-mishoo .Ymacs_Frame .regexp-modifier { color: #ffa500; } 14 | .Ymacs-Theme-mishoo .Ymacs_Frame .keyword { color: #00ffff; font-weight: bold; } 15 | .Ymacs-Theme-mishoo .Ymacs_Frame .comment { color: #32cd32; } 16 | .Ymacs-Theme-mishoo .Ymacs_Frame .mcomment { color: #32cd32; } 17 | .Ymacs-Theme-mishoo .Ymacs_Frame .comment-starter { color: #daa520; } 18 | .Ymacs-Theme-mishoo .Ymacs_Frame .mcomment-starter { color: #daa520; } 19 | .Ymacs-Theme-mishoo .Ymacs_Frame .mcomment-stopper { color: #daa520; } 20 | .Ymacs-Theme-mishoo .Ymacs_Frame .number { color: #7fffd4; } 21 | .Ymacs-Theme-mishoo .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-mishoo .Ymacs_Frame .error { color: #ffff00; font-weight: bold; } 23 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-open-tag { color: #63b8ff; } 24 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-close-tag { color: #63b8ff; } 25 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-attribute { color: #fff68f; } 26 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-cdata { color: #32cd32; } 33 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-cdata-starter { color: #daa520; } 34 | .Ymacs-Theme-mishoo .Ymacs_Frame .xml-cdata-stopper { color: #daa520; } 35 | .Ymacs-Theme-mishoo .Ymacs_Frame .lisp-keyword { color: #7fffd4; } 36 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 1.090em; } 37 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 0.924em; } 38 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 0.752em; } 39 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 0.628em; } 40 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading5 { color: #f5f5dc; font-weight: bold; } 41 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-blockquote { color: #32cd32; } 43 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-blockquote1 { color: #32cd32; } 44 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-blockquote2 { color: #32cd32; } 45 | .Ymacs-Theme-mishoo .Ymacs_Frame .markdown-blockquote3 { color: #32cd32; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-zenburn.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-zenburn .Ymacs_Frame { color: #dbdbcb; background-color: #3e3e3e; } 2 | .Ymacs-Theme-zenburn .Ymacs_Frame .type { color: #dedebe; } 3 | .Ymacs-Theme-zenburn .Ymacs_Frame .builtin { color: #8bcfd2; } 4 | .Ymacs-Theme-zenburn .Ymacs_Frame .function-name { color: #efdeae; } 5 | .Ymacs-Theme-zenburn .Ymacs_Frame .variable-name { color: #efdeae; } 6 | .Ymacs-Theme-zenburn .Ymacs_Frame .constant { color: #dba2a2; } 7 | .Ymacs-Theme-zenburn .Ymacs_Frame .string { color: #cb9292; } 8 | .Ymacs-Theme-zenburn .Ymacs_Frame .string-starter { color: #cb9292; } 9 | .Ymacs-Theme-zenburn .Ymacs_Frame .string-stopper { color: #cb9292; } 10 | .Ymacs-Theme-zenburn .Ymacs_Frame .regexp { color: #cb9292; } 11 | .Ymacs-Theme-zenburn .Ymacs_Frame .regexp-starter { color: #cb9292; } 12 | .Ymacs-Theme-zenburn .Ymacs_Frame .regexp-stopper { color: #cb9292; } 13 | .Ymacs-Theme-zenburn .Ymacs_Frame .regexp-modifier { color: #cb9292; } 14 | .Ymacs-Theme-zenburn .Ymacs_Frame .keyword { color: #efdeae; } 15 | .Ymacs-Theme-zenburn .Ymacs_Frame .comment { color: #7e9e7e; } 16 | .Ymacs-Theme-zenburn .Ymacs_Frame .mcomment { color: #7e9e7e; } 17 | .Ymacs-Theme-zenburn .Ymacs_Frame .comment-starter { color: #6f7f6f; } 18 | .Ymacs-Theme-zenburn .Ymacs_Frame .mcomment-starter { color: #6f7f6f; } 19 | .Ymacs-Theme-zenburn .Ymacs_Frame .mcomment-stopper { color: #6f7f6f; } 20 | .Ymacs-Theme-zenburn .Ymacs_Frame .number { color: #dba2a2; } 21 | .Ymacs-Theme-zenburn .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-zenburn .Ymacs_Frame .error { color: #e2706f; background-color: #322222; } 23 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-open-tag { color: #efdeae; } 24 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-close-tag { color: #efdeae; } 25 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-attribute { color: #efdeae; } 26 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-entity-starter { color: #93bef2; } 27 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-entity-stopper { color: #93bef2; } 28 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-entity { color: #93bef2; } 29 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-open-bracket { color: #dbdbcb; background-color: #3e3e3e; } 30 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-close-bracket { color: #dbdbcb; background-color: #3e3e3e; } 31 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-closetag-slash { color: #dbdbcb; background-color: #3e3e3e; } 32 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-cdata { color: #dbdbcb; background-color: #3e3e3e; } 33 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-cdata-starter { color: #dba2a2; } 34 | .Ymacs-Theme-zenburn .Ymacs_Frame .xml-cdata-stopper { color: #dba2a2; } 35 | .Ymacs-Theme-zenburn .Ymacs_Frame .lisp-keyword { color: #dba2a2; } 36 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading1 { font-size: 1.717em; } 37 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading2 { font-size: 1.400em; } 38 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading3 { font-size: 1.175em; } 39 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-blockquote { color: #7e9e7e; } 43 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-blockquote1 { color: #7e9e7e; } 44 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-blockquote2 { color: #7e9e7e; } 45 | .Ymacs-Theme-zenburn .Ymacs_Frame .markdown-blockquote3 { color: #7e9e7e; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-gnome2.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-gnome2 .Ymacs_Frame { color: #f5deb3; background-color: #2f4f4f; } 2 | .Ymacs-Theme-gnome2 .Ymacs_Frame .type { color: #9acd32; font-weight: bold; } 3 | .Ymacs-Theme-gnome2 .Ymacs_Frame .builtin { color: #98fb98; font-weight: bold; } 4 | .Ymacs-Theme-gnome2 .Ymacs_Frame .function-name { color: #7fffd4; font-weight: bold; } 5 | .Ymacs-Theme-gnome2 .Ymacs_Frame .variable-name { color: #7fffd4; font-weight: bold; } 6 | .Ymacs-Theme-gnome2 .Ymacs_Frame .constant { color: #7fffd4; } 7 | .Ymacs-Theme-gnome2 .Ymacs_Frame .string { color: #ffa07a; } 8 | .Ymacs-Theme-gnome2 .Ymacs_Frame .string-starter { color: #ffa07a; } 9 | .Ymacs-Theme-gnome2 .Ymacs_Frame .string-stopper { color: #ffa07a; } 10 | .Ymacs-Theme-gnome2 .Ymacs_Frame .regexp { color: #ffa07a; } 11 | .Ymacs-Theme-gnome2 .Ymacs_Frame .regexp-starter { color: #ffa07a; } 12 | .Ymacs-Theme-gnome2 .Ymacs_Frame .regexp-stopper { color: #ffa07a; } 13 | .Ymacs-Theme-gnome2 .Ymacs_Frame .regexp-modifier { color: #ffa07a; } 14 | .Ymacs-Theme-gnome2 .Ymacs_Frame .keyword { color: #fa8072; } 15 | .Ymacs-Theme-gnome2 .Ymacs_Frame .comment { color: #add8e6; } 16 | .Ymacs-Theme-gnome2 .Ymacs_Frame .mcomment { color: #add8e6; } 17 | .Ymacs-Theme-gnome2 .Ymacs_Frame .comment-starter { color: #add8e6; } 18 | .Ymacs-Theme-gnome2 .Ymacs_Frame .mcomment-starter { color: #add8e6; } 19 | .Ymacs-Theme-gnome2 .Ymacs_Frame .mcomment-stopper { color: #add8e6; } 20 | .Ymacs-Theme-gnome2 .Ymacs_Frame .number { color: #7fffd4; } 21 | .Ymacs-Theme-gnome2 .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-gnome2 .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-open-tag { color: #7fffd4; font-weight: bold; } 24 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-close-tag { color: #7fffd4; font-weight: bold; } 25 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-attribute { color: #7fffd4; font-weight: bold; } 26 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-cdata { color: #add8e6; } 33 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-cdata-starter { color: #add8e6; } 34 | .Ymacs-Theme-gnome2 .Ymacs_Frame .xml-cdata-stopper { color: #add8e6; } 35 | .Ymacs-Theme-gnome2 .Ymacs_Frame .lisp-keyword { color: #7fffd4; } 36 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading5 { color: #f5f5dc; font-weight: bold; } 41 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-blockquote { color: #add8e6; } 43 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-blockquote1 { color: #add8e6; } 44 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-blockquote2 { color: #add8e6; } 45 | .Ymacs-Theme-gnome2 .Ymacs_Frame .markdown-blockquote3 { color: #add8e6; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-scintilla.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-scintilla .Ymacs_Frame { color: #000000; background-color: #ffffff; } 2 | .Ymacs-Theme-scintilla .Ymacs_Frame .type { color: #000080; } 3 | .Ymacs-Theme-scintilla .Ymacs_Frame .builtin { color: #000080; } 4 | .Ymacs-Theme-scintilla .Ymacs_Frame .function-name { color: #008b8b; } 5 | .Ymacs-Theme-scintilla .Ymacs_Frame .variable-name { color: #008b8b; } 6 | .Ymacs-Theme-scintilla .Ymacs_Frame .constant { color: #0000ff; } 7 | .Ymacs-Theme-scintilla .Ymacs_Frame .string { color: #8b008b; } 8 | .Ymacs-Theme-scintilla .Ymacs_Frame .string-starter { color: #8b008b; } 9 | .Ymacs-Theme-scintilla .Ymacs_Frame .string-stopper { color: #8b008b; } 10 | .Ymacs-Theme-scintilla .Ymacs_Frame .regexp { color: #8b008b; } 11 | .Ymacs-Theme-scintilla .Ymacs_Frame .regexp-starter { color: #8b008b; } 12 | .Ymacs-Theme-scintilla .Ymacs_Frame .regexp-stopper { color: #8b008b; } 13 | .Ymacs-Theme-scintilla .Ymacs_Frame .regexp-modifier { color: #8b008b; } 14 | .Ymacs-Theme-scintilla .Ymacs_Frame .keyword { color: #000080; } 15 | .Ymacs-Theme-scintilla .Ymacs_Frame .comment { color: #228b22; } 16 | .Ymacs-Theme-scintilla .Ymacs_Frame .mcomment { color: #228b22; } 17 | .Ymacs-Theme-scintilla .Ymacs_Frame .comment-starter { color: #b22222; } 18 | .Ymacs-Theme-scintilla .Ymacs_Frame .mcomment-starter { color: #b22222; } 19 | .Ymacs-Theme-scintilla .Ymacs_Frame .mcomment-stopper { color: #b22222; } 20 | .Ymacs-Theme-scintilla .Ymacs_Frame .number { color: #0000ff; } 21 | .Ymacs-Theme-scintilla .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-scintilla .Ymacs_Frame .error { color: #d02090; font-weight: bold; } 23 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-open-tag { color: #008b8b; } 24 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-close-tag { color: #008b8b; } 25 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-attribute { color: #008b8b; } 26 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-entity-starter { } 27 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-entity-stopper { } 28 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-entity { } 29 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-cdata { color: #228b22; } 33 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-cdata-starter { color: #b22222; } 34 | .Ymacs-Theme-scintilla .Ymacs_Frame .xml-cdata-stopper { color: #b22222; } 35 | .Ymacs-Theme-scintilla .Ymacs_Frame .lisp-keyword { color: #0000ff; } 36 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.207em; } 37 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 1.768em; } 38 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 2.110em; } 39 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.646em; } 40 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading5 { color: #9acd32; font-weight: bold; } 41 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-heading6 { color: #ffff00; background-color: #666666; font-weight: bold; } 42 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-blockquote { color: #228b22; } 43 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-blockquote1 { color: #228b22; } 44 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-blockquote2 { color: #228b22; } 45 | .Ymacs-Theme-scintilla .Ymacs_Frame .markdown-blockquote3 { color: #228b22; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-calm-forest.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-calm-forest .Ymacs_Frame { color: #00ff00; background-color: #1f1f1f; } 2 | .Ymacs-Theme-calm-forest .Ymacs_Frame .type { color: #98fb98; } 3 | .Ymacs-Theme-calm-forest .Ymacs_Frame .builtin { color: #b0c4de; } 4 | .Ymacs-Theme-calm-forest .Ymacs_Frame .function-name { color: #87cefa; } 5 | .Ymacs-Theme-calm-forest .Ymacs_Frame .variable-name { color: #eedd82; } 6 | .Ymacs-Theme-calm-forest .Ymacs_Frame .constant { color: #7fffd4; } 7 | .Ymacs-Theme-calm-forest .Ymacs_Frame .string { color: #ffa07a; } 8 | .Ymacs-Theme-calm-forest .Ymacs_Frame .string-starter { color: #ffa07a; } 9 | .Ymacs-Theme-calm-forest .Ymacs_Frame .string-stopper { color: #ffa07a; } 10 | .Ymacs-Theme-calm-forest .Ymacs_Frame .regexp { color: #ffa07a; } 11 | .Ymacs-Theme-calm-forest .Ymacs_Frame .regexp-starter { color: #ffa07a; } 12 | .Ymacs-Theme-calm-forest .Ymacs_Frame .regexp-stopper { color: #ffa07a; } 13 | .Ymacs-Theme-calm-forest .Ymacs_Frame .regexp-modifier { color: #ffa07a; } 14 | .Ymacs-Theme-calm-forest .Ymacs_Frame .keyword { color: #00ffff; } 15 | .Ymacs-Theme-calm-forest .Ymacs_Frame .comment { color: #ff7f24; } 16 | .Ymacs-Theme-calm-forest .Ymacs_Frame .mcomment { color: #ff7f24; } 17 | .Ymacs-Theme-calm-forest .Ymacs_Frame .comment-starter { color: #ff7f24; } 18 | .Ymacs-Theme-calm-forest .Ymacs_Frame .mcomment-starter { color: #ff7f24; } 19 | .Ymacs-Theme-calm-forest .Ymacs_Frame .mcomment-stopper { color: #ff7f24; } 20 | .Ymacs-Theme-calm-forest .Ymacs_Frame .number { color: #7fffd4; } 21 | .Ymacs-Theme-calm-forest .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-calm-forest .Ymacs_Frame .error { color: #ffc0cb; font-weight: bold; } 23 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-open-tag { color: #87cefa; } 24 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-close-tag { color: #87cefa; } 25 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-attribute { color: #eedd82; } 26 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-cdata { color: #ff7f24; } 33 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-cdata-starter { color: #ff7f24; } 34 | .Ymacs-Theme-calm-forest .Ymacs_Frame .xml-cdata-stopper { color: #ff7f24; } 35 | .Ymacs-Theme-calm-forest .Ymacs_Frame .lisp-keyword { color: #7fffd4; } 36 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading1 { font-size: 2.050em; } 37 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading2 { font-size: 2.050em; } 38 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading3 { font-size: 1.508em; } 39 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-blockquote { color: #ff7f24; } 43 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-blockquote1 { color: #ff7f24; } 44 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-blockquote2 { color: #ff7f24; } 45 | .Ymacs-Theme-calm-forest .Ymacs_Frame .markdown-blockquote3 { color: #ff7f24; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-classic.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-classic .Ymacs_Frame { color: #faebd7; background-color: #2f4f4f; } 2 | .Ymacs-Theme-classic .Ymacs_Frame .type { color: #7ccd7c; font-weight: bold; } 3 | .Ymacs-Theme-classic .Ymacs_Frame .builtin { color: #98fb98; font-weight: bold; } 4 | .Ymacs-Theme-classic .Ymacs_Frame .function-name { color: #63b8ff; font-weight: bold; } 5 | .Ymacs-Theme-classic .Ymacs_Frame .variable-name { color: #fff68f; } 6 | .Ymacs-Theme-classic .Ymacs_Frame .constant { color: #7fffd4; font-weight: bold; } 7 | .Ymacs-Theme-classic .Ymacs_Frame .string { color: #cd8162; } 8 | .Ymacs-Theme-classic .Ymacs_Frame .string-starter { color: #cd8162; } 9 | .Ymacs-Theme-classic .Ymacs_Frame .string-stopper { color: #cd8162; } 10 | .Ymacs-Theme-classic .Ymacs_Frame .regexp { color: #cd8162; } 11 | .Ymacs-Theme-classic .Ymacs_Frame .regexp-starter { color: #cd8162; } 12 | .Ymacs-Theme-classic .Ymacs_Frame .regexp-stopper { color: #cd8162; } 13 | .Ymacs-Theme-classic .Ymacs_Frame .regexp-modifier { color: #cd8162; } 14 | .Ymacs-Theme-classic .Ymacs_Frame .keyword { color: #00ffff; font-weight: bold; } 15 | .Ymacs-Theme-classic .Ymacs_Frame .comment { color: #cd4f39; } 16 | .Ymacs-Theme-classic .Ymacs_Frame .mcomment { color: #cd4f39; } 17 | .Ymacs-Theme-classic .Ymacs_Frame .comment-starter { color: #cd4f39; } 18 | .Ymacs-Theme-classic .Ymacs_Frame .mcomment-starter { color: #cd4f39; } 19 | .Ymacs-Theme-classic .Ymacs_Frame .mcomment-stopper { color: #cd4f39; } 20 | .Ymacs-Theme-classic .Ymacs_Frame .number { color: #7fffd4; font-weight: bold; } 21 | .Ymacs-Theme-classic .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-classic .Ymacs_Frame .error { color: #cd5c5c; font-weight: bold; } 23 | .Ymacs-Theme-classic .Ymacs_Frame .xml-open-tag { color: #63b8ff; font-weight: bold; } 24 | .Ymacs-Theme-classic .Ymacs_Frame .xml-close-tag { color: #63b8ff; font-weight: bold; } 25 | .Ymacs-Theme-classic .Ymacs_Frame .xml-attribute { color: #fff68f; } 26 | .Ymacs-Theme-classic .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-classic .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-classic .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-classic .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-classic .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-classic .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-classic .Ymacs_Frame .xml-cdata { color: #cd4f39; } 33 | .Ymacs-Theme-classic .Ymacs_Frame .xml-cdata-starter { color: #cd4f39; } 34 | .Ymacs-Theme-classic .Ymacs_Frame .xml-cdata-stopper { color: #cd4f39; } 35 | .Ymacs-Theme-classic .Ymacs_Frame .lisp-keyword { color: #7fffd4; font-weight: bold; } 36 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading1 { font-size: 1.717em; } 37 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading2 { font-size: 1.400em; } 38 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading3 { font-size: 1.175em; } 39 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading5 { color: #f5f5dc; font-weight: bold; } 41 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-heading6 { color: #f5deb3; font-weight: bold; } 42 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-blockquote { color: #cd4f39; } 43 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-blockquote1 { color: #cd4f39; } 44 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-blockquote2 { color: #cd4f39; } 45 | .Ymacs-Theme-classic .Ymacs_Frame .markdown-blockquote3 { color: #cd4f39; } 46 | -------------------------------------------------------------------------------- /lisp/arch-browser.lisp: -------------------------------------------------------------------------------- 1 | ;;;;; Browser-specific Lisp code 2 | 3 | ;;; This code is not very well thought out. 4 | 5 | (def #'node:require $require) 6 | 7 | ;;;; DOM 8 | 9 | (defun get-element-by-id (id) 10 | (the string id) 11 | (@getElementById $document id)) 12 | 13 | (defun create-element (tag) 14 | (the string tag) 15 | (@createElement $document tag)) 16 | 17 | (defun create-text-node (text) 18 | (the string text) 19 | (@createTextNode $document text)) 20 | 21 | ;;;; Browser streams 22 | 23 | (defstruct browser-stream 24 | id) 25 | 26 | (def -browser-stream-counter- -1) 27 | 28 | (defun make-browser-stream () 29 | (make-instance 'browser-stream :id (incf -browser-stream-counter-))) 30 | 31 | (defmethod read-string-from-stream ((stream browser-stream)) 32 | (if $Ymacs 33 | (take-subcont +user-prompt+ k 34 | (setq -the-continuation- k)) 35 | (the string ($prompt "LISP input")))) 36 | (defmethod write-string-to-stream ((stream browser-stream) string) 37 | (if $Ymacs 38 | (@_insertText -the-buffer- string) 39 | (log string))) 40 | 41 | ;;;; Ymacs mode 42 | 43 | (def -the-continuation- #void) 44 | (def -the-buffer- #void) 45 | 46 | ;;; FIXME: Disable if Ymacs is not defined... but then reading and 47 | ;;; printing will not work, so should probably WARN, or offer 48 | ;;; fallback. 49 | (when $Ymacs 50 | ($DEFINE_SINGLETON "Qua_Keymap_REPL" $Ymacs_Keymap 51 | (js-lambda (#ign D P . #ign) 52 | (setf (.KEYS D) 53 | (js-object 54 | :ENTER "qua_repl_enter")))) 55 | 56 | (@newMode $Ymacs_Buffer "qua_repl_mode" 57 | (js-lambda (this . #ign) 58 | (let ((keymap ($Qua_Keymap_REPL))) 59 | (@pushKeymap this keymap) 60 | (js-lambda (this . #ign) 61 | (@popKeymap this keymap))))) 62 | 63 | (@newCommands $Ymacs_Buffer 64 | (js-object 65 | :qua_repl_enter 66 | ($Ymacs_Interactive 67 | (js-lambda (this . #ign) 68 | (let* ((pos (@point this)) 69 | (rc (._rowcol this)) 70 | (line (js-get (.code this) (.row rc)))) 71 | (@cmd this "insert" "\n") 72 | (push-prompt-subcont +user-prompt+ -the-continuation- 73 | line)))))) 74 | 75 | (def repl-buffer (js-new $Ymacs_Buffer (js-object :name "Qua REPL"))) 76 | (@setCode repl-buffer "") 77 | (@cmd repl-buffer "qua_repl_mode") 78 | (def -the-buffer- repl-buffer) 79 | (def ymacs (js-new $Ymacs (js-object :buffers (js-array repl-buffer)))) 80 | (@setColorTheme ymacs (js-array "dark" "y")) 81 | (def dialog (js-new $DlDialog (js-object :title "Qua REPL" :resizable #t))) 82 | (def layout (js-new $DlLayout (js-object :parent dialog))) 83 | (@packWidget layout ymacs (js-object :pos "bottom" :fill "*")) 84 | (setf (._focusedWidget dialog) ymacs) 85 | (@setSize dialog (js-object :x 1024 :y 768)) 86 | (@show dialog #t) 87 | (@maximize dialog #t)) 88 | 89 | ;;;; stdin/stdout 90 | 91 | (defconstant +default-browser-stream+ (make-browser-stream)) 92 | 93 | (defun %arch-standard-input () +default-browser-stream+) 94 | (defun %arch-standard-output () +default-browser-stream+) 95 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-bharadwaj.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-bharadwaj .Ymacs_Frame { color: #000000; background-color: #dcdcdc; } 2 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .type { color: #36648b; } 3 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .builtin { color: #228b22; } 4 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .function-name { color: #6a5acd; font-weight: bold; } 5 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .variable-name { color: #b8860b; } 6 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .constant { color: #6b8e23; } 7 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .string { color: #8b0000; } 8 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .string-starter { color: #8b0000; } 9 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .string-stopper { color: #8b0000; } 10 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .regexp { color: #8b0000; } 11 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .regexp-starter { color: #8b0000; } 12 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .regexp-stopper { color: #8b0000; } 13 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .regexp-modifier { color: #8b0000; } 14 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .keyword { color: #00008b; } 15 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .comment { color: #8c8c8c; } 16 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .mcomment { color: #8c8c8c; } 17 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .comment-starter { color: #b22222; } 18 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .mcomment-starter { color: #b22222; } 19 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .mcomment-stopper { color: #b22222; } 20 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .number { color: #6b8e23; } 21 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .error { color: #d02090; font-weight: bold; } 23 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-open-tag { color: #6a5acd; font-weight: bold; } 24 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-close-tag { color: #6a5acd; font-weight: bold; } 25 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-attribute { color: #b8860b; } 26 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-entity-starter { color: #6b8e23; } 27 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-entity-stopper { color: #6b8e23; } 28 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-entity { color: #6b8e23; } 29 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-cdata { color: #8c8c8c; } 33 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-cdata-starter { color: #b22222; } 34 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .xml-cdata-stopper { color: #b22222; } 35 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .lisp-keyword { color: #6b8e23; } 36 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.207em; } 37 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 1.768em; } 38 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 2.110em; } 39 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.646em; } 40 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-blockquote { color: #8c8c8c; } 43 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-blockquote1 { color: #8c8c8c; } 44 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-blockquote2 { color: #8c8c8c; } 45 | .Ymacs-Theme-bharadwaj .Ymacs_Frame .markdown-blockquote3 { color: #8c8c8c; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-standard-dark.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-standard-dark .Ymacs_Frame { color: #bebebe; background-color: #262626; } 2 | .Ymacs-Theme-standard-dark .Ymacs_Frame .type { color: #98fb98; } 3 | .Ymacs-Theme-standard-dark .Ymacs_Frame .builtin { color: #b0c4de; } 4 | .Ymacs-Theme-standard-dark .Ymacs_Frame .function-name { color: #87cefa; } 5 | .Ymacs-Theme-standard-dark .Ymacs_Frame .variable-name { color: #eedd82; } 6 | .Ymacs-Theme-standard-dark .Ymacs_Frame .constant { color: #7fffd4; } 7 | .Ymacs-Theme-standard-dark .Ymacs_Frame .string { color: #ffa07a; } 8 | .Ymacs-Theme-standard-dark .Ymacs_Frame .string-starter { color: #ffa07a; } 9 | .Ymacs-Theme-standard-dark .Ymacs_Frame .string-stopper { color: #ffa07a; } 10 | .Ymacs-Theme-standard-dark .Ymacs_Frame .regexp { color: #ffa07a; } 11 | .Ymacs-Theme-standard-dark .Ymacs_Frame .regexp-starter { color: #ffa07a; } 12 | .Ymacs-Theme-standard-dark .Ymacs_Frame .regexp-stopper { color: #ffa07a; } 13 | .Ymacs-Theme-standard-dark .Ymacs_Frame .regexp-modifier { color: #ffa07a; } 14 | .Ymacs-Theme-standard-dark .Ymacs_Frame .keyword { color: #00ffff; } 15 | .Ymacs-Theme-standard-dark .Ymacs_Frame .comment { color: #ff7f24; } 16 | .Ymacs-Theme-standard-dark .Ymacs_Frame .mcomment { color: #ff7f24; } 17 | .Ymacs-Theme-standard-dark .Ymacs_Frame .comment-starter { color: #ff7f24; } 18 | .Ymacs-Theme-standard-dark .Ymacs_Frame .mcomment-starter { color: #ff7f24; } 19 | .Ymacs-Theme-standard-dark .Ymacs_Frame .mcomment-stopper { color: #ff7f24; } 20 | .Ymacs-Theme-standard-dark .Ymacs_Frame .number { color: #7fffd4; } 21 | .Ymacs-Theme-standard-dark .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-standard-dark .Ymacs_Frame .error { color: #ffc0cb; font-weight: bold; } 23 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-open-tag { color: #87cefa; } 24 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-close-tag { color: #87cefa; } 25 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-attribute { color: #eedd82; } 26 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-cdata { color: #ff7f24; } 33 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-cdata-starter { color: #ff7f24; } 34 | .Ymacs-Theme-standard-dark .Ymacs_Frame .xml-cdata-stopper { color: #ff7f24; } 35 | .Ymacs-Theme-standard-dark .Ymacs_Frame .lisp-keyword { color: #b0c4de; } 36 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading1 { font-size: 1.711em; } 37 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading2 { font-size: 1.434em; } 38 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading3 { font-size: 1.211em; } 39 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-blockquote { color: #ff7f24; } 43 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-blockquote1 { color: #ff7f24; } 44 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-blockquote2 { color: #ff7f24; } 45 | .Ymacs-Theme-standard-dark .Ymacs_Frame .markdown-blockquote3 { color: #ff7f24; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-vim-colors.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-vim-colors .Ymacs_Frame { color: #000000; background-color: #fefefe; } 2 | .Ymacs-Theme-vim-colors .Ymacs_Frame .type { color: #228b22; } 3 | .Ymacs-Theme-vim-colors .Ymacs_Frame .builtin { color: #a020f0; } 4 | .Ymacs-Theme-vim-colors .Ymacs_Frame .function-name { color: #008a8a; } 5 | .Ymacs-Theme-vim-colors .Ymacs_Frame .variable-name { color: #008a8a; } 6 | .Ymacs-Theme-vim-colors .Ymacs_Frame .constant { color: #008b00; } 7 | .Ymacs-Theme-vim-colors .Ymacs_Frame .string { color: #fe00fe; background-color: #f1f1f1; } 8 | .Ymacs-Theme-vim-colors .Ymacs_Frame .string-starter { color: #fe00fe; background-color: #f1f1f1; } 9 | .Ymacs-Theme-vim-colors .Ymacs_Frame .string-stopper { color: #fe00fe; background-color: #f1f1f1; } 10 | .Ymacs-Theme-vim-colors .Ymacs_Frame .regexp { color: #fe00fe; background-color: #f1f1f1; } 11 | .Ymacs-Theme-vim-colors .Ymacs_Frame .regexp-starter { color: #fe00fe; background-color: #f1f1f1; } 12 | .Ymacs-Theme-vim-colors .Ymacs_Frame .regexp-stopper { color: #fe00fe; background-color: #f1f1f1; } 13 | .Ymacs-Theme-vim-colors .Ymacs_Frame .regexp-modifier { color: #fe00fe; background-color: #f1f1f1; } 14 | .Ymacs-Theme-vim-colors .Ymacs_Frame .keyword { color: #a42929; font-weight: bold; } 15 | .Ymacs-Theme-vim-colors .Ymacs_Frame .comment { color: #0000ff; } 16 | .Ymacs-Theme-vim-colors .Ymacs_Frame .mcomment { color: #0000ff; } 17 | .Ymacs-Theme-vim-colors .Ymacs_Frame .comment-starter { color: #0000ff; } 18 | .Ymacs-Theme-vim-colors .Ymacs_Frame .mcomment-starter { color: #0000ff; } 19 | .Ymacs-Theme-vim-colors .Ymacs_Frame .mcomment-stopper { color: #0000ff; } 20 | .Ymacs-Theme-vim-colors .Ymacs_Frame .number { color: #008b00; } 21 | .Ymacs-Theme-vim-colors .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-vim-colors .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-open-tag { color: #008a8a; } 24 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-close-tag { color: #008a8a; } 25 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-attribute { color: #008a8a; } 26 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-entity-starter { color: #008b00; } 27 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-entity-stopper { color: #008b00; } 28 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-entity { color: #008b00; } 29 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-cdata { color: #0000ff; } 33 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-cdata-starter { color: #0000ff; } 34 | .Ymacs-Theme-vim-colors .Ymacs_Frame .xml-cdata-stopper { color: #0000ff; } 35 | .Ymacs-Theme-vim-colors .Ymacs_Frame .lisp-keyword { color: #008b00; } 36 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading1 { font-size: 1.717em; } 37 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading2 { font-size: 1.400em; } 38 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading3 { font-size: 1.175em; } 39 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-blockquote { color: #0000ff; } 43 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-blockquote1 { color: #0000ff; } 44 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-blockquote2 { color: #0000ff; } 45 | .Ymacs-Theme-vim-colors .Ymacs_Frame .markdown-blockquote3 { color: #0000ff; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-blue-mood.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-blue-mood .Ymacs_Frame { color: #f5f5f5; background-color: #104e8b; } 2 | .Ymacs-Theme-blue-mood .Ymacs_Frame .type { color: #ffd700; font-weight: bold; } 3 | .Ymacs-Theme-blue-mood .Ymacs_Frame .builtin { color: #f5deb3; font-weight: bold; } 4 | .Ymacs-Theme-blue-mood .Ymacs_Frame .function-name { color: #7fff00; font-weight: bold; } 5 | .Ymacs-Theme-blue-mood .Ymacs_Frame .variable-name { color: #ffffe0; font-weight: bold; } 6 | .Ymacs-Theme-blue-mood .Ymacs_Frame .constant { color: #00cdcd; font-weight: bold; } 7 | .Ymacs-Theme-blue-mood .Ymacs_Frame .string { color: #ff6347; } 8 | .Ymacs-Theme-blue-mood .Ymacs_Frame .string-starter { color: #ff6347; } 9 | .Ymacs-Theme-blue-mood .Ymacs_Frame .string-stopper { color: #ff6347; } 10 | .Ymacs-Theme-blue-mood .Ymacs_Frame .regexp { color: #ff6347; } 11 | .Ymacs-Theme-blue-mood .Ymacs_Frame .regexp-starter { color: #ff6347; } 12 | .Ymacs-Theme-blue-mood .Ymacs_Frame .regexp-stopper { color: #ff6347; } 13 | .Ymacs-Theme-blue-mood .Ymacs_Frame .regexp-modifier { color: #ff6347; } 14 | .Ymacs-Theme-blue-mood .Ymacs_Frame .keyword { color: #ffd700; font-weight: bold; } 15 | .Ymacs-Theme-blue-mood .Ymacs_Frame .comment { color: #b8b8b8; font-weight: bold; } 16 | .Ymacs-Theme-blue-mood .Ymacs_Frame .mcomment { color: #b8b8b8; font-weight: bold; } 17 | .Ymacs-Theme-blue-mood .Ymacs_Frame .comment-starter { color: #b8b8b8; } 18 | .Ymacs-Theme-blue-mood .Ymacs_Frame .mcomment-starter { color: #b8b8b8; } 19 | .Ymacs-Theme-blue-mood .Ymacs_Frame .mcomment-stopper { color: #b8b8b8; } 20 | .Ymacs-Theme-blue-mood .Ymacs_Frame .number { color: #00cdcd; font-weight: bold; } 21 | .Ymacs-Theme-blue-mood .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-blue-mood .Ymacs_Frame .error { color: #ff6347; font-weight: bold; } 23 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-open-tag { color: #7fff00; font-weight: bold; } 24 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-close-tag { color: #7fff00; font-weight: bold; } 25 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-attribute { color: #ffffe0; font-weight: bold; } 26 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-entity-starter { color: #00cdcd; } 27 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-entity-stopper { color: #00cdcd; } 28 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-entity { color: #00cdcd; } 29 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-cdata { color: #b8b8b8; font-weight: bold; } 33 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-cdata-starter { color: #b8b8b8; } 34 | .Ymacs-Theme-blue-mood .Ymacs_Frame .xml-cdata-stopper { color: #b8b8b8; } 35 | .Ymacs-Theme-blue-mood .Ymacs_Frame .lisp-keyword { color: #00cdcd; font-weight: bold; } 36 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading1 { font-size: 2.050em; } 37 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading2 { font-size: 2.050em; } 38 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading3 { font-size: 1.508em; } 39 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading5 { } 41 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-blockquote { color: #b8b8b8; font-weight: bold; } 43 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-blockquote1 { color: #b8b8b8; font-weight: bold; } 44 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-blockquote2 { color: #b8b8b8; font-weight: bold; } 45 | .Ymacs-Theme-blue-mood .Ymacs_Frame .markdown-blockquote3 { color: #b8b8b8; font-weight: bold; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-standard-xemacs.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame { color: #000000; background-color: #cccccc; } 2 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .type { color: #4682b4; } 3 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .builtin { color: #cd0000; } 4 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .function-name { color: #8b2323; } 5 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .variable-name { color: #8b008b; } 6 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .constant { color: #cd0000; } 7 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .string { color: #008b00; } 8 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .string-starter { color: #008b00; } 9 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .string-stopper { color: #008b00; } 10 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .regexp { color: #008b00; } 11 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .regexp-starter { color: #008b00; } 12 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .regexp-stopper { color: #008b00; } 13 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .regexp-modifier { color: #008b00; } 14 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .keyword { color: #8b0000; } 15 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .comment { color: #00008b; } 16 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .mcomment { color: #00008b; } 17 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .comment-starter { color: #00008b; } 18 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .mcomment-starter { color: #00008b; } 19 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .mcomment-stopper { color: #00008b; } 20 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .number { color: #cd0000; } 21 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-open-tag { color: #8b2323; } 24 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-close-tag { color: #8b2323; } 25 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-attribute { color: #8b008b; } 26 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-entity-starter { color: #cd0000; } 27 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-entity-stopper { color: #cd0000; } 28 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-entity { color: #cd0000; } 29 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-cdata { color: #00008b; } 33 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-cdata-starter { color: #00008b; } 34 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .xml-cdata-stopper { color: #00008b; } 35 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .lisp-keyword { color: #cd0000; } 36 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-blockquote { color: #00008b; } 43 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-blockquote1 { color: #00008b; } 44 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-blockquote2 { color: #00008b; } 45 | .Ymacs-Theme-standard-xemacs .Ymacs_Frame .markdown-blockquote3 { color: #00008b; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-gtk-ide.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-gtk-ide .Ymacs_Frame { color: #000000; background-color: #ffffff; } 2 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .type { color: #36648b; font-weight: bold; } 3 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .builtin { color: #228b22; font-weight: bold; } 4 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .function-name { color: #6a5acd; font-weight: bold; } 5 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .variable-name { color: #b8860b; font-weight: bold; } 6 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .constant { color: #6b8e23; font-weight: bold; } 7 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .string { color: #8b0000; font-weight: bold; } 8 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .string-starter { color: #8b0000; font-weight: bold; } 9 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .string-stopper { color: #8b0000; font-weight: bold; } 10 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .regexp { color: #8b0000; font-weight: bold; } 11 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .regexp-starter { color: #8b0000; font-weight: bold; } 12 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .regexp-stopper { color: #8b0000; font-weight: bold; } 13 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .regexp-modifier { color: #8b0000; font-weight: bold; } 14 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .keyword { color: #00008b; font-weight: bold; } 15 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .comment { color: #8c8c8c; font-weight: bold; } 16 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .mcomment { color: #8c8c8c; font-weight: bold; } 17 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .comment-starter { color: #8c8c8c; } 18 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .mcomment-starter { color: #8c8c8c; } 19 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .mcomment-stopper { color: #8c8c8c; } 20 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .number { color: #6b8e23; font-weight: bold; } 21 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .error { color: #d02090; font-weight: bold; } 23 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-open-tag { color: #6a5acd; font-weight: bold; } 24 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-close-tag { color: #6a5acd; font-weight: bold; } 25 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-attribute { color: #b8860b; font-weight: bold; } 26 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-entity-starter { color: #6b8e23; } 27 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-entity-stopper { color: #6b8e23; } 28 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-entity { color: #6b8e23; } 29 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-cdata { color: #8c8c8c; font-weight: bold; } 33 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-cdata-starter { color: #8c8c8c; } 34 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .xml-cdata-stopper { color: #8c8c8c; } 35 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .lisp-keyword { color: #6b8e23; font-weight: bold; } 36 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading1 { font-size: 1.717em; } 37 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading2 { font-size: 1.400em; } 38 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading3 { font-size: 1.175em; } 39 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-blockquote { color: #8c8c8c; font-weight: bold; } 43 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-blockquote1 { color: #8c8c8c; font-weight: bold; } 44 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-blockquote2 { color: #8c8c8c; font-weight: bold; } 45 | .Ymacs-Theme-gtk-ide .Ymacs_Frame .markdown-blockquote3 { color: #8c8c8c; font-weight: bold; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-charcoal-black.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-charcoal-black .Ymacs_Frame { color: #bebebe; background-color: #262626; } 2 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .type { color: #87ceeb; font-weight: bold; } 3 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .builtin { color: #7fffd4; } 4 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .function-name { color: #7fffd4; font-weight: bold; } 5 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .variable-name { color: #40e0d0; font-weight: bold; } 6 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .constant { color: #98fb98; } 7 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .string { color: #87cefa; } 8 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .string-starter { color: #87cefa; } 9 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .string-stopper { color: #87cefa; } 10 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .regexp { color: #87cefa; } 11 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .regexp-starter { color: #87cefa; } 12 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .regexp-stopper { color: #87cefa; } 13 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .regexp-modifier { color: #87cefa; } 14 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .keyword { color: #afeeee; font-weight: bold; } 15 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .comment { color: #add8e6; } 16 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .mcomment { color: #add8e6; } 17 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .comment-starter { color: #add8e6; } 18 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .mcomment-starter { color: #add8e6; } 19 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .mcomment-stopper { color: #add8e6; } 20 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .number { color: #98fb98; } 21 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-open-tag { color: #7fffd4; font-weight: bold; } 24 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-close-tag { color: #7fffd4; font-weight: bold; } 25 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-attribute { color: #40e0d0; font-weight: bold; } 26 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-entity-starter { color: #98fb98; } 27 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-entity-stopper { color: #98fb98; } 28 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-entity { color: #98fb98; } 29 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-cdata { color: #add8e6; } 33 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-cdata-starter { color: #add8e6; } 34 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .xml-cdata-stopper { color: #add8e6; } 35 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .lisp-keyword { color: #98fb98; } 36 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading5 { color: #f5f5dc; font-weight: bold; } 41 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-blockquote { color: #add8e6; } 43 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-blockquote1 { color: #add8e6; } 44 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-blockquote2 { color: #add8e6; } 45 | .Ymacs-Theme-charcoal-black .Ymacs_Frame .markdown-blockquote3 { color: #add8e6; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-clarity-and-beauty.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame { color: #ffffff; background-color: #000000; } 2 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .type { color: #98fb98; font-weight: bold; } 3 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .builtin { color: #b0c4de; } 4 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .function-name { color: #87cefa; font-weight: bold; } 5 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .variable-name { color: #eedd82; font-weight: bold; } 6 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .constant { color: #7fffd4; } 7 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .string { color: #ffa07a; } 8 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .string-starter { color: #ffa07a; } 9 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .string-stopper { color: #ffa07a; } 10 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .regexp { color: #ffa07a; } 11 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .regexp-starter { color: #ffa07a; } 12 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .regexp-stopper { color: #ffa07a; } 13 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .regexp-modifier { color: #ffa07a; } 14 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .keyword { color: #00ffff; } 15 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .comment { color: #ff4500; } 16 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .mcomment { color: #ff4500; } 17 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .comment-starter { color: #ff4500; } 18 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .mcomment-starter { color: #ff4500; } 19 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .mcomment-stopper { color: #ff4500; } 20 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .number { color: #7fffd4; } 21 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .error { color: #ffc0cb; font-weight: bold; } 23 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-open-tag { color: #87cefa; font-weight: bold; } 24 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-close-tag { color: #87cefa; font-weight: bold; } 25 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-attribute { color: #eedd82; font-weight: bold; } 26 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-entity-starter { color: #7fffd4; } 27 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-entity-stopper { color: #7fffd4; } 28 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-entity { color: #7fffd4; } 29 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-cdata { color: #ff4500; } 33 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-cdata-starter { color: #ff4500; } 34 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .xml-cdata-stopper { color: #ff4500; } 35 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .lisp-keyword { color: #7fffd4; } 36 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading1 { font-size: 2.050em; } 37 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading2 { font-size: 2.050em; } 38 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading3 { font-size: 1.508em; } 39 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading5 { color: #e6e6fa; font-weight: bold; } 41 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-blockquote { color: #ff4500; } 43 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-blockquote1 { color: #ff4500; } 44 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-blockquote2 { color: #ff4500; } 45 | .Ymacs-Theme-clarity-and-beauty .Ymacs_Frame .markdown-blockquote3 { color: #ff4500; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-linh-dang-dark.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame { color: #ffffff; background-color: #000000; } 2 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .type { color: #98fb98; font-weight: bold; font-size: 0.908em; } 3 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .builtin { color: #4682b4; font-weight: bold; } 4 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .function-name { color: #87cefa; font-weight: bold; font-size: 0.908em; } 5 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .variable-name { color: #7fffd4; font-weight: bold; } 6 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .constant { color: #ffd700; font-weight: bold; } 7 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .string { color: #deb887; } 8 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .string-starter { color: #deb887; } 9 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .string-stopper { color: #deb887; } 10 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .regexp { color: #deb887; } 11 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .regexp-starter { color: #deb887; } 12 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .regexp-stopper { color: #deb887; } 13 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .regexp-modifier { color: #deb887; } 14 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .keyword { color: #87cefa; } 15 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .comment { color: #cdc0b0; } 16 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .mcomment { color: #cdc0b0; } 17 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .comment-starter { color: #cdc0b0; } 18 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .mcomment-starter { color: #cdc0b0; } 19 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .mcomment-stopper { color: #cdc0b0; } 20 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .number { color: #ffd700; font-weight: bold; } 21 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .error { color: #d2691e; font-weight: bold; } 23 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-open-tag { color: #87cefa; font-weight: bold; font-size: 0.908em; } 24 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-close-tag { color: #87cefa; font-weight: bold; font-size: 0.908em; } 25 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-attribute { color: #7fffd4; font-weight: bold; } 26 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-entity-starter { color: #ffd700; } 27 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-entity-stopper { color: #ffd700; } 28 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-entity { color: #ffd700; } 29 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-cdata { color: #cdc0b0; } 33 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-cdata-starter { color: #cdc0b0; } 34 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .xml-cdata-stopper { color: #cdc0b0; } 35 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .lisp-keyword { color: #ffd700; font-weight: bold; } 36 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading1 { font-weight: bold; font-size: 2.050em; } 37 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading2 { font-weight: bold; font-size: 2.050em; } 38 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading3 { font-weight: bold; font-size: 1.508em; } 39 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading4 { font-weight: bold; font-size: 1.925em; } 40 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading5 { color: #8b0000; font-weight: bold; } 41 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-blockquote { color: #cdc0b0; } 43 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-blockquote1 { color: #cdc0b0; } 44 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-blockquote2 { color: #cdc0b0; } 45 | .Ymacs-Theme-linh-dang-dark .Ymacs_Frame .markdown-blockquote3 { color: #cdc0b0; } 46 | -------------------------------------------------------------------------------- /repl/ymacs/css/themes/emacs-high-contrast.css: -------------------------------------------------------------------------------- 1 | .Ymacs-Theme-high-contrast .Ymacs_Frame { color: #000000; background-color: #ffffff; } 2 | .Ymacs-Theme-high-contrast .Ymacs_Frame .type { color: #228b22; font-weight: bold; } 3 | .Ymacs-Theme-high-contrast .Ymacs_Frame .builtin { color: #ff0000; font-weight: bold; } 4 | .Ymacs-Theme-high-contrast .Ymacs_Frame .function-name { color: #0000ff; font-weight: bold; } 5 | .Ymacs-Theme-high-contrast .Ymacs_Frame .variable-name { color: #b8860b; font-weight: bold; } 6 | .Ymacs-Theme-high-contrast .Ymacs_Frame .constant { color: #0000ff; font-weight: bold; } 7 | .Ymacs-Theme-high-contrast .Ymacs_Frame .string { color: #006400; font-weight: bold; } 8 | .Ymacs-Theme-high-contrast .Ymacs_Frame .string-starter { color: #006400; font-weight: bold; } 9 | .Ymacs-Theme-high-contrast .Ymacs_Frame .string-stopper { color: #006400; font-weight: bold; } 10 | .Ymacs-Theme-high-contrast .Ymacs_Frame .regexp { color: #006400; font-weight: bold; } 11 | .Ymacs-Theme-high-contrast .Ymacs_Frame .regexp-starter { color: #006400; font-weight: bold; } 12 | .Ymacs-Theme-high-contrast .Ymacs_Frame .regexp-stopper { color: #006400; font-weight: bold; } 13 | .Ymacs-Theme-high-contrast .Ymacs_Frame .regexp-modifier { color: #006400; font-weight: bold; } 14 | .Ymacs-Theme-high-contrast .Ymacs_Frame .keyword { color: #a020f0; font-weight: bold; } 15 | .Ymacs-Theme-high-contrast .Ymacs_Frame .comment { color: #b22222; font-weight: bold; } 16 | .Ymacs-Theme-high-contrast .Ymacs_Frame .mcomment { color: #b22222; font-weight: bold; } 17 | .Ymacs-Theme-high-contrast .Ymacs_Frame .comment-starter { color: #b22222; } 18 | .Ymacs-Theme-high-contrast .Ymacs_Frame .mcomment-starter { color: #b22222; } 19 | .Ymacs-Theme-high-contrast .Ymacs_Frame .mcomment-stopper { color: #b22222; } 20 | .Ymacs-Theme-high-contrast .Ymacs_Frame .number { color: #0000ff; font-weight: bold; } 21 | .Ymacs-Theme-high-contrast .Ymacs_Frame .operator { } 22 | .Ymacs-Theme-high-contrast .Ymacs_Frame .error { color: #ff0000; font-weight: bold; } 23 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-open-tag { color: #0000ff; font-weight: bold; } 24 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-close-tag { color: #0000ff; font-weight: bold; } 25 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-attribute { color: #b8860b; font-weight: bold; } 26 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-entity-starter { color: #0000ff; } 27 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-entity-stopper { color: #0000ff; } 28 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-entity { color: #0000ff; } 29 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-open-bracket { } 30 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-close-bracket { } 31 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-closetag-slash { } 32 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-cdata { color: #b22222; font-weight: bold; } 33 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-cdata-starter { color: #b22222; } 34 | .Ymacs-Theme-high-contrast .Ymacs_Frame .xml-cdata-stopper { color: #b22222; } 35 | .Ymacs-Theme-high-contrast .Ymacs_Frame .lisp-keyword { color: #0000ff; font-weight: bold; } 36 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading1 { font-size: 1.717em; } 37 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading2 { font-size: 1.400em; } 38 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading3 { font-size: 1.175em; } 39 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading4 { font-weight: bold; } 40 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading5 { font-weight: bold; } 41 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-heading6 { font-weight: bold; } 42 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-blockquote { color: #b22222; font-weight: bold; } 43 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-blockquote1 { color: #b22222; font-weight: bold; } 44 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-blockquote2 { color: #b22222; font-weight: bold; } 45 | .Ymacs-Theme-high-contrast .Ymacs_Frame .markdown-blockquote3 { color: #b22222; font-weight: bold; } 46 | -------------------------------------------------------------------------------- /repl/dl/new-theme/basedefs.scss: -------------------------------------------------------------------------------- 1 | /* Part of DynarchLIB 2 | Copyright (c) Dynarch.com 2005-2009. All rights reserved. 3 | See http://www.dynarchlib.com/licensing for details. */ 4 | 5 | // BEGIN: Main colors (SASS) 6 | $mainFg: #000; 7 | $mainBg: #c8c8d8; 8 | $focusBorder: #e8a850; 9 | $focusBorderD1: darken($focusBorder, 10%); 10 | $focusBorderD2: darken($focusBorder, 20%); 11 | $focusBorderD3: darken($focusBorder, 30%); 12 | $focusBg: #fff8dd; 13 | $disabledColor: #88888f; 14 | $selectionBg: #80b9ff; 15 | $selectionFg: #000; 16 | $errorBg: #ff2600; 17 | $errorBgL2: lighten($errorBg, 30%); 18 | $errorBgL3: lighten($errorBg, 40%); 19 | $errorFg: #fff; 20 | $mainBgL1: lighten($mainBg, 5%); 21 | $mainBgL2: lighten($mainBg, 10%); 22 | $mainBgL3: lighten($mainBg, 20%); 23 | $mainBgD1: darken($mainBg, 5%); 24 | $mainBgD2: darken($mainBg, 15%); 25 | $mainBgD3: darken($mainBg, 30%); 26 | $mainBgD4: darken($mainBg, 40%); 27 | $readOnlyBg: $mainBgL1; 28 | $hoverBg: $mainBgL2; 29 | $hoverColor: $mainFg; 30 | $activeBg: $selectionBg; 31 | $activeBgS1: saturate($activeBg, 30%); 32 | $activeColor: #000; 33 | $activeBg2: #222; 34 | $activeColor2: #fff; 35 | $dialogBg: $mainBgL1; 36 | $linkHoverFg: darken($selectionBg, 20%); 37 | $importantFg: #dd2200; 38 | $btnOnBg: #fcb587; 39 | // END: main colors 40 | 41 | // BEGIN: defs 42 | @mixin base-font { 43 | font: 12px "Droid Sans","Lucida Grande",Tahoma,"Lucida Sans","Trebuchet MS",Tahoma,Verdana,sans-serif; 44 | } 45 | @mixin outset-border1 { 46 | border-color: $mainBgD2 $mainBgD3 $mainBgD3 $mainBgD2; 47 | } 48 | @mixin outset-border2 { 49 | border-color: $mainBgL3 $mainBgD2 $mainBgD2 $mainBgL3; 50 | } 51 | @mixin inset-border1 { 52 | border-color: $mainBgD3 $mainBgD2 $mainBgD2 $mainBgD3; 53 | } 54 | @mixin inset-border2 { 55 | border-color: $mainBgD1 $mainBgL3 $mainBgL3 $mainBgD1; 56 | } 57 | @mixin pressed-border1 { 58 | border-color: $mainBgD3 $mainBgD2 $mainBgD2 $mainBgD3; 59 | } 60 | @mixin pressed-border2 { 61 | border-color: $mainBgD1 $mainBgL1 $mainBgL1 $mainBgD1; 62 | } 63 | @mixin focus-border1 { 64 | border-color: $mainBgD3 $mainBgD4 $mainBgD4 $mainBgD3; 65 | } 66 | 67 | @mixin border-radius($radius) { 68 | -moz-border-radius: $radius; 69 | -webkit-border-radius: $radius; 70 | -o-border-radius: $radius; 71 | -khtml-border-radius: $radius; 72 | -ms-border-radius: $radius; 73 | border-radius: $radius; 74 | } 75 | @mixin outline-radius($radius) { 76 | -moz-outline-radius: $radius; 77 | -webkit-outline-radius: $radius; 78 | -o-outline-radius: $radius; 79 | -khtml-outline-radius: $radius; 80 | -ms-outline-radius: $radius; 81 | outline-radius: $radius; 82 | } 83 | @mixin box-shadow($def) { 84 | -moz-box-shadow: $def; 85 | -webkit-box-shadow: $def; 86 | -o-box-shadow: $def; 87 | -khtml-box-shadow: $def; 88 | -ms-box-shadow: $def; 89 | box-shadow: $def; 90 | } 91 | @mixin linear-gradient($pos, $from, $to) { 92 | background: -moz-linear-gradient($pos, $from, $to); 93 | background: -webkit-linear-gradient($pos, $from, $to); 94 | background: -o-linear-gradient($pos, $from, $to); 95 | background: -ms-linear-gradient($pos, $from, $to); 96 | background: linear-gradient($pos, $from, $to); 97 | } 98 | @mixin text-shadow($def) { 99 | -moz-text-shadow: $def; 100 | -webkit-text-shadow: $def; 101 | -o-text-shadow: $def; 102 | -ms-text-shadow: $def; 103 | text-shadow: $def; 104 | } 105 | @mixin rotate($angle) { 106 | -webkit-transform: rotate($angle); 107 | -moz-transform: rotate($angle); 108 | } 109 | @mixin transition-property($prop) { 110 | -webkit-transition-property: -webkit- + $prop; 111 | -moz-transition-property: -moz- + $prop; 112 | -ms-transition-property: -ms- + $prop; 113 | -o-transition-property: -o- + $prop; 114 | transition-property: $prop; 115 | } 116 | @mixin transition-duration($time) { 117 | -webkit-transition-duration: $time; 118 | -moz-transition-duration: $time; 119 | -ms-transition-duration: $time; 120 | -o-transition-duration: $time; 121 | transition-duration: $time; 122 | } 123 | @mixin focus-outline { 124 | /* outline: 1px solid $focusBorder; */ 125 | /* @include outline-radius(2px); */ 126 | @include box-shadow(0px 0px 4px $focusBorder); 127 | } 128 | // END: defs 129 | -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs-syntax-light.css: -------------------------------------------------------------------------------- 1 | /* general stuff */ 2 | 3 | .Ymacs-Theme-light .Ymacs_Frame { color: #222; background-color: wheat;} 4 | 5 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .type { color: #6b8e23; font-weight: bold; } 6 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .builtin { color: #9932cc; } 7 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .function-name { color: #5f5fff; font-weight: bold; } 8 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .variable-name { color: #ba8912; font-weight: bold; } 9 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .constant { color: #53868b; font-style: normal; } 10 | 11 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .string { color: #8b6969; font-style: normal; } 12 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .string-starter, 13 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .string-stopper { color: #6b4949; } 14 | 15 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .regexp { color: #8b008b; font-style: normal; } 16 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .regexp-starter, 17 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .regexp-stopper, 18 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .regexp-modifier { color: #6b006b; font-weight: bold; } 19 | 20 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .keyword { color: #4020f0; font-weight: bold; } 21 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .comment, 22 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .mcomment { color: #080; font-style: italic; } 23 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .comment-starter, 24 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .mcomment-starter, 25 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .mcomment-stopper { color: #333; } 26 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .number { color: #c00; } 27 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .operator { color: #000; } 28 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .error { color: #f00; background-color: #faa; font-weight: bold; } 29 | /* .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .trailing-whitespace { text-decoration: underline; color: #777; } */ 30 | 31 | /* XML mode */ 32 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-open-tag, 33 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-close-tag { color: #4020f0; font-weight: bold; } 34 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-attribute { color: #6b8e23; } 35 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-entity-starter, 36 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-entity-stopper { color: #d4a; } 37 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-entity { color: #c4d; font-style: normal; } 38 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-closetag-slash { color: #f51; } 39 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-open-bracket, 40 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-close-bracket { color: #a56500; } 41 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-cdata { color: #555; } 42 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-cdata-starter, 43 | .Ymacs-Theme-light.Ymacs-Theme-y .Ymacs_Frame .xml-cdata-stopper { color: #888; } 44 | 45 | /* other stuff */ 46 | 47 | .Ymacs-Theme-light .Ymacs-caret { 48 | background-color: #888; 49 | color: #222; 50 | } 51 | 52 | .Ymacs-Theme-light .Ymacs_Frame-focus .Ymacs-caret { 53 | background-color: #f51; 54 | color: #324; 55 | } 56 | 57 | .Ymacs-Theme-light .Ymacs_Frame-focus .Ymacs-current-line { 58 | background-color: #eda; 59 | } 60 | 61 | .Ymacs-Theme-light .Ymacs-overwrite-mode .Ymacs-caret { 62 | background-color: #97f; 63 | color: #fff; 64 | } 65 | 66 | 67 | .Ymacs-Theme-light .Ymacs_Overlay .match-paren { background: #080; } 68 | .Ymacs-Theme-light .Ymacs_Overlay .selection { background: #88f; opacity: 0.8; } 69 | .Ymacs-Theme-light .Ymacs_Overlay .isearch { background: #a22; } 70 | 71 | .Ymacs-Theme-light .Ymacs_Modeline { 72 | background-color: #777; 73 | color: #111; 74 | border-top: 1px solid #999; 75 | border-bottom: 1px solid #000; 76 | } 77 | 78 | .Ymacs-Theme-light .Ymacs_Frame-active .Ymacs_Modeline { 79 | background-color: #bbb; 80 | color: #000; 81 | border-top: 1px solid #fff; 82 | } 83 | 84 | .Ymacs-Theme-light .Ymacs-line-numbers .Ymacs-frame-content div.line:before { 85 | border-right: 1px dotted #888; 86 | color: #777; 87 | background-color: #eee; 88 | } 89 | 90 | .Ymacs-Theme-light .Ymacs-line-numbers .Ymacs-frame-content div.Ymacs-current-line:before { 91 | color: #000; 92 | background-color: #def; 93 | } 94 | -------------------------------------------------------------------------------- /repl/ymacs/css/ymacs-syntax-dark.css: -------------------------------------------------------------------------------- 1 | /* general stuff */ 2 | 3 | .Ymacs-Theme-dark .Ymacs_Frame { color: wheat; background-color: #262626; } 4 | 5 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .type { color: #87ceeb; font-weight: bold; } 6 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .builtin { color: rgb(176, 196, 222); } 7 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .function-name { color: rgb(135, 206, 250); font-weight: bold; } 8 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .variable-name { color: rgb(238, 221, 130); font-weight: bold; } 9 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .constant { color: rgb(127, 255, 212); font-style: normal; } 10 | 11 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .string { color: rgb(250, 200, 80); font-style: normal; } 12 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .string-starter, 13 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .string-stopper { color: #c59500; } 14 | 15 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .regexp { color: #d9f; font-style: normal; } 16 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .regexp-starter, 17 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .regexp-stopper, 18 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .regexp-modifier { color: #e4f; font-weight: bold; } 19 | 20 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .keyword { color: rgb(0, 255, 255); font-weight: bold; } 21 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .comment, 22 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .mcomment { color: #45cc00; font-style: normal; } 23 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .comment-starter, 24 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .mcomment-starter, 25 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .mcomment-stopper { color: #999; } 26 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .number { color: yellow; } 27 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .operator { color: #fff; } 28 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .error { color: #ff0; background-color: #a00; font-weight: bold; } 29 | /* .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .trailing-whitespace { text-decoration: underline; color: #777; } */ 30 | 31 | /* XML mode */ 32 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-open-tag, 33 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-close-tag { color: rgb(0, 255, 255); font-weight: bold; } 34 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-attribute { color: rgb(106, 176, 222); } 35 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-entity-starter, 36 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-entity-stopper { color: #f4c; } 37 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-entity { color: #e4f; font-style: normal; } 38 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-closetag-slash { color: #f51; } 39 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-open-bracket, 40 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-close-bracket { color: #a56500; } 41 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-cdata { color: #bbb; } 42 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-cdata-starter, 43 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .xml-cdata-stopper { color: #888; } 44 | 45 | /* Lisp mode */ 46 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .lisp-keyword { color: #8f8; font-weight: bold; } 47 | 48 | /* Markdown mode */ 49 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading1 { color: #8df; font-weight: bold; font-size: 200%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 50 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading2 { color: #8df; font-weight: bold; font-size: 170%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 51 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading3 { color: #8df; font-weight: bold; font-size: 150%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 52 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading4 { color: #8df; font-weight: bold; font-size: 130%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 53 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading5 { color: #8df; font-weight: bold; font-size: 110%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 54 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-heading6 { color: #8df; font-weight: bold; font-size: 100%; font-family: "Lucida Grande","Trebuchet MS",Verdana,Tahoma,sans-serif; } 55 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-blockquote1 { color: #8f8; } 56 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-blockquote2 { color: #88f; } 57 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-blockquote3 { color: #f8f; } 58 | .Ymacs-Theme-dark.Ymacs-Theme-y .Ymacs_Frame .markdown-blockquote { color: #aaa; } 59 | 60 | .Ymacs-Theme-dark .open-paren { color: #9a7 } 61 | .Ymacs-Theme-dark .close-paren { color: #9a7 } 62 | 63 | /* other stuff */ 64 | 65 | .Ymacs-Theme-dark .Ymacs-caret { 66 | background-color: #aaa; 67 | color: #222; 68 | /* outline: 1px solid #f83; */ 69 | } 70 | 71 | .Ymacs-Theme-dark .Ymacs_Frame-focus .Ymacs-caret { 72 | background-color: #f83; 73 | color: #324 !important; 74 | /* outline: none; */ 75 | } 76 | 77 | .Ymacs-Theme-dark .Ymacs_Frame-focus .Ymacs-current-line { 78 | background-color: #000; 79 | } 80 | 81 | .Ymacs-Theme-dark .Ymacs-overwrite-mode .Ymacs-caret { 82 | background-color: #97f; 83 | color: #fff; 84 | } 85 | 86 | .Ymacs-Theme-dark .Ymacs_Overlay .match-paren { background: #8f8; } 87 | .Ymacs-Theme-dark .Ymacs_Overlay .selection { background: #ccf; } 88 | .Ymacs-Theme-dark .Ymacs_Overlay .isearch { background: #ffc; } 89 | 90 | .Ymacs-Theme-dark .Ymacs_Modeline { 91 | background-color: #777; 92 | color: #111; 93 | border-top: 1px solid #999; 94 | border-bottom: 1px solid #000; 95 | } 96 | 97 | .Ymacs-Theme-dark .Ymacs_Frame-active .Ymacs_Modeline { 98 | background-color: #bbb; 99 | color: #000; 100 | border-top: 1px solid #fff; 101 | } 102 | 103 | .Ymacs-Theme-dark .Ymacs-line-numbers .Ymacs-frame-content div.line:before { 104 | border-right: 1px dotted #888; 105 | background-color: #112; 106 | } 107 | 108 | .Ymacs-Theme-dark .Ymacs-line-numbers .Ymacs-frame-content div.Ymacs-current-line:before { 109 | background-color: #000; 110 | color: #f51; 111 | } 112 | -------------------------------------------------------------------------------- /demo/setImmediate.js: -------------------------------------------------------------------------------- 1 | (function (global, undefined) { 2 | "use strict"; 3 | 4 | if (global.setImmediate) { 5 | return; 6 | } 7 | 8 | var nextHandle = 1; // Spec says greater than zero 9 | var tasksByHandle = {}; 10 | var currentlyRunningATask = false; 11 | var doc = global.document; 12 | var registerImmediate; 13 | 14 | function setImmediate(callback) { 15 | // Callback can either be a function or a string 16 | if (typeof callback !== "function") { 17 | callback = new Function("" + callback); 18 | } 19 | // Copy function arguments 20 | var args = new Array(arguments.length - 1); 21 | for (var i = 0; i < args.length; i++) { 22 | args[i] = arguments[i + 1]; 23 | } 24 | // Store and register the task 25 | var task = { callback: callback, args: args }; 26 | tasksByHandle[nextHandle] = task; 27 | registerImmediate(nextHandle); 28 | return nextHandle++; 29 | } 30 | 31 | function clearImmediate(handle) { 32 | delete tasksByHandle[handle]; 33 | } 34 | 35 | function run(task) { 36 | var callback = task.callback; 37 | var args = task.args; 38 | switch (args.length) { 39 | case 0: 40 | callback(); 41 | break; 42 | case 1: 43 | callback(args[0]); 44 | break; 45 | case 2: 46 | callback(args[0], args[1]); 47 | break; 48 | case 3: 49 | callback(args[0], args[1], args[2]); 50 | break; 51 | default: 52 | callback.apply(undefined, args); 53 | break; 54 | } 55 | } 56 | 57 | function runIfPresent(handle) { 58 | // From the spec: "Wait until any invocations of this algorithm started before this one have completed." 59 | // So if we're currently running a task, we'll need to delay this invocation. 60 | if (currentlyRunningATask) { 61 | // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a 62 | // "too much recursion" error. 63 | setTimeout(runIfPresent, 0, handle); 64 | } else { 65 | var task = tasksByHandle[handle]; 66 | if (task) { 67 | currentlyRunningATask = true; 68 | try { 69 | run(task); 70 | } finally { 71 | clearImmediate(handle); 72 | currentlyRunningATask = false; 73 | } 74 | } 75 | } 76 | } 77 | 78 | function installNextTickImplementation() { 79 | registerImmediate = function(handle) { 80 | process.nextTick(function () { runIfPresent(handle); }); 81 | }; 82 | } 83 | 84 | function canUsePostMessage() { 85 | // The test against `importScripts` prevents this implementation from being installed inside a web worker, 86 | // where `global.postMessage` means something completely different and can't be used for this purpose. 87 | if (global.postMessage && !global.importScripts) { 88 | var postMessageIsAsynchronous = true; 89 | var oldOnMessage = global.onmessage; 90 | global.onmessage = function() { 91 | postMessageIsAsynchronous = false; 92 | }; 93 | global.postMessage("", "*"); 94 | global.onmessage = oldOnMessage; 95 | return postMessageIsAsynchronous; 96 | } 97 | } 98 | 99 | function installPostMessageImplementation() { 100 | // Installs an event handler on `global` for the `message` event: see 101 | // * https://developer.mozilla.org/en/DOM/window.postMessage 102 | // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages 103 | 104 | var messagePrefix = "setImmediate$" + Math.random() + "$"; 105 | var onGlobalMessage = function(event) { 106 | if (event.source === global && 107 | typeof event.data === "string" && 108 | event.data.indexOf(messagePrefix) === 0) { 109 | runIfPresent(+event.data.slice(messagePrefix.length)); 110 | } 111 | }; 112 | 113 | if (global.addEventListener) { 114 | global.addEventListener("message", onGlobalMessage, false); 115 | } else { 116 | global.attachEvent("onmessage", onGlobalMessage); 117 | } 118 | 119 | registerImmediate = function(handle) { 120 | global.postMessage(messagePrefix + handle, "*"); 121 | }; 122 | } 123 | 124 | function installMessageChannelImplementation() { 125 | var channel = new MessageChannel(); 126 | channel.port1.onmessage = function(event) { 127 | var handle = event.data; 128 | runIfPresent(handle); 129 | }; 130 | 131 | registerImmediate = function(handle) { 132 | channel.port2.postMessage(handle); 133 | }; 134 | } 135 | 136 | function installReadyStateChangeImplementation() { 137 | var html = doc.documentElement; 138 | registerImmediate = function(handle) { 139 | // Create a