<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Drupal Console</title>
    <link type="text/css" rel="stylesheet" href="{{ css_path }}">
</head>
<body>
<h1 class="title">Drupal Console</h1>

<h2>Getting the project</h2>

<p>There are different ways to get the project on your local machine. Our recommendation for getting the project on your
    local machine is by using the installer.</p>

<h3 id="using-the-drupal-console-installer">Using the Drupal Console Installer</h3>

<p>You can install the Drupal Console locally by running the installer in your project
    directory, the installer will take care of downloading the necesary files to run drupal console on you computer.
</p>
<h4 id="using-curl">Using curl:</h4>
<pre><code>$ curl https://drupalconsole.com/installer -L -o drupal.phar
    </code></pre>
<h4 id="or-if-you-dont-have-curl">Or if you don't have curl:</h4>
<pre><code>php -r "readfile('https://drupalconsole.com/installer');" > drupal.phar
    </code></pre>
<h4 id="you-can-now-execute-console-using">Example:</h4>
<pre><code>$ php console.phar generate:module
    </code></pre>
<p>You can place this file anywhere you wish. If you put it in your PATH, you can access it
    globally. On unixy systems you can even make it executable and invoke it without php.
</p>
<h4 id="access-console-from-anywhere-on-your-system">Access console from anywhere on your system</h4>
<pre><code>$ mv console.phar /usr/local/bin/drupal
    </code></pre>
<h4 id="apply-executable-permissions-on-the-downloaded-file">Apply executable permissions on the downloaded file:</h4>
<pre><code>$ chmod +x /usr/local/bin/drupal
    </code></pre>
<h4 id="you-can-now-execute-console-using">You can now execute console using:</h4>
<pre><code>$ drupal
    </code></pre>
<p><strong>NOTE:</strong> The name <code>drupal</code> is just an alias you can name it
    anything you like.
</p>

<h3 id="install-drupal-console-using-composer">Install Drupal Console Using Composer</h3>

<p>You can install this project using composer.

<div class="comments-icon">
    <div class="marker">+</div>
</div>
</p>
<h4 id="install-drupal-console-globally-using-composer">Install Drupal Console globally using composer:</h4>
<pre><code>$ composer global require drupal/console:@stable
    </code></pre>
<h4 id="add-the-binary-directory-to-your-class-path">Add the binary directory to your class path:</h4>
<pre><code>$ echo "PATH=$PATH:~/.composer/vendor/bin" &gt;&gt; ~/.bash_profile
    </code></pre>
<h4 id="you-can-now-execute-console-using">You can now execute console using:</h4>
<pre><code>$ console generate:module
    </code></pre>
<h3 id="download-phar-file">Download phar file</h3>

<p>You can download the latest version of Console from the repository releases page at:</p>

<p><a href="https://github.com/hechoendrupal/DrupalConsole" target="_blank">https://github.com/hechoendrupal/DrupalConsole</a>
</p>

<p>Make sure you download the console.phar file from the most current release.</p>

<h3 id="update-project">Update project</h3>

<p>Drupal 8 is under heavy development, to keep in sync with the latest changes. The easiest and recommended way of
    updating Drupal Console is using the self-update command.
</p>
<h4 id="depending-on-the-installation-method">Depending on the installation method:</h4>
<h5 id="installed-globally-and-renamed-to-drupal">Installed globally (and renamed to "drupal"):</h5>
<pre><code>$ drupal self-update
    </code></pre>
<h5 id="installed-globally-using-composer">Installed globally (using composer):</h5>
<pre><code>$ composer global update drupal/console:@stable
    </code></pre>
<h5 id="installed-locally-running-from-directory-where-the-consolephar-has-been-downloaded">Installed locally (running
    from directory where the console.phar has been downloaded):</h5>
<pre><code>$ php console.phar self-update
    </code></pre>
<h2>Available Drupal Console Commands</h2>
<p><strong>Note: Drupal Console commands *must* be run from the root of a Drupal 8 installation.</strong></p>
<table>
    <thead>
    <tr>
        <th>Drupal Console Command</th>
        <th>Details</th>
    </tr>
    </thead>
    <tbody>
    {% for namespace, commands in command_list %}
        {% if namespace != 'none' %}
            <tr>
                <td><strong>{{ namespace }}</strong></td>
                <td></td>
            </tr>
        {% endif %}
        {% for command in commands %}
            <tr>
                <td><a href="commands/{{ command.name|replace(':','-') }}.html">{{ command.name }}</a></td>
                <td>{{ command.description }}</td>
            </tr>
        {% endfor %}
    {% endfor %}
    </tbody>
</table>
{% if options|length>0 %}
    <h2>Available options</h2>
    <table>
        <thead>
        <tr>
            <th>Option</th>
            <th>Details</th>
        </tr>
        </thead>
        <tbody>
        {% for option in options %}
            <tr class="{{ cycle(['odd', 'even'], loop.index0) }}">
                <td>{{ option.name }}</td>
                <td>{{ option.description }}</td>
            </tr>
        {% endfor %}
        </tbody>
    </table>
{% endif %}
{% if arguments|length>0 %}
    <h2>Available arguments</h2>
    <table>
        <thead>
        <tr>
            <th>Argument</th>
            <th>Details</th>
        </tr>
        </thead>
        <tbody>
        {% for argument in arguments %}
            <tr class="{{ cycle(['odd', 'even'], loop.index0) }}">
                <td>{{ argument.name }}</td>
                <td>{{ argument.description }}</td>
            </tr>
        {% endfor %}
        </tbody>
    </table>
{% endif %}
</body>
</html>
