Fog Creek Software
Discussion Board

Knowledge Base
Terry's Tips
Darren's Tips

feature request: Keywords lookup table

When populating the keyword field, I'd like to see a keyword "lookup" table displayed with all the keywords and their text description.

When constructing foreach loops, I'd like this same keyword lookup table to select my keywords.

Keyword management is justified because keywords bridge the gap between using articles as a flat-file database, and mimicking a relational db.

Maybe that makes sense only to me.

Think of it this way: keywords make my foreach loops work. My list of keywords is growing so much that I am losing track of what they are/why I made 'em up in the first place. I'm at the point where I may end up with two keywords that mean the exact same thing.

A lookup table will also  help collaborative sites. Perhaps the lookup table should also have a field for "author".


Bob Bloom
Tuesday, August 5, 2003

Bob, this is an oldie, but a goodie.

Edit to suite your needs.

<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<body bgcolor="#FFFFFF">
<table width="750" border="0" cellspacing="1" cellpadding="2">
    <td>File Name</td>
{$foreach x in (all) $}
    <td><a href="{$$}">{$x.filename$}</a></td>
Tuesday, August 5, 2003

Let me tweak that a bit:

<table width="100%" border="1" cellspacing="0" cellpadding="0">
    <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">File Name</font></b></td>
    <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Headline</font></b></td>
    <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Keywords</font></b></td>
  {$foreach x in (all) $}
    <td><font face="Arial, Helvetica, sans-serif" size="1"><a href="{$$}">{$x.filename$}</a></font></td>
    <td><font face="Arial, Helvetica, sans-serif" size="1">{$x.headline$}</font></td>
    <td><font face="Arial, Helvetica, sans-serif" size="1">{$x.keywords$}</font></td>
Tuesday, August 5, 2003

I absolutely agree with Bob: we need better keyword management - it would greatly increase CD's value.

Thanks Mark for the script; it generates a nice overview; better than nothing.

Paul Iliano
Wednesday, August 6, 2003

Personally, I actually think the keywords field isn't used for what I believe it was created for, or what the name "keywords" implies for that matter.

As I see it, keywords should contain meta-data, words that describe the article. Like <meta name="keywords" content="..."> does in HTML.

What most people (or at least quite a few) use it as is, as you say, a way to create references between articles. For that purpose, I don't think the a single text-field as it is now is very good. Neither is the name "keywords" I think. Perhaps some other field, more suitable for the task, could be introduced.

Just my 20 Swedish öre (about 2 cents). =)

Henrik Jernevad
Wednesday, August 6, 2003

Yes, it's really for article metadata but "keywords" is a more user-friendly and understandable term.

John Topley (
Wednesday, August 6, 2003

I use the current keyword field for both pulling articles together in categories and for <meta name="keywords" content="..."> (although this second use is not so important with today's search engines).

I see no incompatibility there. To my feeling, categories are best described as keywords.

You can always learn from those who went before and tried to solve the same problem. I studied history, and have seen firsthand how libraries have been organized for centuries via keywords into categories. Today's scientific papers for instance will carry an abstract and a list of keywords at the top, helping researchers to catalog and organize them, thus making sense of the vast array of sources.

In today's CD, the abstract would be the teaser, and keywords would be keywords.

To go a step further: Imagine a CD article page showing title, teaser/abstract, and a list of keywords where each keyword is linked to a list of articles that carry that keyword too. Presto, you would have clickable titles of the categories the article belongs to, thus allowing the visitor to peruse a site's content by following these related links.

Compared to the fixed navigation structure the web author created, probably from some idiosyncratic perspective, the visitor would have more navigation options, enabling serendipitous discoveries and learning.

Paul Iliano
Wednesday, August 6, 2003

Some-one else requesting enhanced use/scripting for the CSV sKeywords field. My request is:

{ $ForEach KeyWord In KeyWords $}
... do something with KeyWord ...
($ Next $}

Wednesday, August 6, 2003


I should make myself clear. What I ment is that I don't think a single text-field is a good idea for writing keywords, or names of the categories that an article belongs to.

It would be more fitting to be able to select a category that you already use, to reduce the risk of creating a miss-spelled version of an existing category.

I do think it's handy to categorize the articles (using keywords, as it is now), I do it all the time. But I think perhaps naming them "Categories" and change the UI a litle bit could be more fitting for that purpose.

Henrik Jernevad
Thursday, August 7, 2003


I agree the current text field is inadequate. In fact, I proposed to handle keywords using variables as the model: creating a list of keywords like variables, and being to insert them via a menu Insert > Keywords.

Paul Iliano
Thursday, August 7, 2003


that seems like a good suggestion. It's pretty much what I mean.

Regarding the naming "issue": I still think there's a difference between "keywords" and "categories" though. Keywords, being meta-data, should not contain things like "(don't publish)" that doesn't really have any thing to do with the content of the article. At least I think so.

Henrik Jernevad
Thursday, August 7, 2003

Henrik, that's all I use keywords for is to determine where articles should go, if they should be published, etc.

Forget that it's called keywords and think of the functionality it has. Just because it is called keywords does't mean it belongs in the meta tag keywords.

I use Extra2 for my meta tag keywords because it has no functionality attached to it.... besides, didn't Joel tell us that no major search engine uses keywords? Though I think that's not true... My friend's page shows up in searches it shouldn't because it has certain keywords.....

Or how about this. Use Joel's proposed "(inparens)" keywords to control the flow of content, and then write the page keywords for the meta tag "withoutparens." I don't think that will break either use.
Thursday, August 7, 2003

Regarding the name "keywords": I don't mean it can't be called keywords just because there is a meta tag using the name "keywords" in HTML. I just mean I think there could be a name that more accurately describes what the field actually is used for.

To try to say what I mean very clearly:
Throw away the current keywords field and replace it with something that is better to use for the "directives" that we all use the current keywords field for. Instead of a textbox, give us a way to select some pre-defined "categories", "directives" or whatever they should be called.

And I don't think Google or the other major search engines (are there any other major search engines besides Google, anyway? =) ) use meta keywords, simply because they're so easy to fake. They'd screw the whole ranking up.

Henrik Jernevad
Thursday, August 7, 2003

Well, I rely on the Keywords to be keywords in the perhaps older sense: I use them to stick searchable terms onto an article.  I know the major search and directory services have largely given up on them, and it's too bad.  Like a lot about the Internet, a good deal of damage can be done when tools are used for ill (scripts don't kill networks, people kill networks).

But I'm using them myself for a lightweight client-side (sorry, IE only) site search engine.  The idea is to offer an author-controlled site search facility for sites hosted on totally static hosting services and file-URL based intranets.  You'd be amazed at how many large companies don't support things like workgroup intranets, leaving people to stick lots of memos and spreadsheets on file servers in a haphazard fashion or just keep emailing copies of stuff all around.

But to get to my point...

I'd rather see Keywords left as-is rather than "enhanced" in some way.  I could always use Extra 1 or Extra 2, but gee the field IS called Keywords.  ;)  Maybe a new thingy of some sort could be added, such as a user-definable and CityScript-accessible "attributes" list.

Bob Riemersma
Sunday, August 24, 2003

*  Recent Topics

*  Fog Creek Home