android.moparisthebest.org/source/docs/plugins/include-code/index.markdown
2012-06-03 00:24:03 -05:00

76 lines
2.0 KiB
Markdown

---
layout: page
title: "Include Code"
date: 2011-07-22 09:13
updated: 201-08-21 16:18
sidebar: false
footer: false
---
Import files on your filesystem into any blog post as embedded code snippets with syntax highlighting and a download link.
In the `_config.yml` you can set your `code_dir` but the default is `source/downloads/code`. Simply put a file anywhere under that directory and
use the following tag to embed it in a post.
## Syntax
{{ "{% include_code [title] [lang:language] path/to/file [start:#] [end:#] [range:#-#] [mark:#,#-#] [linenos:false]" }} %}
### Basic options
- `[title]` - Add a custom figcaption to your code block (defaults to filename).
- `lang:language` - Force the syntax highlighter to use this language. By default the file extension is used for highlighing, but not all extensions are known by Pygments.
{% assign show-range = true %}
{% render_partial docs/plugins/_partials/options.markdown %}
## Examples
**1.** This code snipped was included from `source/downloads/code/test.js`.
{% include_code test.js %}
*The source:*
{{ "{% include_code test.js" }} %}
**2.** Setting a custom caption.
{% include_code ruby/test.rb Add to_fraction for floats %}
*The source:*
{{ "{% ruby/test.rb include_code Add to_fraction for floats" }} %}
This includes a file from `source/downloads/code/ruby/test.rb`.
### Including part of a file
**3.** Embed a file starting from a specific line.
{% include_code test.js start:10 %}
*The source:*
{% raw %}{% include_code test.js start:10 %}{% endraw %}
**4.** Embed a file ending at a specific line.
{% include_code test.js end:10 %}
*The source:*
{% raw %}{% include_code test.js end:10 %}{% endraw %}
**5.** Display only the lines in a specific range.
{% include_code test.js range:5-16 %}
*The source:*
{% raw %}{% include_code test.js range:5-16 %}{% endraw %}
### Other ways to embed code snippets
You might also like to [use back tick code blocks](/docs/plugins/backtick-codeblock) or [embed GitHub gists](/docs/plugins/gist-tag).