Redfoot

Blog ( Section )

Login to submit a blog entry.

Static Page Support

on Sunday 15 January, 2006:

Redfoot's static page support has been extended with a import and export command. The import command is useful for pulling static pages like images, css, javascript, etc into hypercode so that they become a part of the hypercode and not externally referenced entities that need to be installed manually. The export command is useful for getting the context back out of hypercode to enable editing via the filesystem.

Bookmark Aspect Added

on Monday 09 January, 2006:

Redfoot now has a Bookmark Aspect. The bookmark aspect adds functionality to sites that make it easy to bookmark, categorize, and manage bookmarks.

Redfoot hosting providers

on Wednesday 12 October, 2005:

I have been asked about hosting provider options for hosting a redfoot powered site and wanted to let people know that I will be trying out a vserver account provided by Hosting-Agency. I'll report back when I get a chance to get things set up and see how it goes.

Better mapping out the hosting options and requirements for Redfoot is part of our Roadmap moving forward.

Edit Content Support Added

on Wednesday 05 October, 2005:

A new aspect called edit_content has been added for editing page content. Currently it is an editor for the content handler and so does not work on all page types. This is a useful first step as it'll allow for the editing of many pages and is a step along our path towards a fully generic page content editor.

Installing Redfoot on OS X Server

on Sunday 02 October, 2005:

When I was trying to set up redfoot on Mac Minin running OS X Server (Tiger). The following error messages showed up.
I wonder which tep I did went wrong.
fyius:/usr/local/bin bkoo$ fyius:/usr/local/bin bkoo$ ./redfoot --program=http://redfoot.net/hypercode/programs/helloworld#
-bash: fyius:/usr/local/bin: No such file or directory
fyius:/usr/local/bin bkoo$ INFO redfoot version: 2.0.0
INFO rdflib version: 2.2.2
Traceback (most recent call last):
  File "./redfoot", line 6, in ?
    main()
  File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/redfootlib/main.py", line 52, in main
    loader.close()
  File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/rdflib/Graph.py", line 69, in close
    self.__backend.close()
  File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/rdflib/backends/Sleepycat.py", line 675, in close
    self.__contexts.close()
AttributeError: 'Sleepycat' object has no attribute '_Sleepycat__contexts'fyius:/usr/local/bin bkoo$ ./redfoot --program=http://redfoot.net/hypercode/programs/helloworld#
INFO redfoot version: 2.0.0
INFO rdflib version: 2.2.2
Traceback (most recent call last):
  File "./redfoot", line 6, in ?
    main()
  File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/redfootlib/main.py", line 52, in main
    loader.close()

HTTP PUT and GET from emacs

on Saturday 17 September, 2005:

I've been wanting to be able to use emacs in a RESTfull way to edit resources for some time now and have finally got over the hurdle of figuring out how. Here's the first cut (which is working for me on GNU Emacs 22.0.50.2):

(defun my-save-buffer (&optional args)
  "Check to see if filename is really a URL"
  (interactive "p")
  (require 'url-parse)
  (if (url-type (url-generic-parse-url (buffer-name)))
      (progn (url-dav-save-resource (buffer-name) (current-buffer)) (message "HTTP PUT %s" (buffer-name)))
      (save-buffer args)))
(defun my-url-callback (&rest ignored)
  (require 'mm-decode)
  (require 'mm-view)
  (let ((handle (mm-dissect-buffer t)))
    (url-mark-buffer-as-dead (current-buffer))
    (with-current-buffer
        (generate-new-buffer (url-recreate-url url-current-object))
      (if (eq (mm-display-part handle) 'external)
	  (progn
	    (set-process-sentinel
	     ;; Fixme: this shouldn't have to know the form of the
	     ;; undisplayer produced by `mm-display-part'.
	     (get-buffer-process (cdr (mm-handle-undisplayer handle)))
	     `(lambda (proc event)
		(mm-destroy-parts (quote ,handle))))
	    (message "Viewing externally")
	    (kill-buffer (current-buffer)))
      (add-hook 'kill-buffer-hook 
		  `(lambda () (mm-destroy-parts ',handle))
		  nil
		  t))
      (switch-to-buffer (current-buffer))
      ))
  (message "find-url finished: %s" (buffer-name))
)
(defun url-mm-url (url)
  "Retrieve URL and pass to the appropriate viewing application."
  (require 'url)
  (url-retrieve url 'my-url-callback nil))
(defun find-url (url &optional wildcards)
  "HTTP GET"
  (interactive "MFind URL: ")
  (url-mm-url url)
  "")
(global-set-key "\C-x\C-s" 'my-save-buffer)
(global-set-key "\C-x\C-g" 'find-url)
(setq url-mime-accept-string "application/rdf+xml")

Semantic enhancements in filesystems

on Wednesday 14 September, 2005:

I recommend that people read kerneltrap's Interview with Hans Reiser. One quote from the end of the interview:

Hans Reiser: During the next 5 years filesystems will change tremendously. For 30 years only the storage layer has been changing, and people have been afraid to change the important stuff. Now all of a sudden there are three teams attempting major semantic enhancements, Dominic Giampaolo's team at Apple, WinFS, and us. This is a fun time to dive in. The easiest thing to do is to write a reiser4 plugin. The code is free, the design makes a plugin something a student can attempt (assuming you keep it simple).

I've been tracking the reiser filesystems ever since I read the Namesys Whitepaper. I think there's a lot of overlap in his vision and why Redfoot is using an RDF Graph as a semantically enhanced filesystem.

Redfoot.app for OS X Tiger

on Saturday 27 August, 2005:

I've been experimenting with creating a binary version of Redfoot for OS X. I've created a version for OS X Tiger using redfoot-2.0.0 and rdflib-2.2.1. If you'd like to give it a try: download Redfoot-2.0.0.dmg, mount it, and drag Redfoot.app to Applications (any folder will do). Double click on Redfoot.app to launch it.

I'll follow up with some examples to try in a separate post. In the mean time you can try entering:

editor
in the command input box (top one) and you should see an editor tab appear (may take a few moments the first time as it needs to download the editor bundle). You can also try typing other commands -- you'll get a list of available commands if you enter an empty command. I should probably add a command called help ;)

Subscribe: Atom