|  | = Solr Ref Guide | 
|  | // Licensed to the Apache Software Foundation (ASF) under one | 
|  | // or more contributor license agreements.  See the NOTICE file | 
|  | // distributed with this work for additional information | 
|  | // regarding copyright ownership.  The ASF licenses this file | 
|  | // to you under the Apache License, Version 2.0 (the | 
|  | // "License"); you may not use this file except in compliance | 
|  | // with the License.  You may obtain a copy of the License at | 
|  | // | 
|  | //   http://www.apache.org/licenses/LICENSE-2.0 | 
|  | // | 
|  | // Unless required by applicable law or agreed to in writing, | 
|  | // software distributed under the License is distributed on an | 
|  | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
|  | // KIND, either express or implied.  See the License for the | 
|  | // specific language governing permissions and limitations | 
|  | // under the License. | 
|  |  | 
|  | This is the source for the Solr Reference Guide. | 
|  |  | 
|  | Raw content is stored in Asciidoc (`.adoc`) formatted files in the `src/` directory. | 
|  |  | 
|  | == Prerequisites for Building | 
|  | These files are processed with AsciiDoctor in 2 different ways: | 
|  |  | 
|  | * HTML version, using Jekyll: | 
|  | ** `Ruby` (v2.3 or higher) | 
|  | ** The following gems must be installed: | 
|  | *** `jekyll`: v3.5, not v4.x. | 
|  | Use `gem install jekyll --force --version 3.5.0` to force install of v3.5.0. | 
|  | *** `jekyll-asciidoc`: v2.1 or higher; latest version (3.0.0) is fine. | 
|  | Use `gem install jekyll-asciidoc` to install. | 
|  | *** `slim`: v3.0 or higher; latest version (4.0.1) is fine. | 
|  | Use `gem install slim` to install. | 
|  | *** `tilt`: v1.0 or higher; latest version (2.0.10) is fine. | 
|  | Use `gem install tilt` to install. | 
|  | *** `concurrent-ruby`: v1.0 or higher; latest version (1.1.5) is fine. | 
|  | Use `gem install concurrent-ruby` to install. | 
|  |  | 
|  |  | 
|  | == Building the Guide | 
|  | For details on building the ref guide, see `ant -p`. | 
|  |  | 
|  | There are currently four available targets: | 
|  |  | 
|  | * `ant default`: builds the HTML versions of the Solr Ref Guide. | 
|  | * `ant build-site`: also builds the HTML version. | 
|  | * `ant clean`: removes the `../build/solr-ref-guide` directory. | 
|  |  | 
|  | The output of all builds will be located in `../build/solr-ref-guide`. | 
|  |  | 
|  | == Key Directories | 
|  | Key directories to be aware of: | 
|  |  | 
|  | * `src` - where all human edited `*.adoc` files related to the Guide live, as well as various configuration, theme, and template files. | 
|  | * `tools` - custom Java code for parsing metadata in our `src/*.adoc` files to produce some `_data/` files for site navigation purposes. | 
|  | * `../build/solr-ref-guide/content` - a copy of the `src` dir generated by ant where: | 
|  | ** `*.template` files are processed to replace ant properties with their runtime values | 
|  | ** some `../build/solr-ref-guide/content/_data` files are generated by our java tools based header attributes from each of the `*.adoc` files | 
|  | * `../build/solr-ref-guide/html-site` - HTML generated version of the ref guide | 
|  |  | 
|  | See the additional documentation in `src/metadocs` for more information about how to edit files, build for releases, or modifying any Jekyll templates. |