*** empty log message ***

This commit is contained in:
david 2001-09-25 03:30:10 +00:00
parent 05f7060bd5
commit 4efc59bf43
3 changed files with 54 additions and 15 deletions

View File

@ -2,6 +2,9 @@ Release Date Version Notes
------------ ------- -----
Unreleased 0.6 ScrollKeeper access is locale aware
Malcolm: Content-length header
Malcolm: kill FileContents()
Malcolm: proper __init__ clause
2001-09-23 0.5 Moved internal cache files to cache root.
Handle anchors (#foo) in URIs.

View File

@ -1,11 +1,49 @@
This is a brief explanation of how the system works and what I plan to do with
it in the future. Please read it if you're interested in hacking ScrollServer.
Hopefully this gives you a general idea of how ScrollServer works. You'll have
to read up on ScrollKeeper as well to understand how the two work together.
If you would like to help develop ScrollServer, there are some bugs listed on
the SourceForge project page you could look into, or write me if you want to
develop a new feature.
david@lupercalia.net
Standards Compliance
--------------------
One goal of ScrollServer is to provide a completely standards-based
implementation to further the use of standards on the network. It is built using
the most recent W3C recommendations. Please read them if you want to hack any of
these technologies.
XLink 1.0 (W3C Recommendation)
XMLBase 1.0 (W3C Recommendation)
XPointer 1.0 (Last Call Working Draft)
ScrollServer and ScrollKeeper have the potential to become a complete
distributed information database based on the latest XML technologies for
creating richly linked data.
It is only recently that Linux documentation has started to move seriously into
XML, allowing projects such as this to exist. Thanks to all the hard work people
have put into creating good documentation for Linux. Hopefully ScrollServer will
make it easier than every to access that documentation.
Server Process
--------------
The server process is entirely in Python and makes use of the xml libraries.
All html files are generated using xsl stylesheets (XSLT) and formatting is
performed with a css stylesheet. There is a single stylesheet right now, but I
want to allow the user to select the stylesheet they prefer.
The HTTP server is based on SimpleHTTPServer, a python library.
Document Processing
-------------------
Internal pages are generated from xsl stylesheets. The documentation itself is
generated from DocBook SGML and XML sources and xsl stylesheets, but eventually
it will have to support man pages, info pages, and other formats.
@ -19,16 +57,14 @@ uri scheme so they appear to be part of a single tree.
There is no support for processing documents that are stored remotely. That's a
good todo item for somebody.
There is no search functionality. I could use one of the existing html searching
engines, and might have to to support html sources, but more powerful searching
should be possible someday using a DocBook aware search engine.
Hopefully this gives you a general idea of how ScrollServer works. You'll have
to read up on ScrollKeeper as well to understand how the two work together.
Searching
---------
There is currently no search functionality. I could use one of the existing html
searching engines, and might have to to support html sources, but more powerful
searching should be possible someday using a DocBook aware search engine.
If you would like to help develop ScrollServer, there are some bugs listed on
the SourceForge project page you could look into, or write me if you want to
develop a new feature.
david@lupercalia.net
A huge problem in all help systems is finding the needle in the haystack that
will answer your problem. So, the search engine has to have a big focus to make
ScrollServer an indispensable tool on your desktop.

View File

@ -186,10 +186,10 @@ class RequestHandler(BaseClass): # Intercepts the HTTP requests and serves them
self.send_header("Content-length", filesize)
self.end_headers()
return fd
return self.send_Text("Unrecognized file: " + filename
return self.send_Text("Unrecognized file: " + filename)
# Send a text message
def send_Text(self, text):
def send_Text(self, text): # Send a text message
self.send_response(200)
self.send_header("Content-type", "text/plain")
self.send_header("Content-length", len(text))