June 2013

New entries in the Docs menu

  • You can get to the Presentation and Blog post howtos from the Docs menu.

The eye icon is a little smarter

  • Suppose you're editing in a named outline, inside a presentation or a blog post. The cursor is on one of the subs, not on the top headline.

  • Previously, if you clicked on the eye icon, it would erroneously take you to a rendering of the headline you are on.

  • Now it shows you the post or presentation.

  • Saves you from having to move the cursor just to view the document.

Fixed a bug in encoding RSS descriptions

  • The text of the description element in each item was double-encoded, so when you viewed it in a feed reader, you'd see the markup instead of the effects of the markup.

Excessive saving bug

  • In certain circumstances Fargo would save an outline on each change as many as 20 times. You would experience this as a sluggishness in the Save button in the right margin. Dropbox would experience an excessive amount of traffic for each save.

  • The problem was that we were setting the <link> element in the OPML <head> section every time we saved the RSS. This would mark the outline as changed, which would force another save, marking the outline dirty, and around the loop we go. Since the saving happens asynchronously, eventually there would be a moment when the outline was not changed and it would stop the cascade. Now that it's fixed you get one save per change, and one build of the RSS feed. Whew!

The contents of the right sidebar is fixed

  • It doesn't scroll as you navigate down through the outline.

  • This is as it always should have been.

06/30/13; 07:41AM

flDisqusComments attribute

  • A new attribute that's a carryover from the worldoutline software, it lets you selectively turn off comments without modifying the template.

  • If flDisqusComments is defined and is not equal to "true" then the <%comments%> macro is the empty string.

  • Here's a screen shot of the attributes of a headline with the new attribute set false.

rssLink macro

  • We now have a proper link to the feed embedded in every page on our sites.

  • The new macro is called rssLink (). If there is a feed element in the head of the OPML, we generate the link. If the element isn't there, we return the empty string.

    • <%rssLink ()%>
  • It's meant to be included in the head section of the template. It's supported in the default templates.

googleAnalytics macro

  • A new macro generates the code to connect with Google Analytics.

  • The macro takes one optional parameter, the account identifier.

    • <script><%googleAnalytics ("UA-XXXXXXXX-1")%></script>
  • It can also be called without a parameter, then we get the ID from the #googleAnalyticsID directive.

    • #googleAnalyticsID "UA-XXXXXXXX-1"
  • If both the parameter and the #googleAnalyticsID directive are not present, the macro returns the empty string.

  • For the domain name, we use the Host header on the HTTP request.

Disqus change

  • The default groupname was scripting2. It has changed to smallpict.

  • It's important to make this change as early as possible in the deployment of Trex. We should have made it even earlier.

  • The upshot is that any existing discussions you have will now be empty. If you haven't had any discussions yet, there's nothing to worry about. However if you have some, and want to keep them, there is an easy fix.

  • Add this directive where ever you need to use the old group.

    • #disqusGroupName "scripting2"
  • I needed to do this for dave.smallpict.com. I just put it inside the June 2013 branch. With July 1 on Monday, the site will automatically switch over to the new group.

  • Of course you can easily create your own disqus group to allow the comments of your users to all be grouped together. Highly recommended!

06/29/13; 16:37PM

We've transitioned from running a community feed, to using RSS and hooking into the wealth of new RSS-consuming applications.

We learned a lot from the experience with the community feed, but now it's time to complete the transition, so we removed the icon for the community feed in this release, and updated the Fargo docs accordingly.

Also, there's a new howto that shows how to create a presentation with Fargo.

06/28/13; 07:29AM

New demo site

  • We've started a new demo site, just for the purpose of illustrating Fargo features.

  • http://kim.smallpict.com/

  • It's Kim Parker's site, newly hired senior evangelist at Bloatware. She just got started with Fargo, and is using it to communicate with customers, the press and her colleagues at Bloatware.

  • You can always see how she's doing it with the Open by name command in the File menu. Enter kim and click OK.

Menus have menus

  • Previously menus could only have links, but now they can have full menus.

  • The top-level items in the menu structure are either links (as before) or they are menus if they have subs.

  • Items in menus can have sub-text. If so, those are accessed through special URLs that Trex generates automatically. They behave just like other pages in Trex. Add a type attribute to make render the way you want. Or any other attributes. It goes through the normal rendering process for a page.

  • You can have separators in menus. Just put a hyphen on a line to create a separator. Anything other than a single hyphen is interpreted normally.

  • Items are disabled if they aren't links and don't have a type attribute.

Bootstrap themes

  • Thanks to Angelo for pointing us to the Bootswatch site and their incredible Bootstrap themes. This led to a new feature in Trex.

  • Each of the themes on Bootswatch has a name, like flatly, readable or united.

  • You can apply one of these themes to your Fargo site with the #bootstrapTheme attribute.

    • #bootstrapTheme "readable"
  • You can also provide the full URL to the theme:

    • #bootstrapTheme "http://bootswatch.com/readable/bootstrap.min.css"
  • We substitute the bootstrap.css file with the CSS file specified by the bootstrapTheme att. In a sense, the original Bootstrap CSS file is just the default theme.

  • Because you can put a URL in place of the name, you can use CSS files that you create yourself or get from others. A place for shared creativity.

