<commit_before><!DOCTYPE html>
<html>
  <head>
    <title>How-To - Write a Blog Post - Rubinius</title>
    <meta content='text/html;charset=utf-8' http-equiv='content-type'>
    <meta content='en' http-equiv='content-language'>
    <meta content='Rubinius is an implementation of the Ruby programming language. The Rubinius bytecode virtual machine is written in C++. The bytecode compiler is written in pure Ruby. The vast majority of the core library is also written in Ruby, with some supporting primitives that interact with the VM directly.' name='description'>
    <meta content='Less Than Three. &lt;3. http://less.thanthree.com' name='author'>
    <link href='/' rel='home'>
    <link href='/' rel='start'>
    <link href='/doc/en/how-to/fix-a-failing-spec' rel='prev' title='Fix a Failing Spec'>
    <link href='/doc/en/how-to/write-documentation' rel='next' title='Write Documentation'>
    
    <!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js" type="text/javascript"></script><![endif]-->
    <script src="/javascripts/jquery-1.3.2.js" type="text/javascript"></script>
    <script src="/javascripts/paging_keys.js" type="text/javascript"></script>
    
    <script src="/javascripts/application.js" type="text/javascript"></script>
    <style>article, aside, dialog, figure, footer, header, hgroup, menu, nav, section { display: block; }</style>

    <link href="/stylesheets/blueprint/screen.css" media="screen" rel="stylesheet" type="text/css" />
    <link href="/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
    <link href="/stylesheets/blueprint/print.css" media="print" rel="stylesheet" type="text/css" />
    <!--[if IE]><link href="/stylesheets/blueprint/ie.css" media="screen" rel="stylesheet" type="text/css" /><![endif]-->
    <!--[if IE]><link href="/stylesheets/ie.css" media="screen" rel="stylesheet" type="text/css" /><![endif]-->
    <link href="/stylesheets/pygments.css" media="screen" rel="stylesheet" type="text/css" />
  </head>
    <body>
        <div class='container'>
      <div class='span-21 doc_menu'>
        <header>
                    <nav>
            <ul>
              <li><a href="/">Home</a></li>
              <li><a id="blog" href="/blog/">Blog</a></li>
              <li><a id="documentation" href="/doc/en/">Documentation</a></li>
              <li><a href="/projects/">Projects</a></li>
              <li><a href="/roadmap/">Roadmap</a></li>
              <li><a href="/releases/">Releases</a></li>
            </ul>
          </nav>

        </header>
      </div>
            <div class='span-3 last'>
        <div id='version'>
          <a href="/releases/1.2.1">1.2.1</a>
        </div>
      </div>

    </div>


        <div class="container languages">
      <nav>
        <span class="label">Languages:</span>
        <ul>
        
          <li><a href="/doc/de/"
          
          >de</a></li>
        
          <li><a href="/doc/en/"
          
            class="current"
          
          >en</a></li>
        
          <li><a href="/doc/es/"
          
          >es</a></li>
        
          <li><a href="/doc/ja/"
          
          >ja</a></li>
        
          <li><a href="/doc/pl/"
          
          >pl</a></li>
        
          <li><a href="/doc/ru/"
          
          >ru</a></li>
        
        </ul>
      </nav>
    </div>


        <div class="container doc_page_nav">
      
        
        <span class="label">Previous:</span>
        <a href="/doc/en/how-to/fix-a-failing-spec">Fix a Failing Spec</a>
        

        <span class="label">Up:</span>
        <a href="/doc/en/">Table of Contents</a>

        
        <span class="label">Next:</span>
        <a href="/doc/en/how-to/write-documentation">Write Documentation</a>
        
      
    </div>


    <div class="container documentation">
      <h2>How-To - Write a Blog Post</h2>

      

      

        <p>The Rubinius blog uses Jekyll and is integrated with the website and
documentation. We encourage and appreciate guest blog posts about your
experiences using or developing Rubinius.</p>

<p>To get started, ensure you have the <code>kramdown</code> and <code>jekyll</code> gems installed.</p>

