fancy_title: "Discourse has a new Markdown Parser!",
slug: "discourse-has-a-new-markdown-parser",
posts_count: 1,
reply_count: 0,
highest_post_number: 1,
image_url: null,
created_at: "2013-08-24T18:08:06.063Z",
last_posted_at: "2013-08-24T18:08:06.259Z",
bumped: true,
bumped_at: "2015-03-09T04:54:43.977Z",
unseen: false,
linked_post_number: 1,
pinned: false,
unpinned: null,
excerpt:
'...0 lines of Javascript code! An inline example Let\'s say you want to replace all occurances of "evil trout" with a link that says "EVIL TROUT IS AWESOME": Discourse.Dialect.on("register", function(event) {...',
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 2645,
like_count: 21,
has_summary: false,
archetype: "regular",
last_poster_username: "eviltrout",
category_id: 7,
pinned_globally: false,
posters: [
{
extras: "latest single",
description: "Original Poster, Most Recent Poster",
user_id: 19
}
]
},
{
id: 21792,
title: "Adding custom emoji/emoticons via a plugin",
fancy_title: "Adding custom emoji/emoticons via a plugin",
"...plugin that executes the following method to register a new emoji: Discourse.Dialect.registerEmoji('trout', 'http://cdn.eviltrout.com/images/trout-square.jpg'); Here's a sample plugin that adds a :trout: e...",
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 1260,
like_count: 25,
has_summary: false,
archetype: "regular",
last_poster_username: "cpradio",
category_id: 22,
pinned_globally: false,
posters: [
{
extras: null,
description: "Original Poster",
user_id: 19
},
{
extras: null,
description: "Frequent Poster",
user_id: 8617
},
{
extras: null,
description: "Frequent Poster",
user_id: 12662
},
{
extras: null,
description: "Frequent Poster",
user_id: 6626
},
{
extras: "latest",
description: "Most Recent Poster",
user_id: 8300
}
]
},
{
id: 3071,
title: "Would it be possible to make Slug localizable?",
fancy_title: "Would it be possible to make Slug localizable?",
'...e inserted by plugins. ## Usage If you handlebars template has: ```handlebars {{plugin-outlet "evil-trout"}} ``` Then any handlebars files you create in the `connectors/evil-trout` directory will automatic...',
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 1224,
like_count: 81,
has_summary: false,
archetype: "regular",
last_poster_username: "snjqi188",
category_id: 7,
pinned_globally: false,
posters: [
{
extras: null,
description: "Original Poster",
user_id: 14446
},
{
extras: null,
description: "Frequent Poster",
user_id: 14474
},
{
extras: null,
description: "Frequent Poster",
user_id: 14514
},
{
extras: null,
description: "Frequent Poster",
user_id: 32
},
{
extras: "latest",
description: "Most Recent Poster",
user_id: 14448
}
]
},
{
id: 31001,
title:
"Beginner's Guide to Creating Discourse Plugins Part 2: Plugin Outlets",
fancy_title:
"Beginner’s Guide to Creating Discourse Plugins Part 2: Plugin Outlets",
'...nectors/ < outlet name > in it. For example, if your handlebars template has: {{plugin-outlet "evil-trout"}} Then any handlebars files you create in the connectors/evil-trout directory will automatically b...',
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 220,
like_count: 16,
has_summary: false,
archetype: "regular",
last_poster_username: "eviltrout",
category_id: 10,
pinned_globally: false,
posters: [
{
extras: "latest single",
description: "Original Poster, Most Recent Poster",
user_id: 19
}
]
},
{
id: 29176,
title:
"How can I add some custom html to the bottom of the categories page?",
fancy_title:
"How can I add some custom html to the bottom of the categories page?",
'...e inserted by plugins. ## Usage If you handlebars template has: ```handlebars {{plugin-outlet "evil-trout"}} ``` Then any handlebars files you create in the `connectors/evil-trout` directory will automatic...',
"I have seem some of your testing 'stuff' (evil trout's actually). And it looks like a HUUUUUUUUGGGE time sink (ice pick to the eyeballs). but...I believ...",
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 141,
like_count: 2,
has_summary: false,
archetype: "regular",
last_poster_username: "Frank",
category_id: 2,
pinned_globally: false,
posters: [
{
extras: "latest",
description: "Original Poster, Most Recent Poster",
user_id: 9931
},
{
extras: null,
description: "Frequent Poster",
user_id: 1995
}
]
},
{
id: 13534,
title: "Blogging Platforms, Ghost, and Discourse",
fancy_title: "Blogging Platforms, Ghost, and Discourse",
slug: "blogging-platforms-ghost-and-discourse",
posts_count: 18,
reply_count: 13,
highest_post_number: 18,
image_url: null,
created_at: "2014-03-08T15:46:35.174Z",
last_posted_at: "2014-03-26T18:25:45.895Z",
bumped: true,
bumped_at: "2014-03-26T18:25:45.895Z",
unseen: false,
linked_post_number: 1,
pinned: false,
unpinned: null,
excerpt:
"...urse, do you mean that the blog comments for Ghost will be driven by Discourse, similar to the Evil Trout blog ? What about using Discourse as the blog platform itself, not as the comment engine at the end...",
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 2182,
like_count: 17,
has_summary: false,
archetype: "regular",
last_poster_username: "codetricity",
category_id: 17,
pinned_globally: false,
posters: [
{
extras: "latest",
description: "Original Poster, Most Recent Poster",
user_id: 8364
},
{
extras: null,
description: "Frequent Poster",
user_id: 4949
},
{
extras: null,
description: "Frequent Poster",
user_id: 14
},
{
extras: null,
description: "Frequent Poster",
user_id: 32
},
{
extras: null,
description: "Frequent Poster",
user_id: 8385
}
]
},
{
id: 4859,
title: "All of the site functions based on ajax?",
fancy_title: "All of the site functions based on ajax?",
slug: "all-of-the-site-functions-based-on-ajax",
posts_count: 28,
reply_count: 20,
highest_post_number: 28,
image_url: null,
created_at: "2013-03-18T08:59:46.135Z",
last_posted_at: "2013-10-18T20:22:30.677Z",
bumped: true,
bumped_at: "2013-10-18T20:22:30.677Z",
unseen: false,
linked_post_number: 21,
pinned: false,
unpinned: null,
excerpt:
"please see evil trouts blog post http://eviltrout.com/2013/02/27/adding-to-discourse-part-1.html",
visible: true,
closed: false,
archived: false,
bookmarked: null,
liked: null,
views: 1629,
like_count: 17,
has_summary: false,
archetype: "regular",
last_poster_username: "jasonwhat",
category_id: 17,
pinned_globally: false,
posters: [
{
extras: null,
description: "Original Poster",
user_id: 3520
},
{
extras: null,
description: "Frequent Poster",
user_id: 3493
},
{
extras: null,
description: "Frequent Poster",
user_id: 2395
},
{
extras: null,
description: "Frequent Poster",
user_id: 2477
},
{
extras: "latest",
description: "Most Recent Poster",
user_id: 7301
}
]
},
{
id: 7220,
title: "Javascript dependencies",
fancy_title: "Javascript dependencies",
slug: "javascript-dependencies",
posts_count: 8,
reply_count: 5,
highest_post_number: 8,
image_url: null,
created_at: "2013-06-06T11:11:18.522Z",
last_posted_at: "2013-06-07T18:43:51.449Z",
bumped: true,
bumped_at: "2013-06-07T18:43:51.449Z",
unseen: false,
linked_post_number: 3,
pinned: false,
unpinned: null,
excerpt:
"...ould be in vendor directory of one of the gems Ahh I need to look at Gemfile Ahh I need to use Evil Trouts bundle open handlebars trick. I am completely against this new best practice, its inconsistent wit...",
"<p>I've gotten vagrant up and running with a development environment but it's taking forever to load.</p>\n\n<p>For example <a href=\"http://192.168.10.200:3000/\" rel=\"nofollow\">http://192.168.10.200:3000/</a> takes tens of seconds to load.</p>\n\n<p>I'm running the whole stack on a new rMBP with OS X 10.8.2.</p>\n\n<p>Any ideas of what I've done wrong? Or is this just a function of being on the bleeding edge?</p>\n\n<p>Thanks,</p>\n\n<p>-bd</p>",
post_number: 1,
post_type: 1,
updated_at: "2013-02-07T17:46:57.469Z",
like_count: 0,
reply_count: 1,
reply_to_post_number: null,
quote_count: 0,
incoming_link_count: 4422,
reads: 327,
score: 21978.4,
yours: false,
topic_id: 2179,
topic_slug: "development-mode-super-slow",
display_username: "Bill Dudney",
primary_group_name: null,
version: 2,
can_edit: false,
can_delete: false,
can_recover: false,
user_title: null,
actions_summary: [
{
id: 2,
count: 0,
hidden: false,
can_act: false
},
{
id: 3,
count: 0,
hidden: false,
can_act: false
},
{
id: 4,
count: 0,
hidden: false,
can_act: false
},
{
id: 5,
count: 0,
hidden: true,
can_act: false
},
{
id: 6,
count: 0,
hidden: false,
can_act: false
},
{
id: 7,
count: 0,
hidden: false,
can_act: false
},
{
id: 8,
count: 0,
hidden: false,
can_act: false
}
],
moderator: false,
admin: false,
staff: false,
user_id: 1828,
hidden: false,
hidden_reason_id: null,
trust_level: 1,
deleted_at: null,
user_deleted: false,
edit_reason: null,
can_view_edit_history: true,
wiki: false,
blurb:
"I've gotten vagrant up and running with a development environment but it's taking forever to load. For example http://192.168.10.200:3000/ takes..."
'<p>So you want to set up Discourse on Ubuntu to hack on and develop with?</p>\n\n<p>We\'ll assume that you don\'t have Ruby/Rails/Postgre/Redis installed on your Ubuntu system. Let\'s begin!</p>\n\n<p><em>Although this guide assumes that you are using Ubuntu, but the set-up instructions will work fine for any Debian based ditribution.</em></p>\n\n<p><em>(If you want to install Discourse for production use, see <a href="https://github.com/discourse/discourse/blob/master/docs/INSTALL.md">our install guide</a>)</em></p>\n\n<h2>Install Discourse Dependencies</h2>\n\n<p>Run <a href="https://github.com/techAPJ/install-rails/blob/master/linux">this script</a> in terminal, to setup Rails development environment:</p>\n\n<pre><code>bash <(wget -qO- https://raw.githubusercontent.com/techAPJ/install-rails/master/linux)</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/9/9df737ab44032f2f671ac15513456bc668314591.png" class="lightbox" title="linux_script.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/9/9df737ab44032f2f671ac15513456bc668314591_1_690x189.png" width="690" height="189"><div class="meta">\n<span class="filename">linux_script.png</span><span class="informations">770x211 9.62 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>This will install following new packages on your system:</p>\n\n<ul>\n<li><a href="http://git-scm.com/">Git</a></li>\n<li><a href="https://github.com/sstephenson/rbenv">rbenv</a></li>\n<li><a href="https://github.com/sstephenson/ruby-build">ruby-build</a></li>\n<li>\n<a href="https://www.ruby-lang.org/">Ruby</a> (stable)</li>\n<li><a href="http://rubyonrails.org/">Rails</a></li>\n<li><a href="http://www.postgresql.org/">PostgreSQL</a></li>\n<li><a href="https://sqlite.org/">SQLite</a></li>\n<li><a href="http://redis.io/">Redis</a></li>\n<li><a href="http://bundler.io/">Bundler</a></li>\n<li><a href="http://www.imagemagick.org/">ImageMagick</a></li>\n</ul>\n\n<p>Install Phantomjs:</p>\n\n<p>For 32 bit macine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-i686.tar.bz2\nsudo rm phantomjs-1.9.8-linux-i686.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-i686/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p>For 64 bit machine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo rm phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56.png" class="lightbox" title="phantomjs.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56_1_690x121.png" width="690" height="121"><div class="meta">\n<span class="filename">phantomjs.png</span><span class="informations">969x171 10.1 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p><em>In case you have any of this package pre-installed and don\'t want to run entire script, see the <a href="https://github.com/techAPJ/install-rails/blob/master/linux">script</a> and pick the packages you don\'t have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.</em></p>\n\n<p>Now that we have installed Discourse dependencies, let\'s move on to install Discourse itself.</p>\n\n<h2>Clone Discourse</h2>\n\n<p>Clone the Discourse repository in <code>~/discourse</code> folder:</p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/2/23578e144aa4c37d7e577d570d34789add1078f1.png" class="lightbox" t
"So you want to set up Discourse on Ubuntu to hack on and develop with? We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Ubuntu system..."
'<p>So you want to set up Discourse on Mac OS X to hack on and develop with?</p>\n\n<p>We\'ll assume that you don\'t have Ruby/Rails/Postgre/Redis installed on your Mac. Let\'s begin!</p>\n\n<p><em>(If you want to install Discourse for production use, see <a href="https://github.com/discourse/discourse/blob/master/docs/INSTALL.md">our install guide</a>)</em></p>\n\n<h2>Install Discourse Dependencies</h2>\n\n<p>Run <a href="https://github.com/techAPJ/install-rails/blob/master/mac">this script</a> in terminal, to setup Rails development environment:</p>\n\n<pre><code>bash <(curl -s https://raw.githubusercontent.com/techAPJ/install-rails/master/mac)</code></pre>\n\n<p>This script will install following new packages on your system:</p>\n\n<ul>\n<li><a href="http://git-scm.com/">Git</a></li>\n<li><a href="https://github.com/sstephenson/rbenv">rbenv</a></li>\n<li><a href="https://github.com/sstephenson/ruby-build">ruby-build</a></li>\n<li>\n<a href="https://www.ruby-lang.org/">Ruby</a> (latest stable)</li>\n<li><a href="http://rubyonrails.org/">Rails</a></li>\n<li><a href="http://www.postgresql.org/">PostgreSQL</a></li>\n<li><a href="http://redis.io/">Redis</a></li>\n<li><a href="http://bundler.io/">Bundler</a></li>\n<li><a href="http://www.imagemagick.org/">ImageMagick</a></li>\n<li><a href="http://phantomjs.org/">PhantomJS</a></li>\n</ul>\n\n<p><em>In case you have any of this package pre-installed and don\'t want to run entire script, see the <a href="https://github.com/techAPJ/install-rails/blob/master/mac">script</a> and pick the packages you don\'t have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.</em></p>\n\n<p>Now that we have installed Discourse dependencies, let\'s move on to install Discourse itself.</p>\n\n<h2>Clone Discourse</h2>\n\n<p>Clone the Discourse repository in <code>~/discourse</code> folder:</p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse</code></pre>\n\n<p><img src="//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/e/ed047a1077c7d3af966434d093fbf9ddd3db51d9.png" width="571" height="142"> </p>\n\n<p><code>~</code> indicates home folder, so Discourse source code will be available in your home folder.</p>\n\n<h2>Setup Database</h2>\n\n<p>Open psql prompt:</p>\n\n<pre><code>psql postgres</code></pre>\n\n<p><img src="//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/0/0a31b7a439991beedf32a974abd423cd7a774b76.png" width="574" height="148"> </p>\n\n<p>Create <strong>discourse_development</strong> and <strong>discourse_test</strong> database with your <em><a href="http://forums.macrumors.com/showthread.php?t=898855">account short name</a></em> specified as role:</p>\n\n<pre><code>CREATE DATABASE discourse_development WITH OWNER techapj ENCODING \'UTF8\' TEMPLATE template0;\nCREATE DATABASE discourse_test WITH OWNER techapj ENCODING \'UTF8\' TEMPLATE template0;</code></pre>\n\n<p>Note that in above commands I specified the role as <em>techapj</em>, this means that my <a href="http://forums.macrumors.com/showthread.php?t=898855">short name</a> is <em>techapj</em>, <strong>replace this with your own <a href="http://forums.macrumors.com/showthread.php?t=898855">short name</a>.</strong></p>\n\n<p><img src="//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/9/9e976ace87a952fe60879c522234082fd7166eaf.png" width="573" height="235"> </p>\n\n<p>Exit psql prompt by pressing <kbd>control</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <strong>discourse_development</strong> database as <em>your short name</em> user:</p>\n\n<pre><code>psql -d discourse_development -U techapj -h localhost</code></pre>\n\n<p>Run following commands, separately:</p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;</code></pre>\n\n<p><img src="//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/9/9bfda41f4f5b020735cd641a4922e0696ad148a0.png" width="571" height="208"> </p>\n\n<p>Exit psql prompt by pressing <kbd>control</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <
"So you want to set up Discourse on Mac OS X to hack on and develop with? We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Mac. Let's be..."
'<p>Continuing the discussion from <a href="https://meta.discourse.org/t/log-of-setting-up-docker-in-virtualbox/12111/7">Log of setting up Docker in Virtualbox</a>:</p>\n\n<aside class="quote" data-post="7" data-topic="12111" data-full="true"><div class="title">\n<div class="quote-controls"></div>\n<img alt="" width="20" height="20" src="//discourse-cdn.global.ssl.fastly.net/meta/user_avatar/meta.discourse.org/riking/40/40212_1.png" class="avatar">riking:</div>\n<blockquote><p>I\'m actually loving having the VM set up - whenever I need to test something, the server was savestated with it running, so all I need to do is go to <code>/admin/docker</code>, refresh once, hit upgrade, and test it out.</p></blockquote></aside>\n\n<p>What is the preferred development environment these days? I have Vagrant up and running as recommended in <a href="http://blog.discourse.org/2013/04/discourse-as-your-first-rails-app/" rel="nofollow">Discourse as Your First Rails App</a> and <a href="https://github.com/discourse/discourse/blob/master/docs/VAGRANT.md" rel="nofollow">Discourse Vagrant Developer Guide</a>, but much of the recent discussion has been about <a href="https://github.com/discourse/discourse_docker" rel="nofollow">Discourse Docker</a> (which I freely admit I haven\'t really looked at for lack of time).</p>\n\n<p>For development purposes, should I carry on using Vagrant for the time being? Or should I be setting up a VM with Ubuntu and then installing Docker and Discourse Docker?</p>\n\n<p>(As a related side issue, my current production environment was built by following the <a href="https://github.com/discourse/discourse/blob/master/docs/INSTALL-ubuntu.md" rel="nofollow">Discourse Install Guide</a>. Would it be prudent to switch that over to Docker at some point as well? Meaning, is version 1.0 likely to recommend Docker instead of a raw installation? This question deserves a topic of its own in some other category, but it seems best to see what people have to say about development environments before launching a second, better-informed discussion about production environments.)</p>\n\n<p>So, for development, Vagrant or Docker?</p>',
"...ed to do is go to /admin/docker , refresh once, hit upgrade, and test it out. What is the preferred development environment these days? I have Vagrant up and running as recommended in Discourse as Your F..."
"<p>Is there any trick to getting a dev instance to send email? I managed to get a copy set up and running, but when I sign up, the email never gets sent. I have sendmail installed and I don't see any errors in the app log, but I also don't see any activity in the system mail log. Any hints as to what to look at?</p>",
post_number: 1,
post_type: 1,
updated_at: "2013-02-08T23:14:40.018Z",
like_count: 0,
reply_count: 1,
reply_to_post_number: null,
quote_count: 0,
incoming_link_count: 386,
reads: 163,
score: 1953.7,
yours: false,
topic_id: 2507,
topic_slug: "getting-dev-instance-to-send-email",
display_username: "hamburglar",
primary_group_name: null,
version: 2,
can_edit: false,
can_delete: false,
can_recover: false,
user_title: null,
actions_summary: [
{
id: 2,
count: 0,
hidden: false,
can_act: false
},
{
id: 3,
count: 0,
hidden: false,
can_act: false
},
{
id: 4,
count: 0,
hidden: false,
can_act: false
},
{
id: 5,
count: 0,
hidden: true,
can_act: false
},
{
id: 6,
count: 0,
hidden: false,
can_act: false
},
{
id: 7,
count: 0,
hidden: false,
can_act: false
},
{
id: 8,
count: 0,
hidden: false,
can_act: false
}
],
moderator: false,
admin: false,
staff: false,
user_id: 1566,
hidden: false,
hidden_reason_id: null,
trust_level: 1,
deleted_at: null,
user_deleted: false,
edit_reason: null,
can_view_edit_history: true,
wiki: false,
blurb:
"Is there any trick to getting a dev instance to send email? I managed to get a copy set up and running, but when I sign up, the email n..."
"This category is for topics related to hacking on Discourse: submitting pull requests, configuring development environments, coding conventions, and so forth.",
"This category is for topics related to hacking on Discourse: submitting pull requests, configuring development environments, coding conventions, and so forth.",