summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJaromil <jaromil@dyne.org>2010-10-25 08:03:55 (GMT)
committer Jaromil <jaromil@dyne.org>2010-10-25 08:03:55 (GMT)
commit065069527ec4cc35324a3902585fe4501fc278e2 (patch)
tree6c865fbcb13e0057a52bf0091bb6a55d2af047bc
parent7016ea76db306777937dd89f3e92e75355347cff (diff)
new webpage with emacs muse
-rw-r--r--dyne-web/Makefile11
-rw-r--r--dyne-web/muse-config.el209
-rw-r--r--dyne-web/pages/index.muse146
-rw-r--r--dyne-web/pub/images/tbt-wheel.pngbin0 -> 136516 bytes
-rw-r--r--dyne-web/pub/stylesheet/common.css428
-rw-r--r--dyne-web/pub/stylesheet/dyne.css176
-rw-r--r--dyne-web/pub/stylesheet/print.css60
-rw-r--r--dyne-web/pub/stylesheet/screen.css253
-rw-r--r--dyne-web/templates/footer.html54
-rw-r--r--dyne-web/templates/footer.tex9
-rw-r--r--dyne-web/templates/header.html49
-rw-r--r--dyne-web/templates/header.tex58
12 files changed, 1453 insertions, 0 deletions
diff --git a/dyne-web/Makefile b/dyne-web/Makefile
new file mode 100644
index 0000000..c172923
--- /dev/null
+++ b/dyne-web/Makefile
@@ -0,0 +1,11 @@
+
+all:
+ emacs -Q -no-site-file -batch -l muse-config.el \
+ -f muse-project-batch-publish "TBT"
+
+
+clean:
+ emacs -Q -no-site-file -batch -l muse-config.el \
+ -f muse-project-delete-output-files "TBT"
+
+
diff --git a/dyne-web/muse-config.el b/dyne-web/muse-config.el
new file mode 100644
index 0000000..c68db34
--- /dev/null
+++ b/dyne-web/muse-config.el
@@ -0,0 +1,209 @@
+;; Emacs MUSE
+
+(provide 'muse-web-tbt)
+
+
+;; Initialize
+;(require 'outline) ; If you like outline-style faces
+(require 'muse) ; load generic module
+
+(require 'muse-mode) ; load authoring mode
+(require 'muse-colors) ; load coloring/font-lock module
+(require 'muse-project) ; load support for projects
+(require 'muse-book)
+(require 'muse-context) ; texlive publishing
+(require 'muse-journal) ; load journal publishing style
+(require 'muse-docbook) ; load DocBook publishing style
+(require 'muse-html) ; load (X)HTML publishing style
+(require 'muse-xml) ; load XML support
+(require 'muse-latex) ; load LaTeX/PDF publishing styles
+(require 'muse-latex2png) ; publish <latex> tags
+(require 'muse-texinfo) ; load Info publishing style
+
+
+(require 'muse-wiki) ; load Wiki support
+;(require 'muse-ikiwiki) ; load ikiwiki export support
+
+;;(require 'muse-message) ; load message support (experimental)
+;;(require 'atom-api) ; atom api for muse
+
+;; -----------
+;; Styles
+
+
+;; ---- jaromil's musings
+
+(muse-derive-style "tbt-webpage-html" "html"
+ :author "Jaromil"
+ :header "~/devel/tbt/dyne-web/templates/header.html"
+ :footer "~/devel/tbt/dyne-web/templates/footer.html"
+ :base-url "http://tbt.dyne.org")
+
+(muse-derive-style "tbt-webpage-pdf" "pdf"
+ :author "Jaromil"
+ :header "~/devel/tbt/dyne-web/templates/header.tex"
+ :footer "~/devel/tbt/dyne-web/templates/footer.tex"
+ :base-url "http://tbt.dyne.org")
+
+
+
+(setq muse-project-alist
+ `(
+
+ ("TBT"
+ (,@(muse-project-alist-dirs "pages")
+ )
+ ;; Publish this directory and its subdirectories. Arguments
+ ;; are as follows. The above `muse-project-alist-dirs' part
+ ;; is also needed.
+ ;; 1. Source directory
+ ;; 2. Output directory
+ ;; 3. Publishing style
+ ;; remainder: Other things to put in every generated style
+
+ ,@(muse-project-alist-styles "pages"
+ "pub"
+ "tbt-webpage-html")
+
+ ,@(muse-project-alist-styles "pages"
+ "pub"
+ "tbt-webpage-pdf")
+
+ )
+
+ )
+ )
+
+
+;; Wiki settings
+(setq muse-wiki-interwiki-alist
+ '(("Lab.Dyne" . "http://lab.dyne.org/")
+ ("EmacsWiki" . "http://www.emacswiki.org/cgi-bin/wiki/")
+ ))
+
+;;; Functions
+
+
+;; Turn relative links into absolute ones
+(defun cb-make-links-absolute (str &rest ignored)
+ "Make relative links absolute."
+ (when str
+ (save-match-data
+ (if (string-match "\\`[/.]+" str)
+ (replace-match "http://jaromil.dyne.org/journal/" nil t str)
+ str))))
+(defun make-links-absolute ()
+ (set (make-local-variable 'muse-publish-url-transforms)
+ (cons 'cb-make-links-absolute muse-publish-url-transforms)))
+
+;; Use hires images in documents
+(defun cb-make-images-hires (str &res ignored)
+ "Make images hi resulution."
+ (when str
+ (save-match-data
+ (if (string-match "fotos/.*" str)
+ (replace-match "fotos/hires/" nil t str)
+ str))))
+(defun make-images-hires()
+ (set (make-local-variable 'muse-publish-url-transforms)
+ (cons 'cb-make-images-hires muse-publish-url-transforms)))
+
+(defun muse-insert-reset-chapter ()
+ (insert "\n\\setcounter{chapter}{1}\n"))
+
+
+;; Turn a word or phrase into a clickable Wikipedia link
+(defun my-muse-dictize (beg end)
+ (interactive "r")
+ (let* ((text (buffer-substring-no-properties beg end))
+ (link (concat "dict:" (replace-regexp-in-string " " "_" text t t))))
+ (delete-region beg end)
+ (insert "[[" link "][" text "]]")))
+
+;;; turn urls into html
+(defun url-convert-muse-to-html ()
+ (interactive)
+ "Convert urls in documents from Muse format to HTML"
+ (replace-string "[[" "<a href=\"")
+ (replace-string "][" "\">")
+ (replace-string "]]" "</a>")
+)
+
+
+;;; Skinning my Muse
+
+(custom-set-faces
+ '(muse-bad-link ((t (:foreground "DeepPink" :underline "DeepPink" :weight bold)))))
+
+(custom-set-variables
+ '(muse-latex-permit-contents-tag t)
+ '(muse-colors-autogen-headings (quote outline))
+ '(muse-colors-inline-image-method (quote muse-colors-use-publishing-directory))
+ '(muse-mode-hook (quote (flyspell-mode footnote-mode)))
+ '(muse-publish-comments-p nil)
+
+; LINKS
+ ;; '(muse-publish-desc-transforms
+ ;; (quote (muse-wiki-publish-pretty-title
+ ;; muse-wiki-publish-pretty-interwiki
+ ;; muse-publish-strip-URL)))
+ ;; '(muse-wiki-publish-small-title-words
+ ;; (quote ("the" "and" "at" "on" "of" "for" "in" "an" "a" "page")))
+
+; HTML
+ '(muse-html-charset-default "utf-8")
+ '(muse-html-encoding-default (quote utf-8))
+ '(muse-html-meta-content-encoding (quote utf-8))
+ '(muse-html-footer "templates/footer.html")
+ '(muse-html-header "templates/header.html")
+ '(muse-html-style-sheet
+ "<link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"all\"
+ href=\"stylesheet/dyne.css\" />
+ <link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"screen\"
+ href=\"stylesheet/screen.css\" />
+ <link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"print\"
+ href=\"stylesheet/print.css\" />")
+ '(muse-html-table-attributes " class=\"muse-table\" border=\"0\" cellpadding=\"5\"")
+
+ ;; RSS should not summarize but include the whole entry
+ '(muse-journal-rss-summarize-entries nil)
+
+; RSS feed
+; '(muse-journal-rss-entry-template "
+; <item>
+;; <title>%title%</title>
+; <link>%link%#%anchor%</link>
+; <author>Jaromil</author>
+; <pubDate>%date%</pubDate>
+; <guid>%link%#%anchor%</guid>
+; %enclosure%
+; </item>
+; ")
+
+; LATEX
+ '(muse-latex-footer "templates/footer.tex")
+ '(muse-latex-header "templates/header.tex")
+ '(muse-latex-permit-contents-tag t)
+ '(muse-latex-twocolumn t)
+
+; XHTML
+ '(muse-xhtml-footer "templates/footer.html")
+ '(muse-xhtml-header "templates/header.html")
+ '(muse-xhtml-meta-content-encoding (quote utf-8))
+ '(muse-xhtml-style-sheet
+ "<link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"all\"
+ href=\"css/common.css\" />
+ <link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"screen\"
+ href=\"css/screen.css\" />
+ <link rel=\"stylesheet\" type=\"text/css\" charset=\"utf-8\" media=\"print\"
+ href=\"css/print.css\" />")
+
+
+)
+
+;;;; fixes to markup?
+;(defvar muse-latex-markup-strings
+; '((url-and-desc . "\\url{%s}")
+; (link . "\\url{%s}")
+; (link-and-anchor . "\\url{%s}"))
+; )
diff --git a/dyne-web/pages/index.muse b/dyne-web/pages/index.muse
new file mode 100644
index 0000000..83f19ef
--- /dev/null
+++ b/dyne-web/pages/index.muse
@@ -0,0 +1,146 @@
+#title TBT - Time Based Text
+#author Jaromil
+
+
+<contents>
+
+* TBT - Time Based Text
+** Introduction
+
+<class name="logo">
+[[images/tbt-wheel.png]]
+</class>
+
+*TBT is made to vehicle more human-input information in written text*
+
+This software application records performance time of written text and
+vehicles it as additional information: saves and reproduces every
+single action during the composition of a text, so that we can
+circulate an additional dimension of emphasis in written
+communication.
+
+As this simple concept, our implementation is also kept very
+minimalistic while we welcome programmers to embed it in communication
+applications, as in *emails, blogs, visual poetry, wiki websites,
+slides*, to embed emotions in plain text and open new practices for
+literature and poetry.
+
+
+Beware this software is hacky :) u need to love text. A [[manual.html][manual page]] is
+provided and commandline formulas to be casted in a terminal. A
+python-GTK graphical interface is also present.
+
+Here is a [[http://tbt.dyne.org/impakt/][time based poetry website]] that you can use also as your own
+gallery.
+
+*** How TBT does it
+
+This software is written in thread-safe POSIX C++ and can be ported to
+most platforms, it provides a real-time recorder for serial timed
+data, recording 64bit tuples key/msec with low-latency. Included are
+programs providing a text console interface for the user to experiment
+with the keyboard.
+
+
+In the .tbt format, text is saved with a timestamp for each letter:
+
+<example>
+ _________ ___________
+ | u-int | u-int |
+ | 64bit | 64bit | m-seconds = 1/1000 of a second
+ --------- -----------
+ | char | m-seconds | char = ASCII or higher bit char code
+ --------- -----------
+ | Total: 128bit |
+ ---------------------
+</example>
+
+Export functionality to different formats is provided, including
+generation of web-ready code in HTML and Javascript.
+
+The distributed sourcecode includes multiple implementations: a
+python-GTK graphical application and a dokuwiki plugin (javascript
+based), for instance. There is also a CMS website written in PHP that
+lets you archive and display TBT poetry on the Internet.
+
+** Artworks
+** Get TBT
+
+This software is free and open source, you are free to download it,
+use it, study, modify it and redistribute it, even for commercial
+purposes, as long as you release your creations the same way, granting
+your "users" the same rights we grant to you. Share the Freedom! :)
+
+For more information see the [[http://www.gnu.org/copyleft/gpl.html][GNU General Public License]].
+
+Below a list of formats you can download this application: ready to be
+run with some of the interfaces developed, as a library you can use to
+build your own application and as source code you can study.
+
+
+*** Source code
+
+Latest stable release is 1.0 (22 March 2009) more about it in the [[ftp://ftp.dyne.org/tbt/NEWS][NEWS]]
+and [[ftp://ftp.dyne.org/freej/ChangeLog][ChangeLog]].
+
+Source releases are checked and signed by [[http://rastasoft.org][Jaromil]] using [[http://www.gnupg.org][GnuPG]].
+
+On [[ftp://ftp.dyne.org/tbt][ftp.dyne.org/tbt]] you find all present and past TBT releases, source
+code for extra plugins and more binaries that we occasionally build
+for various architectures.
+
+A mirror is kindly made available by the [[http://www.ljudmila.org/~jaromil/mirror/tbt/][Ljudmila medialab]]
+
+The bleeding edge version is developed on our [[http://git.dyne.org][code repository]] using *git*,
+you can clone the repository free and anonymously
+: git clone git://code.dyne.org/tbt.git
+please use this version when [[http://bugs.dyne.org][reporting bugs]] and getting in contact with us.
+
+*** Apple Darwin/OSX 10.5 / 10.6
+
+Download either the [[http://www.xant.net/freej.dmg][i386/PPC]] or the [[http://www.xant.net/freej64.dmg][x86_64 (snow leopard only)]] TBT
+with support for quicktime, [[http://www.troikatronix.com/freeframe.html][freeframe]] and frei0r effect plugins here:
+this version includes an experimental graphical interface
+(Carbon/Cocoa) that shows functionalities.
+
+We are looking for designers to help make it look better! please
+contact one if you like to be the one ;)
+
+*** Winslows
+
+If you are looking for a winslows version, boot [[http://dynebolic.org][dyne:bolic GNU/Linux]]!
+
+
+
+** Acknowledgments
+
+Time Based Text is a software.art application developed by [[http://jaromil.dyne.org][Jaromil]] and
+conceptualised with the contribution of [[http://jodi.org][JoDi]].
+
+Some of the theoretical background of TBT is documented in this
+[[http://www.nettime.org/Lists-Archives/nettime-l-0804/msg00022.html][interview published on nettime]]; this software is not just a technical
+realization, it constitutes an interactive (on-site) art installation
+by its author Jaromil, exhibited for the first time in [[http://transition.turbulence.org/blog/2008/10/07/speaking-out-loud-amsterdam/][SPEAK OUT LOUD]]
+at [[http://www.nimk.nl][NIMk]] in Amsterdam and permanently included in the
+[[http://www.runme.org/project/+tbt/][runme software art collection]].
+
+*** Contributors
+
+Development of TBT was supported by [[www.impakt.nl][Impakt.nl]].
+
+The TBT CMS was designed by [[www.ok-parking.nl][O.K. Parking]] and its PHP code written by
+[[http://www.pallotron.net/][Angelo "Pallotron" Failla]].
+
+[[http://identi.ca/caedes][Pablo "Caedes" Martines]] contributed the Python-GTK graphical interface
+implementation for GNU/Linux and [[http://gareus.org/][Robin Gareus]] published a TBT dokuwiki
+plugin.
+
+[[http://benn.org][Meinhard Benn]] implemented a TBT recorder in pure javascript and
+[[http://freaknet.org/alpt/][Andrea "Alpt" Lo Pumo]] shared code perfectionements and suggestions,
+while [[http://www.xant.net][Xantar Majere]] helped bundling the Apple/OSX ported version of
+TBT.
+
+Additional thanks for their active support and appreciation go to:
+[[http://pleintekst.nl/][Florian Cramer]], Annet Dekker, Paul Hendriks and [[http://www.sujaschko.de/][Susanne Jaschko]]
+
+
diff --git a/dyne-web/pub/images/tbt-wheel.png b/dyne-web/pub/images/tbt-wheel.png
new file mode 100644
index 0000000..f4d8bbb
--- /dev/null
+++ b/dyne-web/pub/images/tbt-wheel.png
Binary files differ
diff --git a/dyne-web/pub/stylesheet/common.css b/dyne-web/pub/stylesheet/common.css
new file mode 100644
index 0000000..a435b3f
--- /dev/null
+++ b/dyne-web/pub/stylesheet/common.css
@@ -0,0 +1,428 @@
+/*
+ Jaromil's Journal stylesheet
+
+ originally from Michael Olson's tweaked Muse stylesheet
+
+ License: Modification and propagation of this document is
+ permitted. Attribution of credit to us is optional.
+ */
+
+/* Normal elements */
+
+a.nonexistent {
+ background-color: white;
+ color: red;
+ font-weight: bold;
+ }
+
+a.nonexistent:visited {
+ background-color: white;
+ color: red;
+ }
+
+a:link.top, a:visited.top {
+ color: #F5DEB3; /* wheat */
+ line-height: 90%;
+ position: relative;
+ text-decoration: none;
+ top: -13px;
+ }
+
+a:link:hover {
+ text-decoration: underline;
+ }
+
+h1 a:link:hover, h1 a:visited:hover {
+ background-color: #708090; /* slate gray */
+ }
+
+a:visited {
+ color: #884400;
+ text-decoration: none;
+ border:0;
+ }
+
+a:link {
+ font-weight: bold;
+ color: #AA6600;
+ text-decoration: none;
+ border:0;
+ }
+
+blockquote {
+ padding: 2px;
+ font-style: italic;
+ margin: 2px 1px;
+ }
+
+body {
+ font-family: Arial, Helvetica;
+ background: #ffeedd
+ url(http://jaromil.dyne.org/journal/images/dyneheadbg.png) repeat-x;
+ color: black;
+ text-align: justify;
+ margin-left: 2%;
+ margin-right: 2%;
+ margin-top: 1%;
+ }
+
+code {
+ margin-left: 3px;
+ margin-right: 3px;
+ }
+
+dt {
+ font-weight: bold;
+ margin-top: .5em;
+ padding: 3px;
+ }
+
+em {
+ font-style: italic;
+ }
+
+h1 {
+ background: #ffeedd
+ url(http://dyne.org/images/dynebggrl2r.png) repeat-y;
+ color: #222222;
+ overflow: hidden; /* don't crowd the menu */
+ border: 0px;
+ border-left: 1px solid #AA8855;
+ border-bottom: 3px dotted #EECC99;
+ font-style: italic;
+ font-size: 22px;
+ width: 70%;
+ padding: 10px;
+ margin-bottom: 0px;
+ white-space: nowrap;
+ }
+
+h2 {
+ border-bottom: solid 2px #AA8855;
+ clear: left;
+ font-size: large;
+ margin-top: 2.5em;
+ margin-bottom: .5em;
+ overflow: hidden; /* don't crowd the menu */
+ padding-right: 6px;
+ }
+
+h3 {
+ border-bottom: dotted 3px #EECC99; /* slate gray */
+ font-size: medium;
+ margin-top: 2em;
+ margin-bottom: .5em;
+ overflow: hidden; /* don't crowd the menu */
+ padding-right: 6px;
+ }
+
+h4 {
+ border-bottom: dashed 1px #BEBEBE; /* light gray */
+ margin-top: 1.5em;
+ margin-bottom: .7em;
+ overflow: hidden; /* don't crowd the menu */
+ padding-right: 6px;
+ }
+
+hr {
+ clear: both;
+ color: #ffeedd;
+ background: #aa8855;
+ width: 88%;
+ }
+
+img {
+ border: 0;
+ clear: right;
+ text-align: center;
+ }
+
+.image-caption {
+ font-style: italic;
+ }
+
+p.image {
+ text-align: center;
+ }
+
+li {
+ line-height: 1.2em;
+ margin-top: .7em;
+ }
+
+p.verse {
+ clear: left;
+ line-height: 2em;
+ margin-left: 3%;
+ }
+
+p {
+ margin-left: 2%;
+ margin-right: 2%;
+ line-height: 1.2em;
+ text-align: justify;
+ }
+
+p.intro {
+ margin-left: 2%;
+ margin-right: 2%;
+ line-height: 1.2em;
+ text-align: justify;
+ font-style: italic;
+ }
+
+pre.example {
+ margin-left: 3%;
+ margin-top: 1.2em;
+ margin-bottom: 1.2em;
+ clear: left;
+ }
+
+pre.src {
+ margin-left: 5%;
+ margin-top: 1.2em;
+ margin-bottom: 1.2em;
+ clear: left;
+ }
+
+pre.verse {
+ font-family: inherit;
+ line-height: 2em;
+ margin-left: 3%;
+ }
+
+pre {
+ font-family: monospace;
+ margin-left: 3%;
+ white-space: pre;
+ }
+
+span.leftbox {
+ background: #ffeedd
+ url(http://dyne.org/images/dynebggrl2rsm.png) repeat-y;
+
+ border: 0px;
+ border-left: dotted 1px #AA8855;
+ font-size: small;
+ text-align: left;
+ width: 25%;
+ font-family: Georgia, Arial, Helvetica, sans-serif;
+ display: compact;
+ float: left;
+ clear: left;
+ margin-right: 10px;
+ margin-bottom: 5px;
+ padding: 3px;
+ }
+
+span.rightbox {
+ background: #EECC99
+ url(http://dyne.org/images/dynebggrr2lsm.png) repeat-y;
+
+ border: 0px;
+ border-right: dotted 1px #AA8855;
+ font-size: small;
+ text-align: right;
+ float: right;
+ width: 25%;
+ font-family: Georgia, Arial, Helvetica, sans-serif;
+ display: compact;
+ clear: right;
+ margin-left: 10px;
+ margin-bottom: 5px;
+ padding: 3px;
+ }
+
+span.rightpic {
+ border: 0px;
+ border-left: dotted 1px #AA8855;
+ font-size: small;
+ text-align: right;
+ float: right;
+ font-family: Arial, sans-serif;
+ display: inline;
+ clear: right;
+ margin-left: 3px;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0px;
+ }
+
+span.leftpic {
+ border: 0px;
+ border-right: dotted 1px #AA8855;
+ font-size: small;
+ text-align: left;
+ float: left;
+ font-family: Arial, sans-serif;
+ display: inline;
+ clear: left;
+ margin-right: 3px;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0px;
+ }
+
+
+span.footdate {
+ text-align: center;
+ font-family: Helvetica, sans-serif;
+ color: #AA8855;
+ font-size: small;
+ margin: 0;
+ margin-bottom: 1.5em;
+ padding-top: 2px;
+ padding-bottom: 3px;
+ padding-left: 2px;
+ padding-right: 2px;
+ }
+
+span.footdate a:link {
+ text-align: center;
+ text-decoration: none;
+ }
+span.footnote {
+ text-align: left;
+ color: black;
+ font-size: 9px;
+ line-height: 1px;
+ }
+
+span.headermenu {
+ font-size: small;
+ color: black;
+ align: center;
+ }
+
+span.date {
+ float: right;
+ display: inline;
+ overflow: hidden;
+ margin-top: .2em;
+ margin-right: 10px;
+ padding-right: 6px;
+ border-bottom: dotted 2px #AA8855;
+ border-right: solid 1px #AA8855;
+ }
+
+strong {
+ font-weight: bold;
+ }
+
+
+
+ul {
+ list-style-type: disc;
+ margin-bottom: 1.5em;
+ }
+
+/* Table of Contents */
+
+.contents {
+ float: left;
+ width: 60%;
+ background: #ffeedd
+ url(http://dyne.org/images/dynebggrl2r.png) repeat-y;
+ border-left: 1px solid #AA8855;
+ border-right: 0;
+ margin-top: 6px;
+ margin-right: 5px;
+ margin-left: 15px;
+ margin-bottom: 15px;
+ padding: 3px;
+ }
+
+.contents dd dt dl { display: block; }
+
+.contents dl {
+ float: left;
+ font-size: small;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+.contents dt {
+ clear: left;
+ padding-right: 5px;
+ padding-left: 5px;
+ text-align: left;
+}
+
+.contents a:hover { text-decoration: underline; }
+
+
+/* Menu */
+
+.menu {
+ background: #EECC99
+ url(http://dyne.org/images/dynebggrr2lsm.png) repeat-y;
+
+ border: 1px solid black;
+ border-top: 3px dotted #EECC99;
+ border-left: 0px;
+ display: inline;
+ float: right;
+ clear: both;
+ margin-left: 20px;
+ margin-bottom: 5px;
+ margin-top: 0px;
+ padding: 3px;
+ }
+
+.menu img {
+ text-align: center;
+ }
+.menutitle {
+ font-style: italic;
+ text-align: center;
+/* float: center; */
+ margin: 3;
+ }
+
+.menuitem {
+ font-size: medium;
+ font-family: Helvetica, sans-serif;
+
+ background: #EECC99
+ url(http://dyne.org/images/dynebggrr2lsm.png) repeat-y;
+
+ margin: 0;
+ padding-top: 2px;
+ padding-bottom: 3px;
+ padding-left: 2px;
+ padding-right: 2px;
+ text-align: left;
+ }
+
+.menuitem a:link, .menuitem a:visited {
+ font-size: 16px;
+ font-style: italic;
+ font-family: Helvetica, sans-serif;
+ text-decoration: none;
+ color: #884400;
+ display: block;
+ margin: 0;
+ padding-top: 2px;
+ padding-bottom: 3px;
+ padding-left: 2px;
+ padding-right: 2px;
+ }
+
+.menuitem a:link:hover, .menuitem a:visited:hover {
+ background-color: #FFEEDD;
+ }
+
+.menuother {
+ padding-left: 2px;
+ padding-right: 2px;
+ }
+
+#tooltipbox {
+ float: right;
+ visibility: hidden;
+ }
+
+#tooltip {
+ color: #006400; /* dark green */
+ }
+
diff --git a/dyne-web/pub/stylesheet/dyne.css b/dyne-web/pub/stylesheet/dyne.css
new file mode 100644
index 0000000..ac22ddf
--- /dev/null
+++ b/dyne-web/pub/stylesheet/dyne.css
@@ -0,0 +1,176 @@
+
+/* general */
+
+
+html {
+ width: 90%;
+ margin: 0 0 5% 5%;
+}
+
+body {
+ background-color: #ffeedd;
+ color: #333;
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0;
+ padding: 0;
+}
+
+a:link, a:visited { text-decoration: none; font-weight: bold }
+a:hover, a:focus, a:active { text-decoration: underline }
+a:link { color: #a60 }
+a:visited { color: #840 }
+a:hover, a:focus { color: #000 }
+a:active { color: #fed }
+
+img { border: 0}
+
+
+/* header */
+
+header {
+ background: #fed url(http://dyne.org/images/bg.png) top left repeat-x;
+ margin-top: 10px;
+}
+
+header nav {
+ margin: 1em;
+}
+header nav ul {
+ list-style: none;
+ margin: 0 auto;
+ width: 50em;
+}
+header nav ul li {
+ display: inline;
+ font-weight: bold;
+}
+header nav ul li:first-child,
+header nav ul li:last-child
+{
+ font-weight: normal;
+ font-size: smaller;
+}
+header nav ul:first-child:before {
+ content: " - -( ";
+}
+header nav ul:first-child:after {
+ content: " )- - "
+}
+
+header div#file_types {
+ float: right;
+ list-style: none outside none;
+ margin: 8 8 8 8;
+ font-size: 0.8em;
+ }
+header div#file_types img { vertical-align: middle; }
+
+
+header hgroup h1, header hgroup h2 {
+ font-family: monospace;
+}
+
+
+/* body */
+
+
+
+h1,h2,h3,h4,h5 { font-family: Georgia, "Times New Roman", serif; }
+
+h1 {
+ background: #fed url(/images/bg_gradient.png) top left repeat-y;
+ color: #222;
+ border-bottom: 2px dotted #ec9;
+ font-size: 32px;
+ font-style: italic;
+ margin: 10px 0 0 0;
+ padding: 0.5em;
+ white-space: nowrap;
+}
+#software h1,
+#events h1 {
+ font-size: 18pt;
+ margin: 0;
+}
+
+h2 {
+ background: #fed url(http://dyne.org/images/bg_gradient.png) top left repeat-y;
+ color: #222;
+ border-bottom: 2px dotted #ec9;
+ font-size: 28px;
+ font-style: italic;
+ margin: 10px 0 0 -3em;
+ padding: 0.5em;
+ white-space: nowrap;
+}
+p {
+ margin: 20px 2em -10px 2em;
+}
+
+/* footer */
+
+
+
+footer {
+ clear: both;
+ display: compact;
+ font-size: smaller;
+}
+footer hr {
+ background-color: #f0e0d0;
+ border: 1px;
+ height: 1px;
+ clear: both;
+ margin: 3em 0 1em;
+}
+footer ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+footer section {
+ width: 8em;
+ float: right;
+}
+footer section h2 {
+ text-align: center;
+ display: none; }
+#clustrMaps { width: 168px;
+ margin-top: 1em;
+ text-align: center; }
+#disclaimer {
+ font-size: smaller;
+ text-align: justify;
+ width: 18em; }
+#credits {
+ font-size: smaller;
+ margin-right: 1em;
+ text-align: right;
+ width: 140px; }
+#recognition {
+ margin-top: 1em;
+ text-align: center; }
+#badges {
+ margin-top: 2em;
+ text-align: center; }
+
+/**
+ * Google Search
+**/
+
+#google_search fieldset {
+ border: 0;
+}
+#google_search input {
+ background-color: #fed;
+ border: 1px solid #a60;
+}
+#google_search input[type=submit] {
+ font-weight: bold;
+}
+#google_search input:hover,
+#google_search input:focus {
+ background-color: #fff;
+}
+
diff --git a/dyne-web/pub/stylesheet/print.css b/dyne-web/pub/stylesheet/print.css
new file mode 100644
index 0000000..f234cab
--- /dev/null
+++ b/dyne-web/pub/stylesheet/print.css
@@ -0,0 +1,60 @@
+/* Michael Olson's tweaked Muse stylesheet
+
+ Elements used when printing.
+
+ License: Modification and propagation of this document is
+ permitted. Attribution of credit to me is optional.
+*/
+
+html {
+ font-family: Times, serif;
+ font-size: 12pt;
+}
+
+body {
+ margin-left: 1.5cm;
+ margin-right: 1.5cm;
+ margin-top: 1.5cm;
+ margin-bottom: 1.5cm;
+}
+
+.menu, .menuitem, .navfoot, #tooltip, #tooltipbox {
+ display: none;
+}
+
+a, a:visited, a.nonexistent, a.badinterwiki {
+ color: black;
+ text-decoration: none;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+dd {
+ line-height: 2em;
+}
+
+h1 {
+ border-right: 0;
+}
+
+h2 {
+ border-right: 0;
+}
+
+h3 {
+ border-right: 0;
+}
+
+h4 {
+ border-right: 0;
+}
+
+img {
+ display: none;
+}
+
+p {
+ line-height: 2em;
+}
diff --git a/dyne-web/pub/stylesheet/screen.css b/dyne-web/pub/stylesheet/screen.css
new file mode 100644
index 0000000..ade84fa
--- /dev/null
+++ b/dyne-web/pub/stylesheet/screen.css
@@ -0,0 +1,253 @@
+#footnotes {
+ moz-background-clip:border;
+ moz-background-inline-policy:continuous;
+ moz-background-origin:padding;
+ background:#EECC99 url(http://dyne.org/images/dynebggrr2lsm.png) repeat-y scroll 0 0;
+ border-color:-moz-use-text-color #AA8855 -moz-use-text-color -moz-use-text-color;
+ border-style:none dotted none none;
+ border-width:0 2px 0 0;
+ padding: 3px;
+ clear:right;
+ float:right;
+ font-family:Georgia,Arial,Helvetica,sans-serif;
+ font-size:small;
+ text-align:left;
+ width:60em;
+ display: compact;
+ }
+
+.logo {
+ float: right;
+ clear: right;
+ margin-right: 2px;
+ margin-top: -8em;
+ display: compact;
+ }
+
+.contents {
+ width: 13em;
+ float: left;
+ clear: left;
+ margin-top: 10em;
+ margin-left: -5.2em;
+ margin-right: 3em;
+ margin-bottom: 0.5em;
+ padding: .5em 30px;
+ moz-background-clip:border;
+ moz-background-inline-policy:continuous;
+ moz-background-origin:padding;
+ background:#FFEEDD url(http://dyne.org/images/dynebggrl2rsm.png) repeat-y scroll 0 0;
+
+ font-family:Georgia,Arial,Helvetica,sans-serif;
+ font-size:small;
+
+ display: compact;
+ }
+
+blockquote {
+ moz-background-clip:border;
+ moz-background-inline-policy:continuous;
+ moz-background-origin:padding;
+ background:#FFEEDD url(http://dyne.org/images/dynebggrl2rsm.png) repeat-y scroll 0 0;
+ border-color:-moz-use-text-color -moz-use-text-color -moz-use-text-color #AA8855;
+ border-style:none none none dotted;
+ border-width:0 0 0 1px;
+ clear:left;
+ float:left;
+ font-family:Georgia,Arial,Helvetica,sans-serif;
+ font-size: 1.1em;
+ font-style: italic;
+ margin: 0 1.5em 0 0;
+ padding: 1em;
+ padding-left: 1.5em;
+ text-align: justify;
+ width:15em;
+ display: compact;
+ }
+
+div #leftbox {
+ moz-background-clip:border;
+ moz-background-inline-policy:continuous;
+ moz-background-origin:padding;
+ background:#FFEEDD url(http://dyne.org/images/dynebggrl2rsm.png) repeat-y scroll 0 0;
+ border-color:-moz-use-text-color -moz-use-text-color -moz-use-text-color #AA8855;
+ border-style:none none none dotted;
+ border-width:0 0 0 1px;
+ clear:left;
+ float:left;
+ font-family:Georgia,Arial,Helvetica,sans-serif;
+ font-size:small;
+ margin: 0 1em 0 0;
+ text-align:left;
+ width:18em auto;
+ display: compact;
+ }
+
+div #rightbox {
+ moz-background-clip:border;
+ moz-background-inline-policy:continuous;
+ moz-background-origin:padding;
+ background:#EECC99 url(http://dyne.org/images/dynebggrr2lsm.png) repeat-y scroll 0 0;
+ border-color:-moz-use-text-color #AA8855 -moz-use-text-color -moz-use-text-color;
+ border-style:none dotted none none;
+ border-width:0 1px 0 0;
+ clear:right;
+ float:right;
+ font-family:Georgia,Arial,Helvetica,sans-serif;
+ font-size:small;
+ margin-bottom:5px;
+ margin-left:10px;
+ padding:3px;
+ text-align:right;
+ width:25%;
+ }
+
+div #leftbox ul {
+ list-style: none;
+ padding: 0.5em;
+ }
+
+html.software .outline-3 {
+ margin-bottom: 2em;
+ clear: right;
+ text-align: justify;
+ }
+
+
+html.software h4 {
+ border-bottom: 2px dotted #EECC99;
+ font-style: italic;
+ font-size: 1em;
+ }
+
+html.menu2cols #outline-container-1 {
+ width: 33em;
+ float: left;
+ margin-left: 2em;
+ }
+
+html.menu2cols #outline-container-2 {
+ width: 20em;
+ font-size: 0.9em;
+ float:right;
+ }
+
+html.menu2cols #outline-container-2 h4 {
+ border-bottom: 2px dotted #EECC99;
+ font-style: italic;
+ font-size: 1em;
+ }
+
+
+html.menu2cols #outline-container-1 img {
+ float: right;
+ margin-top: -2em;
+ margin-left: 2em;
+ margin-bottom: 1em;
+ }
+html.menu2cols #outline-container-2 img {
+ margin: 5px auto;
+ }
+
+html.menu2cols #outline-3 {
+ margin-bottom: 2em;
+ clear: right;
+ text-align: justify;
+ }
+
+.org-mode #logo {
+ float: right;
+ clear: right;
+ margin-right: 2px;
+ margin-top: -8em;
+ display: compact;
+ }
+
+.org-mode header hgroup h1 {
+ color: #222222;
+ overflow: hidden; /* don't crowd the menu */
+ border: 0px;
+ border-bottom: 2px dotted #EECC99;
+ font-style: italic;
+ font-size: 28px;
+ padding: 0.5em;
+ margin-bottom: 0;
+ margin-left: 0;
+ white-space: nowrap;
+ }
+
+.org-mode .todo { color: red; }
+.org-mode .done { color: green; }
+.org-mode .tag { background-color: #add8e6; font-weight:normal }
+.org-mode .target { }
+.org-mode .timestamp { color: #bebebe; }
+.org-mode .timestamp-kwd { color: #5f9ea0; }
+.org-mode p.verse { margin-left: 3% }
+.org-mode pre {
+ border: 1pt solid #AEBDCC;
+ background-color: #F3F5F7;
+ padding: 5pt;
+ font-family: monospace, courier;
+ font-size: 90%
+ overflow: auto;
+ width: 90%
+ }
+.org-mode table { border-collapse: collapse; }
+.org-mode td, .org-mode th { vertical-align: top; }
+.org-mode dt { font-weight: bold; }
+.org-mode div.figure { padding: 0.5em; }
+.org-mode div.figure p { text-align: center; }
+.org-mode .linenr { font-size:smaller }
+.org-mode .code-highlighted {background-color:#ffff00;}
+.org-mode .org-info-js_info-navigation { border-style:none; }
+.org-mode #org-info-js_console-label { font-size:10px; font-weight:bold;
+ white-space:nowrap; }
+.org-mode .org-info-js_search-highlight {background-color:#ffff00; color:#000000;
+ font-weight:bold; }
+
+.org-mode .outline-1 { text-align: center; }
+.org-mode .outline-2 { margin-right: 1em; }
+.org-mode .outline-3 { margin-left: 1em; }
+
+.org-mode #postamble { opacity: 0.66;
+ font-size: 0.66em;
+ text-align: right;
+ display: none;
+ float: right;
+ clear: right;
+ width: 25em;
+ margin-right: 1.5em;
+ }
+
+
+.org-mode #menu {
+ width: 8em;
+ position: fixed;
+ font-size: 0.88em;
+ }
+
+
+.org-mode #document-types {
+ width: 15em;
+ float: left;
+ clear: left;
+ margin-left: 0.5em;
+ margin-right: 3em;
+ display: compact;
+ text-align: left;
+ }
+
+/* TOC on top of sidebar */
+.org-mode #table-of-contents {
+ width: 13em;
+ float: left;
+ clear: left;
+ margin-left: 0.5em;
+ margin-right: 3em;
+ margin-bottom: 0.5em;
+ display: compact;
+ }
+
+.org-mode #table-of-contents h2 { font-size: 1em; }
+.org-mode #table-of-contents ul { list-style: none; margin: 0em 0em; padding: 0; }
+.org-mode #table-of-contents li { margin: 0; padding: 0 0 0 0.5em; }
diff --git a/dyne-web/templates/footer.html b/dyne-web/templates/footer.html
new file mode 100644
index 0000000..66d7847
--- /dev/null
+++ b/dyne-web/templates/footer.html
@@ -0,0 +1,54 @@
+ <footer>
+ <hr />
+
+ <section id="credits">
+ <h2>Credits</h2>
+ <p>
+ <a href="http://dyne.org/" target="_top"><img src="http://dyne.org/images/dyne-sm.png" alt="dyne.org stamp" /></a><br />
+ is kindly hosted<br> by <a href="http://nimk.nl/">nimk.nl</a> and <a href="http://servus.at/">servus.at</a></p>
+ </section>
+
+ <section id="disclaimer">
+ <h2>dyne.org</h2>
+ <p>
+ Copyleft 2000 - 2010 dyne.org foundation and respective authors.
+ Verbatim copying and distribution is permitted in any medium,
+ provided this notice is preserved.
+ <p><a href="contact">Send your enquiries &amp; questions to dyne's hackers</a>.</p>
+ </p>
+ </section>
+
+ <section id="recognition">
+ <h2>Recognition</h2>
+ <ul>
+ <li><a href="http://www.gnu.org/"><img src="http://dyne.org/images/badges/gnu_75x65.png" alt="Dyne:bolic is listed on the GNU Free Distro page"/></a></li>
+ <li><a href="http://www.unesco.org/cgi-bin/webworld/portal_freesoftware/cgi/page.cgi?g=Information/Initiatives/index.shtml&d=1"><img
+ src="http://dyne.org/images/badges/listed-by-unesco_76x36.png" alt="Dyne and Freaknet are listed on the Unesco Archives portal since 2002"/></a></li>
+ </ul>
+ </section>
+
+ <section id="clustrMaps">
+ <!-- filled by dyne.js clustrMaps() -->
+ </section>
+
+ <section id="badges">
+ <h2>Internet Campains</h2>
+ <ul>
+ <li><a href="http://w2.eff.org/br/"><img src="http://dyne.org/images/badges/eff-blue-ribbon_80x15.png" alt="EFF Free Speech Campain"/></a></li>
+ <li><a href="http://eupat.ffii.org/"><img src="http://dyne.org/images/badges/no-software-patents_80x15.png" alt="No Software Patents!"/></a></li>
+ <li><a href="http://www.fsf.org/campaigns/playogg?set_language=en"><img src="http://dyne.org/images/badges/play-ogg_80x15.png" alt="Play OGG"/></a></li>
+ <li><a href="http://www.defectivebydesign.org/join/button"><img src="http://dyne.org/images/badges/no-drm_80x15.png" alt="Digital Rights Now!"/></a></li>
+ <li><a href="http://code.dyne.org/"><img src="http://dyne.org/images/badges/dyne-software_80x15.png" alt="dyne.org software badge"/></a></li>
+ </ul>
+ </section>
+
+ <section id="stats">
+ </section>
+
+ </footer>
+ <script type="text/javascript" src="http://dyne.org/javascripts/jquery.min.js"></script>
+ <script type="text/javascript" src="http://dyne.org/javascripts/dyne.js"></script>
+
+
+</body>
+</html>
diff --git a/dyne-web/templates/footer.tex b/dyne-web/templates/footer.tex
new file mode 100644
index 0000000..5050aa1
--- /dev/null
+++ b/dyne-web/templates/footer.tex
@@ -0,0 +1,9 @@
+
+\vspace{.5cm}\hrule\vspace{.5cm}
+
+Copyleft (C) 2000 - 2010 dyne.org foundation and respective authors.
+Verbatim copying and distribution is permitted in any medium, provided
+this notice is preserved. Send inquiries \& questions to dyne.org
+hackers.
+
+\end{document}
diff --git a/dyne-web/templates/header.html b/dyne-web/templates/header.html
new file mode 100644
index 0000000..63091af
--- /dev/null
+++ b/dyne-web/templates/header.html
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="<lisp>
+ (muse-html-encoding)</lisp>"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title><lisp>(muse-wiki-publish-pretty-title)</lisp></title>
+ <link rel="alternate" type="application/rss+xml"
+ title="RSS 2.0" href="http://feeds.feedburner.com/jaromil_research" />
+ <link rel="author" href="http://jaromil.dyne.org" />
+ <link rel="home" href="http://jaromil.dyne.org/journal" />
+ <link rel="shortcut icon" href="http://dyne.org/dyne.ico" />
+ <lisp>
+ (muse-style-element :style-sheet muse-publishing-current-style)
+ </lisp>
+ <meta name="description" content="<lisp>(muse-publishing-directive "desc")</lisp>" />
+ <meta name="keywords" content="poetry,time,text,art,web,free,software,open,source" />
+ <meta name="generator" content="Emacs Muse" />
+ <meta name="MSSmartTagsPreventParsing" content="TRUE" />
+ <!-- see http://www.glassdog.com/smarttags/index.html -->
+
+ <meta http-equiv="<lisp>muse-html-meta-http-equiv</lisp>"
+ content="<lisp>muse-html-meta-content-type</lisp>" />
+
+</head>
+
+<body>
+
+<header>
+ <nav>
+
+ <ul id="dyne_links">
+ <li><a href="http://dyne.org/">dyne</a> //</li>
+ <li><a href="http://dyne.org/software">software</a></li>
+ <li>:: <a href="http://dyne.org/culture">culture</a></li>
+ <li>:: <a href="http://events.dyne.org">events</a></li>
+ <li>:: <a href="http://planet.dyne.org">news</a></li>
+ <li>:: <a href="http://lists.dyne.org">discussion</a></li>
+ <li>:: <a href="http://museum.dyne.org/">museum</a></li>
+ <li>\\ <a href="http://freaknet.org/">freaknet</a></li>
+ </ul>
+</nav>
+
+</header>
+
+
+<!-- end of page header -->
+
+
diff --git a/dyne-web/templates/header.tex b/dyne-web/templates/header.tex
new file mode 100644
index 0000000..687f4c9
--- /dev/null
+++ b/dyne-web/templates/header.tex
@@ -0,0 +1,58 @@
+\documentclass[final,a4paper,10pt,onecolumn,twoside]{memoir}
+
+
+\usepackage[english]{babel}
+\usepackage{amsfonts, amsmath, amssymb}
+\usepackage{ucs}
+
+% I'd love to be able to use CB fonts for Greek letters instead, as
+% the ucs docs recommend, but i couldn't figure it out
+\SetUnicodeOption{mathletters}
+
+% define Unicode "middle dot" to be TeX \cdot
+\DeclareUnicodeCharacter{183}{\ensuremath{\cdot}}
+% declare Unicode "maplet" to be TeX \mapsto
+\DeclareUnicodeCharacter{8614}{\ensuremath{\mapsto}}
+% declare Unicode "leftwards arrow with hook" to be TeX \hookleftarrow
+\DeclareUnicodeCharacter{8617}{\ensuremath{\hookleftarrow}}
+% declare Unicode "downwards double arrow" to be TeX \Downarrow
+\DeclareUnicodeCharacter{8659}{\ensuremath{\Downarrow}}
+% define Unicode "white circle" to be TeX \circ
+\DeclareUnicodeCharacter{9675}{\ensuremath{\circ}}
+
+\usepackage[utf8x]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage{hyperref}
+\usepackage[pdftex]{graphicx}
+
+\def\museincludegraphics{%
+ \begingroup
+ \catcode`\|=0
+ \catcode`\\=12
+ \catcode`\#=12
+% \includegraphics[width=0.75\textwidth]
+ \includegraphics
+}
+
+% One-inch margins
+\usepackage{fullpage}
+
+% A more PDF-friendly font
+\usepackage{lmodern}
+
+
+% An alternate, blockier font, should I ever want it
+%\renewcommand{\familydefault}{\sfdefault} \sf
+
+<lisp>(when (muse-publishing-directive "latex-block-paragraphs")
+"\\setlength{\\parindent}{0pt}
+\\setlength{\\parskip}{4pt}")
+</lisp>
+
+% For two-column documents, increase center margin to something readable
+\setlength{\columnsep}{.25in}
+
+\begin{document}
+
+