Skip to content

Using generate_exclude.rb Script

unknown edited this page Apr 23, 2015 · 10 revisions

Due to the large amount of articles in our documentation, Jekyll builds the site quite slowly.

Normally, using the exclude property in the _config.yml file, Jekyll can exclude some of the folders.

exclude: [README.md,Gemfile,Gemfile.lock,deploy.sh,LICENSE,SlugLog.log,UrlMappings-and-conversion-logs/*,temp_exclude_result.tmp,generate_exlude.rb]

Using the generate_exclude.rb script (located in the ajax-docs repository) you can generate the array for the exclude property.

Important: Running the script will always checkout the changes in the _config.yml file. If you have any important changes, you should first create a backup.

Example 1: Generating an exclude array that will build only the general-information and controls/button folders.
ruby generate_exclude.rb "general-information" "controls/button"

The command above will:

  1. checkout the _config.yml file;
  2. read the passed arguments (unlimited number of paths can be passed);
  3. parse the original exclude array from the _config.yml file;
  4. find all child folders in the root;
  5. find all child folders in the controls folder;
  6. build the array to be used in the _config.yml file;
  7. open notepad with the array as string, letting you to copy it.

    Note that you should manually copy the text from notepad and paste/set it as value to the exclude property in the _config.yml file.

  8. after closing notepad, temp file will be removed and the script will stop.

The following snapshots illustrate in steps how to use the script:

Figure 1: Running the generate_exclude.rb script.

image 1

Figure 2: Copying the generated array.

image 2

Figure 3: Modifying the _config.yml file.

image 3

Figure 4: Closing Notepad to terminate the generate_exclude.rb script.

image 4

Figure 5: Running Jekyll with the excluded paths.

image 5

Figure 6: Running Jekyll with the excluded paths.

image 6

Clone this wiki locally