<pre><code>rbx gem install jekyll kramdown
</code></pre>

<p>The preferred format for blog posts is Markdown. However, if you have special
formatting needs, the post can be written in HTML directly.</p>

<ol>
  <li>Create a file in <code>web/_posts/</code> using the format
<code>YYYY-MM-DD-perma-link.markdown</code> for the file name.</li>
  <li>Write the post.</li>
  <li>In the <code>web/</code> directory, run <code>rbx -S jekyll</code>.</li>
  <li>Create a commit of all the changes in the <code>web/</code> directory.</li>
  <li>Submit a patch, or if you have commit rights, push the commit to master.</li>
  <li>Tell us that there is a new blog post. We may have some feedback for you
before publishing.</li>
</ol>


    </div>

        <div class="container doc_page_nav">
      
        
        <span class="label">Previous:</span>
        <a href="/doc/en/how-to/fix-a-failing-spec">Fix a Failing Spec</a>
        

        <span class="label">Up:</span>
        <a href="/doc/en/">Table of Contents</a>

        
        <span class="label">Next:</span>
        <a href="/doc/en/how-to/write-documentation">Write Documentation</a>
        
      
    </div>


    <div class="container">
      <div id="disqus_thread"></div>
<script type="text/javascript">
    var disqus_shortname = 'rubinius';
    var disqus_identifier = '/doc/en/how-to/write-a-blog-post/';
    var disqus_url = 'http://rubini.us/doc/en/how-to/write-a-blog-post/';<commit_msg>Regenerate site.<commit_after><!DOCTYPE html>
<html>
  <head>
    <title>How-To - Write a Blog Post - Rubinius</title>
    <meta content='text/html;charset=utf-8' http-equiv='content-type'>
    <meta content='en' http-equiv='content-language'>
    <meta content='Rubinius is an implementation of the Ruby programming language. The Rubinius bytecode virtual machine is written in C++. The bytecode compiler is written in pure Ruby. The vast majority of the core library is also written in Ruby, with some supporting primitives that interact with the VM directly.' name='description'>
    <meta content='Less Than Three. &lt;3. http://less.thanthree.com' name='author'>
    <link href='/' rel='home'>
    <link href='/' rel='start'>
    <link href='/doc/en/how-to/fix-a-failing-spec' rel='prev' title='Fix a Failing Spec'>
    <link href='/doc/en/how-to/write-documentation' rel='next' title='Write Documentation'>
    
    <!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js" type="text/javascript"></script><![endif]-->
    <script src="/javascripts/jquery-1.3.2.js" type="text/javascript"></script>
    <script src="/javascripts/paging_keys.js" type="text/javascript"></script>
    
    <script src="/javascripts/application.js" type="text/javascript"></script>
    <style>article, aside, dialog, figure, footer, header, hgroup, menu, nav, section { display: block; }</style>

    <link href="/stylesheets/blueprint/screen.css" media="screen" rel="stylesheet" type="text/css" />
    <link href="/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
    <link href="/stylesheets/blueprint/print.css" media="print" rel="stylesheet" type="text/css" />
    <!--[if IE]><link href="/stylesheets/blueprint/ie.css" media="screen" rel="stylesheet" type="text/css" /><![endif]-->
    <!--[if IE]><link href="/stylesheets/ie.css" media="screen" rel="stylesheet" type="text/css" /><![endif]-->
    <link href="/stylesheets/pygments.css" media="screen" rel="stylesheet" type="text/css" />
  </head>
    <body>
        <div class='container'>
      <div class='span-21 doc_menu'>
        <header>
                    <nav>
            <ul>
              <li><a href="/">Home</a></li>
              <li><a id="blog" href="/blog/">Blog</a></li>
              <li><a id="documentation" href="/doc/en/">Documentation</a></li>
              <li><a href="/projects/">Projects</a></li>
              <li><a href="/roadmap/">Roadmap</a></li>
              <li><a href="/releases/">Releases</a></li>
            </ul>
          </nav>

        </header>
      </div>
            <div class='span-3 last'>
        <div id='version'>
          <a href="/releases/1.2.1">1.2.1</a>
        </div>
      </div>

    </div>


        <div class="container languages">
      <nav>
        <span class="label">Languages:</span>
        <ul>
        
          <li><a href="/doc/de/"
          
          >de</a></li>
        
          <li><a href="/doc/en/"
          
            class="current"
          
          >en</a></li>
        
          <li><a href="/doc/es/"
          
          >es</a></li>
        
          <li><a href="/doc/ja/"
          
          >ja</a></li>
        
          <li><a href="/doc/pl/"
          
          >pl</a></li>
        
          <li><a href="/doc/ru/"
          
          >ru</a></li>
        
        </ul>
      </nav>
    </div>


        <div class="container doc_page_nav">
      
        
        <span class="label">Previous:</span>
        <a href="/doc/en/how-to/fix-a-failing-spec">Fix a Failing Spec</a>
        

        <span class="label">Up:</span>
        <a href="/doc/en/">Table of Contents</a>

        
        <span class="label">Next:</span>
        <a href="/doc/en/how-to/write-documentation">Write Documentation</a>
        
      
    </div>


    <div class="container documentation">
      <h2>How-To - Write a Blog Post</h2>

      

      

        <p>The Rubinius blog uses Jekyll and is integrated with the website and
