TclVFS is the extension that exposes the core level Virtual File System (VFS) layer, now part of Tcl/Tk (8.4a5 is required, 8.4.1.1 or newer for best possible operation, using Tcl 8.4.3 or 8.4.4 would be a good idea.). The current version of the tclvfs extension is 1.3.0 Take a look at the [One-line web browser in Tcl] using [TclVFS]. ---- See also [VFS]. The C extension is now very robust and well tested. But, distributed with tclvfs are a large number of virtual filesystem implementations (in pure Tcl). Many of these still need a lot of work (but since it is pure Tcl, lots of people should be able to help). tclvfs relies on [Memchan] or some equivalent to 'open' (or 'load' or 'source') any file. '''Please help develop the tclvfs package further!''' Contributions of binary versions of tclvfs to be placed on sourceforge much appreciated. TclVFS needs to be stress tested, QA'd and put into either the core, or a standard [Tcl Binlib] ... it's far too useful and fundamental for it to be kept as an optional extension. ---- Home page on SourceForge: http://sourceforge.net/projects/tclvfs/ This package is part of the [ActiveTcl] Batteries Included distribution. ---- '''VFS links''' * [tclVFS Usage] * [tclVFS Building] * There are some idiosyncrasies in writing a tclvfs, save some time by checking [tclVFS Gotchas] * [tclVFS Hints and Tricks] * [tclVFS Examples] * [tclVFS Needs] * Readonly - writable - translucent ... see [vfs filesystem configuration] ---- '''VFSs distributed with the TclVFS extension''' * package ifneeded [vfs::ftp] 1.0 * package ifneeded [vfs::http] 0.5 * package ifneeded [vfs::mk4] 1.6 * package ifneeded [vfs::ns] 0.5 * package ifneeded [vfs::tar] 0.9 * package ifneeded [vfs::test] 1.0 * package ifneeded [vfs::urltype] 1.0 * package ifneeded [vfs::webdav] 0.1 * package ifneeded [vfs::zip] 1.0 * package ifneeded [vfs::tk] 0.5 * (this list will grow, incorporating elements from the other two) ---- '''VFSs''' not (yet) distributed with the TclVFS extension. * [A collate/broadcast virtual filesystem] * [A template virtual filesystem] * [A quota-enforcing virtual filesystem] * [A versioning virtual filesystem] * [A delta virtual filesystem] (designed to be used with the versioning VFS) * [An LZW-compressing virtual filesystem] * [An SSH virtual filesystem] * [A chroot virtual filesystem] * [Caching VFS] * [Wikit VFS] * A vfs that accesses Microsoft structured storage files [http://www.patthoyts.tk/tclstorage/index.html] * A new davvfs is included in [davkit] * [vfs::inmem] - an in-memory virtual file system * (add more) ---- '''Possible VFSs''' * [metadata virtual filesystem] * [tclCVS virtual filesystem] * [pure tcl distributed filesystem] * (add more) ---- '''Questions, Problems''' Can tcl and tclvfs together be used to poke around a starkit? ''Don't understand the question. Yes, would be my answer, mount the starkit via vfs::mk4 ... -[jcw]'' 04feb05 [jcw] - Would it be an idea to map an arbitrary X(HT)ML tree to VFS? [LV] So the results would be the ability to navigate an XML tree as if the nodes were directories and the actual items would be files? Sounds intriguing. How would the attributes be represented? ---- I think a very nice vfs would be an LDAP vfs using the tcllib ldap package to present a DIT as a filesystem. (and entries probably as LDIF formatted files) ---- [[ [Category Package] | [Category VFS] ]]