The numbering rule

  • The new numbering rule allows you to put symbols, numbers or letters, in front of outline entries when they're rendered.

  • There are several possible values: decimal, roman, alpha, harvard.

  • decimal puts numbers, 1, 2, 3 etc in front of items.

  • romanUppercase puts Roman numerals in front of items: I, II, III, etc.

  • romanLowercase uses lowercase versions, i, ii, iii.

  • alphaUppercase puts alphabetic characters in front of items: A, B, C.

  • alphaLowercase puts alphabetic characters in front of items: a, b, c.

  • harvard uses the Harvard outline conventions.

  • Demos of the numbering rule are on the helloworld site.

Comments in templates

  • In previous versions comments would pass through Trex to the page. Now they are stripped before rendering, as comments should be.
06/26/13; 07:01AM

The name attribute gives us a canonical way to refer to a headline that doesn't vary with its text. Prior to version 0.84 Fargo wasn't generating them, now it is.

When you click on the Eye icon in the left margin, we take the text of the headline, remove blanks and some special characters and innerCase the text to form the name attribute.

Net-net: Links won't break if you change the text of a headline.

06/22/13; 12:03PM

Default Time Zone

  • The default time zone is set to Eastern time.

  • More specifically the attribute "siteTimeZone" defaults to the value "-4".

    • -4 means 4 hours behind UTC.
  • You can override this in your named outline with a directive at the top level:

    • #siteTimeZone "-7"

Bloghome and Markdown

  • Markdown posts are now rendered correctly within the bloghome template.

  • The markdown content of the post is wrapped in a DIV with class "markdown."

  • Outline rules like list-space, outline-indent, outline-space and outline-space-before will not apply within the Markdown generated content.

    • You'll have to use CSS and the wrapper class "markdown" to style the spacing and padding of elements within the Markdown content.
  • Kyle

06/22/13; 15:40PM

Jeffrey Kishner points out that <rules> were being included in the RSS description element of Fargo's new feeds. That's not cool! Rules are meant to guide the rendering on Trex, but won't mean anything to a RSS aggregator. So in this release we take the rules out as we send the text out to RSS.

The hits keep coming!

06/20/13; 18:36PM

You can now use Fargo to post items to an RSS feed.

Every outline has a feed, but the feed is only public for named outlines.

The feeds are created in a new sub-folder of the Fargo folder called rss.

You can access the feed through the named outline at /rss.xml.

For example, my feed is at http://dave.smallpict.com/rss.xml.

To add an item to the feed, click the + icon in the left margin. The main headline is the title of the item. The subtext forms the RSS item description.

If you don't want the + icon to create feed items, you can turn this feature off in the Insert panel of Settings. Screen shot.

You can cause any headline to be part of the feed by adding an isFeedItem attribute with the value true.

PS: My feed is valid.

06/20/13; 12:02PM

Some people report named outlines for which the eye icon does not appear. We have a fix that works in some situations.

The fix

    1. Open the outline in Fargo.
    1. Make it the current tab.
    1. Choose Name outline in the File menu.
    1. Enter the name of the outline. Ignore the message that says the name is taken.
    1. Click OK.

What should happen

    1. You should get a confirmation dialog saying the name has been assigned.
    1. When you edit the outline you should see the eye icon.
06/19/13; 11:01AM

With this release Fargo is coupled with a new content management system called Trex, which was also developed at Small Picture. This means that you can publish documents and presentations from Fargo. And it's easy!

How to publish

    1. Open a named outline.
    1. Create a new headline in that outline, something like My first story.
    1. Write a paragraph or two indented beneath the headline.
    1. Put the bar cursor on the top headline, and click the suitcase icon in the left margin to edit attributes.
    1. Add a type attribute, with the value outline. Click OK.
    1. Click the eye icon in the left margin.
  • You should see a simple lovely page with your words on it!

Viewing an outline

  • If you enter paragraphs under a headline you get something that looks like a story, but if you enter indented headlines, you get something that looks like an outline.

  • Here's an example that looks like an outline.

  • And here's one that looks like an essay.

Make a presentation

    1. Open a named outline.
    1. Enter a main headline, something like My first presentation.
    1. Enter a series of slide titles underneath, Slide 1, Slide 2, etc. (Or be creative!)
    1. Under each slide title, add a few bullet points.
    1. Put the cursor on the main headline, and click the suitcase icon to edit attributes.
    1. Add a type attribute, with the value presentation. Click OK.
    1. Click the eye icon in the left margin.
  • Here's an example presentation. This is what it looks like as it's being edited in Fargo, and the OPML for the presentation.

Profile change

  • The special headline with the text profile is still displayed when we display the top level of your website, but instead of using Reader to display the outline, we use the content management system.

  • For example, here's my profile outline.

  • Because the headline must be exactly profile in order for it to be recognized, you'll need a way to specify the text that's displayed in place of the headline text when the page is rendered. You can do this with a #text directive just below the headline.

  • Here's a screen shot that illustrates.

Where we go from here

  • We want to make a great environment where writers, designers and programmers work together.

  • There's a lot more that Trex can do. We plan to provide simple Fargo-based interfaces for much of it. But we're going to show the features slowly, one step at a time.

Lifting the hood

  • If you're a web developer or designer, you may want to dive right into Trex, if so here are the docs. But we want to emphasize that if you're a writer and non-technical, you don't need to understand what's in the engine. It's our job to make this simple for you, a job that we take very seriously!

Participate

  • When you write something new feel free to post a link in a comment here.

  • We want to see how you're using the new stuff.

  • Questions and comments are most welcome.

06/18/13; 07:10AM

Last built: Mon, Jan 6, 2014 at 12:39 PM

By Dave Winer, Sunday, November 10, 2013 at 1:54 PM.