[TxMt] Re: Mathematica (with a bit of TextMate theology as bonus)
Jacob Rus
jrus at hcs.harvard.edu
Wed Dec 6 17:35:25 UTC 2006
rafale labosk wrote:
> You're argument for breaking the pedagogic rules is
> not lost. That said, list or non-algol programming
> does not necessarily fit any pre-defined patterns.
> You're not solving a problem, but setting up the
> parameters for a solution to emerge. Time will tell if
> TM's pattern matching system is conducive to this way
> of thinking. It actually does not matter on another
> level since the system is a productivity boon no
> matter which way you cut it.
Hmm, I'm not sure that's completely true. Even languages which are as
free-form as lisp have some common idioms; approaches to similar
problems which can be wrapped up into time-saving snippets.
Additionally, there are many elements of simple syntax manipulation,
such as the "Extend Current Parens" command in the Experimental bundle,
which if they were refined would end up making the life of lispers much
nicer. (Incidentally, anyone who uses lisp/scheme and TextMate should
take a look at that command. It's pretty nifty IMO. I don't remember
who made it, but I think several similar ideas could make TextMate into
a real lisp powerhouse)
> Yes, TM has something to do with smart folders, or
> smart folders have something to do with TM, depending
> on your point of reference. Both points of reference
> are good.
[...]
> How do you go about collecting the info? The net,
> articles, books etc. You store this information on
> your HD, preferably as --small txt files-- or refined
> clippings. This is actually critical given Spotlight's
> current limitations.
>
> You then need metadata the to understand the
> overriding concepts. Try dynamic raw spotlight queries
> of the kMDItemTextContent variety, for instance. Then
> whatever raw queries you've set up as smart folders
> will produce text files fitting the query parameter
> (you can make this quite complex). What's interesting
> here is that the same text file can be in N smart
> folders. You now have a basis for forming sets of
> metadata that semantically mean something.
[...]
> Now take each smart folder content and drop it into a
> tmproj pane. Group the text files with your keyboard
> shortcut (Options, Volatility, Risk) >> you get an
> outline with the same files sometimes in different
> groups courtesy of unix aliases.
>
> Better yet, you have the basis of a knowledge system
> that can be elegantly reviewed and navigated. It works
> and is a 3 minute exercise assuming you're smart
> folders are set up. TM becomes a Reader.
>
> You can therefore use TM to outline in a non-linear
> fashion. You can further refine inside tmproj with
> search criteria and all text tools at your disposal.
Ah, okay. Well, in that case, I just suggest you wait until TextMate
2.0 comes along, when, it is my great hope anyway (Allan, are you
listening!?), TextMate will be able to view the contents of smart
folders with ease. Given that Leopard should also give us hopefully the
ability to add arbitrary spotlight metadata to items in the form of
xattrs, your vision should be wholly realizable. The way I see this
working is we use one command to bring up some sort of keyword
interface, and then we navigate to a place where several smart folders
matching those keywords can be found (and of course other criteria can
be used as well, for dynamically generated "smart" collections of your
snippets), and we examine the Text Documents inside of them. This ends
up working somewhat like a wiki with category pages, or like iTunes with
its playlists.
> The question is how do you link the text in-between
> the files in tmproj? I'll leave that for another day.
And the answer to this is that you make them Markdown documents, and you
use reference style links to link between the documents, for instance, I
might link to another [file][mycoolfile] like this.
[mycoolfile]: ../stuff/mycoolfile.text
Someday soonish, I'm going to make sure that such links can be used to
link between documents, and that hitting the ⌅ key inside such a link
(and it's important that this works both in the reference and in the
definition) opens up the relevant file in TextMate.
Combined with some special facility for rendering such markdown
documents as a sort of ad-hoc wiki, where the links to files are
converted to links which render those files as html, and where an "edit"
link at the top can open the current page in TextMate, I think we can
come up with quite an awesome personal data manager, better for its
openness and flexibility than comparable standalone apps such as
Yojimbo, StickyBrain, Voodoopad, etc.
Anyway, I certainly do understand your desire for non-linear, abstract
collections of data, and I really wish this was how computers worked all
the time. I'm sick and tired of the file-folder-desktop metaphor we've
been stuck with for 20 years now: it's not human-friendly; it creates
unnecessary mental overhead; it's not convenient; it leads to horrible
clutter on my desktop.
So I say, bring on the future! If Apple will get their act together
with Leopard metadata, and really exploit spotlight/xattrs true
potential, then I will be very very happy. BeOS did it 10 years ago,
and the guy who made it happen there now works for Apple. So I remain
optimistic.
Incidentally, the One Laptop Per Child $100 laptops will have a
non-traditional file manager called the "journal" which completely does
away with hierarchical file systems, opting for this kind of
sorting/searching interface instead, in which all collections are
dynamic, generated from metadata, and in which every single object can
be annotated, cross referenced, and described with arbitrary metadata.
If it works out, it should be quite amazing.
Cheers!
Jacob Rus
More information about the textmate
mailing list