It is designed to allow the programmer to express as much of the view
logic as desired in Python, and includes a pure Python XML expression
syntax named stan to facilitate this. However it also provides rich
support for designer-edited templates, using a very small XML
attribute language to provide bi-directional template manipulation
capability.
Nevow also includes Divmod Athena, a "two way web" implementation,
providing a two-way bridge between Python code on the server and
JavaScript code on the client. Modular portions of a page, known as
"athena fragments" in the server python and "athena widgets" in the
client javascript, can be individually developed and placed on any
Nevow-rendered page with a small template renderer. Athena abstracts
the intricacies of HTTP communication, session security, and
browser-specific bugs behind a simple remote-method-call interface,
where individual widgets or fragments can call remote methods on their
client or server peer with one method: "callRemote".
ok pyr@
This is intended mainly as a support package for code used by Divmod projects,
and not as an external library. However, it contains many useful modules and
you can feel free to use them!
Currently included:
* A powerful date/time formatting and import/export class
(ExtimeDotTime), for exchanging date and time information between all
Python's various ways to interpret objects as times or time
deltas.
* Tools for managing concurrent asynchronous processes within
Twisted.
* A metaclass which helps you define classes with explicit states.
* A featureful Version class.
* A formal system for application of monkey-patches.
ok pyr@
users downloading this from official distribution sources.
(We are in compliance, but without an explanation, someone
might not notice this if they update it later).
This project aims at increasing the number of available Arabic free and open
source fonts. The goals of this project are:
* Create and/or salvage free and open TTF Arabic fonts.
* Create a central repository of all free and open source Arabic fonts
(TTF and otherwise) in order to get them included into the various
distributions.
* To better couple and artistically match Arabic fonts to their latin
counterparts.
IAXmodem is a software modem written in C that uses an IAX channel
(commonly provided by an Asterisk PBX system) instead of a traditional
phone line and uses a DSP library instead of DSP hardware chipsets.
IAXmodem was originally conceived to function as a fax modem usable
with HylaFAX, and it does that well. However IAXmodem also has been
known to function with mgetty+sendfax and efax.
.. much cleanup from my earlier verisions, thanks brad@
rpl is a UN*X text replacement utility. It will replace strings with new
strings in multiple text files. It can work recursively over directories
and supports limiting the search to specific file suffixes.
From James Turner (james - bsdgroup dot org)
ok mbalmer@
Like Ruby on Rails, Merb is an MVC framework. Unlike Rails, Merb is
ORM-agnostic, JavaScript library agnostic, and template language
agnostic, preferring plugins that add in support for a particular
feature rather than trying to produce a monolithic library with
everything in the core. In fact, this is a guiding principle of the
project, which has led to third-party support for the ActiveRecord,
DataMapper, and Sequel ORMs.
Haml and Sass are templating engines for the two most common types of
documents on the web: HTML and CSS, respectively.
They are designed to make it both easier and more pleasant to code
HTML and CSS documents, by eliminating redundancy, reflecting the
underlying structure that the document represents, and providing
elegant, easily understandable, and powerful syntax.
A framework to allow Ruby applications to generate file/folder stubs
(like the `rails` command does for Ruby on Rails, and the 'script/generate'
command within a Rails application during development).
ruby2ruby provides a means of generating pure ruby code easily from
ParseTree's Sexps. This makes making dynamic language processors much
easier in ruby than ever before.
ParseTree is a C extension (using RubyInline) that extracts the parse
tree for an entire class or a specific method and returns it as a
s-expression (aka sexp) using ruby's arrays, strings, symbols, and
integers.
Ruby Inline is an analog to Perl's Inline::C. Out of the box, it
allows you to embed C/++ external module code in your ruby script
directly. By writing simple builder classes, you can teach how to cope
with new languages (fortran, perl, whatever). The code is compiled and
run on the fly when needed.
Using the package_inline tool Inline allows you to package up your
inlined object code for distribution to systems without a compiler.