version 3.0 of the theme -- complete overhaul
This commit is contained in:
74
doc_excluding_files.md
Normal file
74
doc_excluding_files.md
Normal file
@ -0,0 +1,74 @@
|
||||
---
|
||||
title: Excluding files
|
||||
tags: single-sourcing
|
||||
audience: writer, designer
|
||||
keywords:
|
||||
last_updated:
|
||||
summary:
|
||||
---
|
||||
{% include linkrefs.html %}
|
||||
|
||||
By default, all files in your project are included in your output. To exclude files, note them in the `exclude` section in the configuration file. Here's a sample:
|
||||
|
||||
```
|
||||
|
||||
exclude:
|
||||
- "Gemfile"
|
||||
- "Gemfile.lock"
|
||||
- drafts
|
||||
- _site/documentation-theme-jekyll
|
||||
- bower_components
|
||||
```
|
||||
|
||||
If you have different outputs for your site, you'll want to customize the exclude sections in your various configuration files.
|
||||
|
||||
Here's the process I recommend. Put all files in the root directory of your project. Suppose one project's name is alpha and the other is beta. Then name each file as follows:
|
||||
|
||||
* alpha_sample.html
|
||||
* beta_sample.html
|
||||
|
||||
In your exclude list for your beta project, specify it as follows:
|
||||
|
||||
```
|
||||
exclude:
|
||||
- alpha_*
|
||||
```
|
||||
|
||||
In your exclude list for your alpha project, specify it as follows:
|
||||
|
||||
```
|
||||
- beta_*
|
||||
```
|
||||
|
||||
If you have more sophisticated exclusion, add another level to your file names. For example, if you have different programming languages you want to filter by, add this:
|
||||
|
||||
* alpha_java_sample.html
|
||||
* alpha_cpp_sample.html
|
||||
|
||||
Then you exclude files for your Alpha C++ project as follows:
|
||||
|
||||
```
|
||||
exclude:
|
||||
|
||||
- alpha_java_*
|
||||
- beta_*
|
||||
```
|
||||
|
||||
And you exclude files for your Alpha Java project as follows:
|
||||
|
||||
```
|
||||
exclude:
|
||||
|
||||
- alpha_cpp_*
|
||||
- alpha_beta_*
|
||||
|
||||
|
||||
There isn't a way to automatically exclude all folders. By default, everything is included unless you explicitly list it under the exclude section.
|
||||
|
||||
## Excluding draft content
|
||||
|
||||
If you're working on a draft, put it inside the \_drafts folder or add `published: false` in the frontmatter. The \_drafts folder is excluded by default, so you don't have to specify it in your exclude list.
|
||||
|
||||
## Limitations
|
||||
|
||||
What if a file should appear in two projects but not the third? This can get tricky. For some files, rather than using a wildcard, you may need to manually specify the entire filename that you're excluding instead of excluding it by way of pattern.
|
Reference in New Issue
Block a user