summaryrefslogtreecommitdiffstats
path: root/docs/conrefs.md
diff options
context:
space:
mode:
authorSamy Pessé <samypesse@gmail.com>2016-02-26 09:41:26 +0100
committerSamy Pessé <samypesse@gmail.com>2016-02-26 09:41:26 +0100
commitd3d64f636c859f7f01a64f7774cf70bd8ccdc562 (patch)
tree4f7731f37c3a793d187b0ab1cd77680e69534c6c /docs/conrefs.md
parent4cb9cbb5ae3aa8f9211ffa3ac5e3d34232c0ca4f (diff)
parenteef072693b17526347c37b66078a5059c71caa31 (diff)
downloadgitbook-d3d64f636c859f7f01a64f7774cf70bd8ccdc562.zip
gitbook-d3d64f636c859f7f01a64f7774cf70bd8ccdc562.tar.gz
gitbook-d3d64f636c859f7f01a64f7774cf70bd8ccdc562.tar.bz2
Merge pull request #1109 from GitbookIO/3.0.0
Version 3.0.0
Diffstat (limited to 'docs/conrefs.md')
-rw-r--r--docs/conrefs.md55
1 files changed, 55 insertions, 0 deletions
diff --git a/docs/conrefs.md b/docs/conrefs.md
new file mode 100644
index 0000000..7844e9c
--- /dev/null
+++ b/docs/conrefs.md
@@ -0,0 +1,55 @@
+# Content References
+
+Content referencing (conref) is a convenient mechanism for reuse of content from other files or books.
+
+### Importing local files
+
+Importing an other file's content is really easy using the `include` tag:
+
+```
+{% include "./test.md" %}
+```
+
+### Importing file from another book
+
+GitBook can also resolve the include path by using git:
+
+```
+{% include "git+https://github.com/GitbookIO/documentation.git/README.md#0.0.1" %}
+```
+
+The format of git url is:
+
+```
+git+https://user@hostname/project/blah.git/file#commit-ish
+```
+
+The real git url part should finish with `.git`, the filename to import is extracted after the `.git` till the fragment of the url.
+
+The `commit-ish` can be any tag, sha, or branch which can be supplied as an argument to `git checkout`. The default is `master`.
+
+### Inheritance
+
+Template inheritance is a way to make it easy to reuse templates. When writing a template, you can define "blocks" that child templates can override. The inheritance chain can be as long as you like.
+
+`block` defines a section on the template and identifies it with a name. Base templates can specify blocks and child templates can override them with new content.
+
+```
+{% extends "./mypage.md" %}
+
+{% block pageContent %}
+# This is my page content
+{% endblock %}
+```
+
+In the file `mypage.md`, you should specify the blocks that can be extent:
+
+```
+{% block pageContent %}
+This is the default content
+{% endblock %}
+
+# License
+
+{% import "./LICENSE" %}
+```