Nesta 0.9.8 is now available on rubygems.org. Upgrade instructions can be found on the blog: http://nestacms.com/blog/version-0-9-8 It's a bug fix release to address the failure to serve assets from the public directory on Heroku, as reported on the list by Nathanael. http://librelist.com/browser/nesta/2011/8/21/public-folder-invisible-on-heroku-in-0-9-7/ If you used the workaround in config.ru that I posted in that thread, you can now remove it.
I'm having a go at writing a Nesta plugin, and have hit a snag. The plugin is going to be called Maldini, in honour of that other great Italian defender, and will allow citations and bibliographies to be added to pages from a BibTeX file using a synax modeled on biblatex. The hard work will be done by bibtex-ruby —Maldini will just be a wrapper of sorts for that. Useful for those like me who are using Nesta to produce academic content. In any case, here is the snag. Using the very helpful guidelines on the Nesta website, my skeleton init.rb looks like this: -- require 'bibtex' module Nesta module Plugin module Maldini module Helpers # Define helper methods. end # module Helpers class Bibliography @thebibliography def init(file) @thebibliography = BibTeX.open(file) end # init end # class Bibliography end end class App helpers Nesta::Plugin::Maldini::Helpers end end -- However, when I attempt to create a Bibliography object in a haml file served at /blog/Maldini like so: -- - bib = Nesta::Plugin::Maldini::Bibliography.new -- I get the following error: "NameError at /blog/maldini uninitialized constant Nesta::Plugin::Maldini::Bibliography" I must be confused about the way the namespaces within Nesta are working, because I can't figure out how to access the Bibliography class. No doubt this is a simple error. It's been years since I coded anything, and I'm brand new to Ruby. Cheers, Brad.
On 16 Sep 2011, at 05:57, Brad Weslake wrote: > However, when I attempt to create a Bibliography object in a haml file served at /blog/Maldini like so: > > -- > - bib = Nesta::Plugin::Maldini::Bibliography.new > -- > > I get the following error: > > "NameError at /blog/maldini > uninitialized constant Nesta::Plugin::Maldini::Bibliography" I made a maldini plugin and copied your init.rb code into it. I built the gem, added it to a test site, and added the line of haml to a view template. When I reloaded a web page I got the NameError. I restarted shotgun and reloaded the page, and it loaded fine. Bundler requires the gems in your Gemfile when config.ru gets loaded, and shotgun doesn't re-read config.ru if it changes. > I must be confused about the way the namespaces within Nesta are working, because I can't figure out how to access the Bibliography class. No doubt this is a simple error. It's been years since I coded anything, and I'm brand new to Ruby. Good work starting a plugin! I can also see that you've nicely side stepped the error in the plugin code that 0.9.10 generates (I'm aiming to push 0.9.11 out this afternoon, in which those issues are fixed). I wondered what you meant by "Maldini, in honour of that other great Italian defender" for a while, as Nesta got it's name from a quite different route. I'd tried the other file based blogging solutions and rather liked Marley. It was taking me too long to modify it to do what I needed so in the end I started a new project. So Nesta is a tip of the hat to Marley...
Announcing Maldini, a plugin for Nesta to generate citations and reference lists from BibTeX files. Maldini is currently in development, and version 0.0.1 will be released to http://rubygems.org/ once: - It includes a basic set of RSpec tests. - Nesta 0.9.11 is released. For more, including information on how to use the development version, see: - http://bweslake.org/research/resources/maldini - https://github.com/etc/nesta-plugin-maldini Many thanks to Graham for the plugin documentation, which is very helpful. Cheers, Brad.
On 20 Sep 2011, at 21:49, Brad Weslake wrote: > Announcing Maldini, a plugin for Nesta to generate citations and reference lists from BibTeX files. > > - http://bweslake.org/research/resources/maldini That looks great. Very nicely put together and documented. It's really great to see people doing stuff like this with the things you've made. We should add a page for it on nestacms.com at /docs/plugins/maldini and put it in the docs/plugins category. I've been thinking each useful plugin warrants at least a brief overview, install commands, and links to docs and GitHub. > - Nesta 0.9.11 is released. I think it's ready to go. I'll do a bit more testing...
Hi Graham, Thanks for your help on this. > I made a maldini plugin and copied your init.rb code into it. I built the gem, added it to a test site, and added the line of haml to a view template. When I reloaded a web page I got the NameError. I restarted shotgun and reloaded the page, and it loaded fine. Bundler requires the gems in your Gemfile when config.ru gets loaded, and shotgun doesn't re-read config.ru if it changes. If by restarting shotgun you just mean killing the process and reissuing "bundle exec shotgun", then this doesn't work for me. I'm working with the latest Nesta sources (by issuing "git merge upstream/master", where "upstream" was created via "git remote add upstream git://github.com/gma/nesta.git"). I should mention that I am putting the code into a HAML file in /blog, though I tried putting it directly into a view and still had the same error. Any other ideas? > Good work starting a plugin! I can also see that you've nicely side stepped the error in the plugin code that 0.9.10 generates (I'm aiming to push 0.9.11 out this afternoon, in which those issues are fixed). The credit goes to you, since I just followed your own instructions on the website, using the latest Nesta sources. > I wondered what you meant by "Maldini, in honour of that other great Italian defender" for a while, as Nesta got it's name from a quite different route. > > I'd tried the other file based blogging solutions and rather liked Marley. It was taking me too long to modify it to do what I needed so in the end I started a new project. So Nesta is a tip of the hat to Marley... Ha! Well, "Maldini" will stick for this project... Cheers, Brad.
OK, I think I'm sorted. I was issuing "bundle install" after updating the plugin, but not "rake install". This commit reminded me I need to issue the latter: https://github.com/gma/nestacms.com/commit/a08f913146cbb7f37ee56dc194361281edcdd58a Hopefully this is the last you'll hear from me until Maldini 0.0.1 is released to the wild. B. On Sep 16, 2011, at 12:03 PM, Brad Weslake wrote: > Hi Graham, > > Thanks for your help on this. > >> I made a maldini plugin and copied your init.rb code into it. I built the gem, added it to a test site, and added the line of haml to a view template. When I reloaded a web page I got the NameError. I restarted shotgun and reloaded the page, and it loaded fine. Bundler requires the gems in your Gemfile when config.ru gets loaded, and shotgun doesn't re-read config.ru if it changes. > > If by restarting shotgun you just mean killing the process and reissuing "bundle exec shotgun", then this doesn't work for me. I'm working with the latest Nesta sources (by issuing "git merge upstream/master", where "upstream" was created via "git remote add upstream git://github.com/gma/nesta.git"). I should mention that I am putting the code into a HAML file in /blog, though I tried putting it directly into a view and still had the same error. Any other ideas? > >> Good work starting a plugin! I can also see that you've nicely side stepped the error in the plugin code that 0.9.10 generates (I'm aiming to push 0.9.11 out this afternoon, in which those issues are fixed). > > The credit goes to you, since I just followed your own instructions on the website, using the latest Nesta sources. > >> I wondered what you meant by "Maldini, in honour of that other great Italian defender" for a while, as Nesta got it's name from a quite different route. >> >> I'd tried the other file based blogging solutions and rather liked Marley. It was taking me too long to modify it to do what I needed so in the end I started a new project. So Nesta is a tip of the hat to Marley... > > Ha! Well, "Maldini" will stick for this project... > > Cheers, > > Brad.
Thanks, it has been working great! I really appreciate the quick update, I got my site running again in no time. I just finished a Wordpress XML importer, complete with media downloading, comment porting (via intensedebate), and URL redirection. My goal is to make the wordpress->nesta transition nearly seamless. I'd like to share my code when I'm done, so let me know what the best way to do that is... Also - what about setting up a free UserVoice feedback site for the project? I use it for the http://imageresizing.net project at http://resizer.uservoice.com, and it makes it very easy to get community votes on new features. I've found it gathers more ideas than a mailing list does. There are a few features that I'm going to have to add to migrate my blog over to Nesta: * Hidden pages (needed for drafts, private, protected, and pending articles) * IntenseDebate integration (easy, using page.metadata["post id"] for guid) * Alternate Urls feature: Allowing a page to specify alternate urls in the metadata which will be 301-redirected to the true URL * page.metadata["Menu"] for overriding the page title in the website menu * Trailing slash normalization - In Google's eyes, each page has an identical twin with a trailing '/'... It messes up analytics reports and probably doesn't help SEO. There needs to be specific rules about what gets a trailing slash and what doesn't, with 301 correction. * menu.txt ignores the user-specified trailing slash, preventing relative paths from being used on 'index.mdown' pages. With a voting system, perhaps I can find out out if any of my changes would be useful to the mainline build. Best regards, Nathanael Jones On Tue, Aug 23, 2011 at 8:03 AM, Graham Ashton <graham@effectif.com> wrote: > Nesta 0.9.8 is now available on rubygems.org. > > Upgrade instructions can be found on the blog: > > http://nestacms.com/blog/version-0-9-8 > > It's a bug fix release to address the failure to serve assets from the > public directory on Heroku, as reported on the list by Nathanael. > > > http://librelist.com/browser/nesta/2011/8/21/public-folder-invisible-on-heroku-in-0-9-7/ > > If you used the workaround in config.ru that I posted in that thread, you > can now remove it. >
On 25 Aug 2011, at 21:11, Nathanael D. Jones wrote: > Thanks, it has been working great! I really appreciate the quick update, I got my site running again in no time. No problem. Somebody pointed out on Twitter that you couldn't create a new nesta site as the nesta command was also missing a require, so 0.9.9 came out yesterday. I didn't send an announcement as I've been very busy with work this week and haven't had a chance to write a blog post either. Apologies for the rapid releases; I normally try and bundle a few useful changes up together before putting a new version out. > I just finished a Wordpress XML importer, complete with media downloading, comment porting (via intensedebate), and URL redirection. My goal is to make the wordpress->nesta transition nearly seamless. > > I'd like to share my code when I'm done, so let me know what the best way to do that is… That definitely warrants a blog post on nestacms.com. I'd be happy to write one, or you could do a guest post if you like. Let me know. I'd like to publicise Wynn's tumblr task too. Wynn - fancy posting, or would you rather I did it? We could link to the gists from the docs, and then anybody who changes the script for their own ends could fork your gists and post a comment on the site. It'd be nice to keep the process of sharing scripts like this quite fluid and lightweight. > Also - what about setting up a free UserVoice feedback site for the project? ... I've found it gathers more ideas than a mailing list does. Interesting thought. I'm all for building community. I don't tend to send many emails to the list as I don't want to spam people who have only signed up to get announcements, and making a separate announcements list for such a small project would seem crazy. I think a site like UserVoice would only work if Nesta's users embraced it. The mailing list is fairly quiet, and I've no idea how many subscribers we've got (librelist doesn't tell you). Is using UserVoice or Get Satisfaction worth a quick show of hands? If any of you have got an opinion (even if it's negative), let's hear it. You used to be able to vote on GitHub issues, but I think the UI for that might have taken a hike. > * Hidden pages (needed for drafts, private, protected, and pending articles) What do private and protected mean? Have you seen the trick for setting an article's date to some point in the future? The article won't get published until that date, which means it won't show up in a list of recent articles, or in the Atom feed. In short, your site won't link to it but if you hit the right URL it'll load. I like the idea of drafts but never decided on a way to do it. There are a few boolean settings that can be applied to a page, so I'm thinking of defining a new item of meta data that can list them. Chime in with alternatives; I've been undecided about the merits of this approach for ages. Maybe: Flags: draft, hidden https://github.com/gma/nesta/issues/61 > * IntenseDebate integration (easy, using page.metadata["post id"] for guid) You've lost me in the details. It would make sense to implement the same level of integration as Disqus, which is largely just a snippet of JavaScript in a view, and a bit of machinery to make it easy to read your account ID from config.yml. If somebody sends me a pull request along those lines, I'll merge it. https://github.com/gma/nesta/issues/62 What would page specific meta data be used for? Comment counts? If so, I suspect that should just be in the view (i.e. in your own view code, or in a theme that choose to support it). > * Alternate Urls feature: Allowing a page to specify alternate urls in the metadata which will be 301-redirected to the true URL Is it so that you can configure redirects from a page's old path when you re-organise your content? That feels fairly Rack::Rewrite-esque (though I appreciate that's slightly more techy than some people will be comfortable with). Have you seen this? http://nestacms.com/blog/moving-pages-with-http-redirects > * page.metadata["Menu"] for overriding the page title in the website menu Interesting. I've been thinking that's required, but that it would make a good optional second argument on a line in menu.txt. https://github.com/gma/nesta/issues/63 > * Trailing slash normalization - In Google's eyes, each page has an identical twin with a trailing '/'... It messes up analytics reports and probably doesn't help SEO. > There needs to be specific rules about what gets a trailing slash and what doesn't, with 301 correction. Good catch. https://github.com/gma/nesta/issues/60 > * menu.txt ignores the user-specified trailing slash, preventing relative paths from being used on 'index.mdown' pages. I'm not following - could you provide a short example? Thanks for the massive list of feedback. :-)
Sorry for the massive list - apologies ;) Replies by heading.. #Importing blog I'd be happy to work up a tutorial once I get all the bugs smoothed out. Right now, I'm trying to figure out how to turn the html into markdown. The Markdown parser uses REXML, which requires perfect XML, not HTML. I've tried nokogiri, tidy-ext, and hpricot for normalization, but all of them are buggy and improperly modify the HTML. On top of that, the markdown parser splits the HTML into segments on whitespace, something that's hard to fix. I might have to stream transform the HTML into markdown and drop the extra stuff... Or else add a custom rendering extension that leaves html alone based on a flag or tag of some kind. # Explanation of status values Wordpress pages and posts have a 'status' that can be 'publish', 'draft', 'private', or 'pending'. There is also a password field for each page or post that can be used to protect it. 'draft' and 'pending' are synonymous from a functional point of view, they only differ semantically. Both hide the article/page from public access. 'private' means only authenticated users can view it. With Nesta, that means no-one. 'protected' is a status value my import script gives to password-protected pages and posts. I don't generate a 'status' field when the value is 'publish'. So basically, draft, pending, private, and protected all mean the same thing in the context of Nesta - hidden. It's a boolean thing, on, or off. I can't use the Date field for draft/pending pages, or it will act like they are articles, correct? I also use the Date field to store the original publish date of an article, which would be good to retain even when temporarily hiding a page. # IntenseDebate My comment was only to mention that we'd need to use a page metadata field to allow the comments to be ported from a legacy CMS. I'm using "Post ID" # Flags I'm a fan of having named flags, they're very handy for doing custom stuff in the views. I suggest making flags free-form, with an easy API (like page.flag?(:draft)) so that views can be simpler, and so that pages don't end up with lines of boolean metadata values when they could all just be flags. (I'm already seeing this with 3+ boolean metadata values) # Alternate Urls Yep, this is for legacy URLs. I'm familiar with the Redirect approach, but it gets unwieldy for 80+ blogs with 3-4 aliases each. I already have 60+ redirect rules I have to port from my old Web.config file, and I'd like to make that number smaller. For performance, the URLs could be cached and sorted, should be a log(n) lookup op when done right. I know there's still the sinatra overhead.. But I have no idea how much overhead Sinatra actually adds. I'm a ruby newbie as much as a Sinatra newbie. # menu.txt For example / docs/ Generates "<a href="/docs"..." Best regards, Nathanael Jones On Fri, Aug 26, 2011 at 12:33 AM, Graham Ashton <graham@effectif.com> wrote: > On 25 Aug 2011, at 21:11, Nathanael D. Jones wrote: > > > Thanks, it has been working great! I really appreciate the quick update, > I got my site running again in no time. > > No problem. Somebody pointed out on Twitter that you couldn't create a new > nesta site as the nesta command was also missing a require, so 0.9.9 came > out yesterday. I didn't send an announcement as I've been very busy with > work this week and haven't had a chance to write a blog post either. > > Apologies for the rapid releases; I normally try and bundle a few useful > changes up together before putting a new version out. > > > I just finished a Wordpress XML importer, complete with media > downloading, comment porting (via intensedebate), and URL redirection. My > goal is to make the wordpress->nesta transition nearly seamless. > > > > I'd like to share my code when I'm done, so let me know what the best way > to do that is… > > That definitely warrants a blog post on nestacms.com. I'd be happy to > write one, or you could do a guest post if you like. Let me know. > > I'd like to publicise Wynn's tumblr task too. Wynn - fancy posting, or > would you rather I did it? > > We could link to the gists from the docs, and then anybody who changes the > script for their own ends could fork your gists and post a comment on the > site. It'd be nice to keep the process of sharing scripts like this quite > fluid and lightweight. > > > Also - what about setting up a free UserVoice feedback site for the > project? ... I've found it gathers more ideas than a mailing list does. > > Interesting thought. I'm all for building community. I don't tend to send > many emails to the list as I don't want to spam people who have only signed > up to get announcements, and making a separate announcements list for such a > small project would seem crazy. > > I think a site like UserVoice would only work if Nesta's users embraced it. > The mailing list is fairly quiet, and I've no idea how many subscribers > we've got (librelist doesn't tell you). > > Is using UserVoice or Get Satisfaction worth a quick show of hands? If any > of you have got an opinion (even if it's negative), let's hear it. > > You used to be able to vote on GitHub issues, but I think the UI for that > might have taken a hike. > > > * Hidden pages (needed for drafts, private, protected, and pending > articles) > > What do private and protected mean? > > Have you seen the trick for setting an article's date to some point in the > future? The article won't get published until that date, which means it > won't show up in a list of recent articles, or in the Atom feed. In short, > your site won't link to it but if you hit the right URL it'll load. > > I like the idea of drafts but never decided on a way to do it. There are a > few boolean settings that can be applied to a page, so I'm thinking of > defining a new item of meta data that can list them. Chime in with > alternatives; I've been undecided about the merits of this approach for > ages. > > Maybe: > > Flags: draft, hidden > > https://github.com/gma/nesta/issues/61 > > > * IntenseDebate integration (easy, using page.metadata["post id"] for > guid) > > You've lost me in the details. It would make sense to implement the same > level of integration as Disqus, which is largely just a snippet of > JavaScript in a view, and a bit of machinery to make it easy to read your > account ID from config.yml. > > If somebody sends me a pull request along those lines, I'll merge it. > > https://github.com/gma/nesta/issues/62 > > What would page specific meta data be used for? Comment counts? If so, I > suspect that should just be in the view (i.e. in your own view code, or in a > theme that choose to support it). > > > * Alternate Urls feature: Allowing a page to specify alternate urls in > the metadata which will be 301-redirected to the true URL > > Is it so that you can configure redirects from a page's old path when you > re-organise your content? > > That feels fairly Rack::Rewrite-esque (though I appreciate that's slightly > more techy than some people will be comfortable with). > > Have you seen this? > > http://nestacms.com/blog/moving-pages-with-http-redirects > > > * page.metadata["Menu"] for overriding the page title in the website menu > > Interesting. I've been thinking that's required, but that it would make a > good optional second argument on a line in menu.txt. > > https://github.com/gma/nesta/issues/63 > > > * Trailing slash normalization - In Google's eyes, each page has an > identical twin with a trailing '/'... It messes up analytics reports and > probably doesn't help SEO. > > There needs to be specific rules about what gets a trailing slash and > what doesn't, with 301 correction. > > Good catch. https://github.com/gma/nesta/issues/60 > > > * menu.txt ignores the user-specified trailing slash, preventing relative > paths from being used on 'index.mdown' pages. > > I'm not following - could you provide a short example? > > Thanks for the massive list of feedback. :-)
On 26 Aug 2011, at 00:31, Nathanael D. Jones wrote: > Right now, I'm trying to figure out how to turn the html into markdown. Have you tried just inserting a chunk of HTML into a Markdown file? Markdown supports inline HTML. If you find that the Markdown processor is adding unnecessary tags within your HTML, try wrapping the entire HTML snippet in a <section> or <div> tag. > draft, pending, private, and protected all mean the same thing in the context of Nesta - hidden. It's a boolean thing, on, or off. I've often wanted draft myself, so after our brief discussion about flags last week I've implemented it. The draft flag has special behaviour, causing a page to be hidden in production, but visible in development. You can set flags in the metadata like this: Flags: draft, cabbage And then in your code: if @page.flagged_as?('cabbage') ... There's a Page#draft? method that's a shortcut for flagged_as?('draft'). To try/use it before 0.9.10 comes out, point your Gemfile at the git repository: gem 'nesta', :git => 'git://github.com/gma/nesta.git' Here's the diff: https://github.com/gma/nesta/compare/0ed9af...00f69b > I can't use the Date field for draft/pending pages, or it will act like they are articles, correct? Correct. > # menu.txt > > For example > > / > docs/ > > Generates "<a href="/docs"..." I'm still not sure how you'd like the behaviour to change. Your example above looks a lot like what it already does (i.e. you don't put leading slashes on paths, you always specify a path relative to content/pages).
Markdown supports inline, non-indented XML, not HTML, actually... so far neither Nokogiri, Hpricot, Tidy, or a combination of any of the three seem to be able to normalize HTML into XML the same way browsers do... Apparently Wordpress generates pretty messed-up HTML, although it does indent it :/ Indentation (code block syntax) is another issue I have to deal with, although I think I can hack it off with a regex. I don't really have the time to write a heuristic html->mdown converter right now, so I'll probably just add a .html renderer or something... BTW, is Tilt integration in the roadmap? The flags support sounds great! I'll merge in your changes when I get back to Verona on Saturday. Regarding menu.txt, it's the generated links that don't have the trailing slash. Without a trailing slash in the URL, page-relative links aren't possible, only parent-relative links... Did the explanation in the ticket you opened make sense? Thanks, Nathanael Sent from my iPad On Aug 31, 2011, at 11:42 AM, Graham Ashton <graham@effectif.com> wrote: > On 26 Aug 2011, at 00:31, Nathanael D. Jones wrote: > >> Right now, I'm trying to figure out how to turn the html into markdown. > > Have you tried just inserting a chunk of HTML into a Markdown file? Markdown supports inline HTML. If you find that the Markdown processor is adding unnecessary tags within your HTML, try wrapping the entire HTML snippet in a <section> or <div> tag. > >> draft, pending, private, and protected all mean the same thing in the context of Nesta - hidden. It's a boolean thing, on, or off. > > I've often wanted draft myself, so after our brief discussion about flags last week I've implemented it. The draft flag has special behaviour, causing a page to be hidden in production, but visible in development. > > You can set flags in the metadata like this: > > Flags: draft, cabbage > > And then in your code: > > if @page.flagged_as?('cabbage') > ... > > There's a Page#draft? method that's a shortcut for flagged_as?('draft'). > > To try/use it before 0.9.10 comes out, point your Gemfile at the git repository: > > gem 'nesta', :git => 'git://github.com/gma/nesta.git' > > Here's the diff: > > https://github.com/gma/nesta/compare/0ed9af...00f69b > >> I can't use the Date field for draft/pending pages, or it will act like they are articles, correct? > > Correct. > >> # menu.txt >> >> For example >> >> / >> docs/ >> >> Generates "<a href="/docs"..." > > I'm still not sure how you'd like the behaviour to change. Your example above looks a lot like what it already does (i.e. you don't put leading slashes on paths, you always specify a path relative to content/pages).
On 31 Aug 2011, at 13:42, Nathanael Jones wrote: > BTW, is Tilt integration in the roadmap? I like Tilt, but I haven't looked into what it could for us in Nesta too heavily. What does Tilt integration really mean in the context of Nesta (given that Sinatra is already using it internally)? > Regarding menu.txt, it's the generated links that don't have the trailing slash. Without a trailing slash in the URL, page-relative links aren't possible, only parent-relative links... Did the explanation in the ticket you opened make sense? It did, thanks. I just commented on it. https://github.com/gma/nesta/issues/60
We should be able to offload rendering engine selection to Tilt.new(), allowing automatic support for whichever gems users want to install. I.e, we can support erubis without requiring it. Obviously we'll have to extend header parsing for articles, but that's not a very big task. On Mon, Sep 5, 2011 at 1:10 PM, Graham Ashton <graham@effectif.com> wrote: > On 31 Aug 2011, at 13:42, Nathanael Jones wrote: > > > BTW, is Tilt integration in the roadmap? > > I like Tilt, but I haven't looked into what it could for us in Nesta too > heavily. What does Tilt integration really mean in the context of Nesta > (given that Sinatra is already using it internally)? > > > Regarding menu.txt, it's the generated links that don't have the trailing > slash. Without a trailing slash in the URL, page-relative links aren't > possible, only parent-relative links... Did the explanation in the ticket > you opened make sense? > > It did, thanks. I just commented on it. > > https://github.com/gma/nesta/issues/60 >
I've got a Tumblr importer in a custom rake task. We're still working on our dream to move our blog to Nesta. Here's the task: https://gist.github.com/1171776 --- Wynn Netherland web: http://wynn.fm twitter / skype / facebook: pengwynn linkedin: http://linkedin.com/in/netherland On Thu, Aug 25, 2011 at 3:11 PM, Nathanael D. Jones <nathanael.jones@gmail.com> wrote: > Thanks, it has been working great! I really appreciate the quick update, I > got my site running again in no time. > I just finished a Wordpress XML importer, complete with media downloading, > comment porting (via intensedebate), and URL redirection. My goal is to make > the wordpress->nesta transition nearly seamless. > I'd like to share my code when I'm done, so let me know what the best way to > do that is... > Also - what about setting up a free UserVoice feedback site for the > project? I use it for the http://imageresizing.net project > at http://resizer.uservoice.com, and it makes it very easy to get community > votes on new features. I've found it gathers more ideas than a mailing list > does. > There are a few features that I'm going to have to add to migrate my blog > over to Nesta: > * Hidden pages (needed for drafts, private, protected, and pending articles) > * IntenseDebate integration (easy, using page.metadata["post id"] for guid) > * Alternate Urls feature: Allowing a page to specify alternate urls in the > metadata which will be 301-redirected to the true URL > * page.metadata["Menu"] for overriding the page title in the website menu > * Trailing slash normalization - In Google's eyes, each page has an > identical twin with a trailing '/'... It messes up analytics reports and > probably doesn't help SEO. > There needs to be specific rules about what gets a trailing slash and what > doesn't, with 301 correction. > * menu.txt ignores the user-specified trailing slash, preventing relative > paths from being used on 'index.mdown' pages. > With a voting system, perhaps I can find out out if any of my changes would > be useful to the mainline build. > Best regards, > Nathanael Jones > On Tue, Aug 23, 2011 at 8:03 AM, Graham Ashton <graham@effectif.com> wrote: >> >> Nesta 0.9.8 is now available on rubygems.org. >> >> Upgrade instructions can be found on the blog: >> >> http://nestacms.com/blog/version-0-9-8 >> >> It's a bug fix release to address the failure to serve assets from the >> public directory on Heroku, as reported on the list by Nathanael. >> >> >> http://librelist.com/browser/nesta/2011/8/21/public-folder-invisible-on-heroku-in-0-9-7/ >> >> If you used the workaround in config.ru that I posted in that thread, you >> can now remove it. > >
Here's my current code for importing a Wordpress XML file. Note that the 'hpricot' gem is required. https://gist.github.com/1172001 On Thu, Aug 25, 2011 at 10:19 PM, Wynn Netherland <wynn.netherland@gmail.com > wrote: > I've got a Tumblr importer in a custom rake task. We're still working > on our dream to move our blog to Nesta. Here's the task: > > https://gist.github.com/1171776 > > --- > Wynn Netherland > web: http://wynn.fm > twitter / skype / facebook: pengwynn > linkedin: http://linkedin.com/in/netherland > > On Thu, Aug 25, 2011 at 3:11 PM, Nathanael D. Jones > <nathanael.jones@gmail.com> wrote: > > Thanks, it has been working great! I really appreciate the quick update, > I > > got my site running again in no time. > > I just finished a Wordpress XML importer, complete with media > downloading, > > comment porting (via intensedebate), and URL redirection. My goal is to > make > > the wordpress->nesta transition nearly seamless. > > I'd like to share my code when I'm done, so let me know what the best way > to > > do that is... > > Also - what about setting up a free UserVoice feedback site for the > > project? I use it for the http://imageresizing.net project > > at http://resizer.uservoice.com, and it makes it very easy to get > community > > votes on new features. I've found it gathers more ideas than a mailing > list > > does. > > There are a few features that I'm going to have to add to migrate my blog > > over to Nesta: > > * Hidden pages (needed for drafts, private, protected, and pending > articles) > > * IntenseDebate integration (easy, using page.metadata["post id"] for > guid) > > * Alternate Urls feature: Allowing a page to specify alternate urls in > the > > metadata which will be 301-redirected to the true URL > > * page.metadata["Menu"] for overriding the page title in the website menu > > * Trailing slash normalization - In Google's eyes, each page has an > > identical twin with a trailing '/'... It messes up analytics reports and > > probably doesn't help SEO. > > There needs to be specific rules about what gets a trailing slash and > what > > doesn't, with 301 correction. > > * menu.txt ignores the user-specified trailing slash, preventing relative > > paths from being used on 'index.mdown' pages. > > With a voting system, perhaps I can find out out if any of my changes > would > > be useful to the mainline build. > > Best regards, > > Nathanael Jones > > On Tue, Aug 23, 2011 at 8:03 AM, Graham Ashton <graham@effectif.com> > wrote: > >> > >> Nesta 0.9.8 is now available on rubygems.org. > >> > >> Upgrade instructions can be found on the blog: > >> > >> http://nestacms.com/blog/version-0-9-8 > >> > >> It's a bug fix release to address the failure to serve assets from the > >> public directory on Heroku, as reported on the list by Nathanael. > >> > >> > >> > http://librelist.com/browser/nesta/2011/8/21/public-folder-invisible-on-heroku-in-0-9-7/ > >> > >> If you used the workaround in config.ru that I posted in that thread, > you > >> can now remove it. > > > > >