documentation. We encourage and appreciate guest blog posts about your
experiences using or developing Rubinius.</p>

<p>The preferred format for blog posts is Markdown. However, if you have special
formatting needs, the post can be written in HTML directly.</p>

<p>Clone Rubinius repository as that is where the website and posts are
   stored.</p>

<p>git clone https://github.com/evanphx/rubinius.git</p>

<p>To get started, ensure you have the <code>kramdown</code> and <code>jekyll</code> gems installed.</p>

<pre><code>rbx gem install jekyll kramdown
</code></pre>

<p>Now go to the posts directory</p>

<pre><code>cd rubinius/web/_posts
</code></pre>

<p>Create a file in the console using the filename format <code>YYYY-MM-DD-perma-link.markdown</code>.</p>

<pre><code>touch "%(date +"%Y-%m-%d")-perma-link-title.markdown"
</code></pre>

<p>Write your brilliant post.</p>

<pre><code>cat /dev/random &gt; &lt;&lt;the file post&gt;&gt; # :-p
</code></pre>

<p>Run jekyll to compile the website, including your post.</p>

<pre><code>cd ../web/
rbx -S jekyll
</code></pre>

<p>Create a commit of all the changes in the <code>web/</code> directory.</p>

<p>cd ../
   git add web/
   git commit -m &ldquo;Wrote a blog post on &hellip;..&rdquo;</p>

<p>Submit a patch, pull request, or if you have commit rights, push the commit to
the master branch.</p>

<p>Tell us that there is a new blog post. We may have some feedback for you before
publishing.</p>



    </div>

        <div class="container doc_page_nav">
      
        
        <span class="label">Previous:</span>
        <a href="/doc/en/how-to/fix-a-failing-spec">Fix a Failing Spec</a>
        

        <span class="label">Up:</span>
        <a href="/doc/en/">Table of Contents</a>

        
        <span class="label">Next:</span>
        <a href="/doc/en/how-to/write-documentation">Write Documentation</a>
        
      
    </div>


    <div class="container">
      <div id="disqus_thread"></div>
<script type="text/javascript">
    var disqus_shortname = 'rubinius';
    var disqus_identifier = '/doc/en/how-to/write-a-blog-post/';
    var disqus_url = 'http://rubini.us/doc/en/how-to/write-a-blog-post/';
{'fraction_non_alphanumeric': 0.17746407864885302, 'fraction_numerical': 0.003024955886059995, 'mean_word_length': 2.4142283419391855, 'pattern_counts': {'":': 0, '<': 385, '<?xml version=': 0, '>': 385, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6536101', 'n_tokens_mistral': 3925, 'n_tokens_neox': 3798, 'n_words': 904}