## index_html [![Gem Version](https://badge.fury.io/rb/index_html.svg)][gem] [![Dependency Status](https://gemnasium.com/agilecreativity/index_html.png)][gemnasium] [![Code Climate](https://codeclimate.com/github/agilecreativity/index_html.png)][codeclimate] [![Build Status](https://secure.travis-ci.org/agilecreativity/index_html.png)][travis-ci] [![Coverage Status](https://coveralls.io/repos/agilecreativity/index_html/badge.png)][coveralls] [gem]: http://badge.fury.io/rb/index_html [gemnasium]: https://gemnasium.com/agilecreativity/index_html [codeclimate]: https://codeclimate.com/github/agilecreativity/index_html [travis-ci]: http://travis-ci.org/agilecreativity/index_html [coveralls]: https://coveralls.io/r/agilecreativity/index_html Quickly generate the index.html files based on your simple criteria. Note: start from version `0.1.2` this gem will follow the [Semantic Versioning][] release schedule. ### Installation Add this line to your application's Gemfile: gem 'index_html' And then execute: $ bundle Or install it yourself as: $ gem install index_html ### Usage Say you have lots of ebook files (pdf, epub, or mobi) and you have properly named them with something like [ebook_renamer][]. Now that you have the good data, if you like to create a quick index to all of the files that have the specific word 'Android' in the title you could perhap try something like the following: ```sh gem install index_html cd ~/Dropbox/ebooks/ index_html --base-dir . \ --exts epub pdf mobi \ --inc-words android \ --recursive ``` ### Help/Usage: Just type `index_html` without any options to see the list of help ``` Usage: index_html Options: -b, [--base-dir=BASE_DIR] # Base directory # Default: . (current directory) -e, [--exts=one two three] # List of extensions to search for -f, [--non-exts=one two three] # List of files without extension to search for -n, [--inc-words=one two three] # List of words to be included in the result if any -x, [--exc-words=one two three] # List of words to be excluded from the result if any -i, [--ignore-case], [--no-ignore-case] # Match case insensitively # Default: true -r, [--recursive], [--no-recursive] # Search for files recursively # Default: true -v, [--version], [--no-version] # Display version information -p, [--prefix=PREFIX] # Prefix string to the URL # Default: . -d, [--indent=N] # Indentation to each list item in the output # Default: 6 -o, [--output=OUTPUT] # Output file name # Default: index.html Generate the index.html base on simple criteria ``` This will generate the file `index.html` that you can open from your favourite browser. ### Sample output - Sample list of files from a given directory ```shell $index_html --base-dir=spec/fixtures --exts=rb java --recursive ``` The output file `index.html` should be generated with something like ```html File Listing
File List
  1. ./demo1.xxx.java
  2. ./demo1.xxx.rb
  3. ./demo2.xxx.java
  4. ./demo2.xxx.rb
  5. ./sub-dir/demo3.yyy.java
  6. ./sub-dir/demo3.yyy.rb
  7. ./sub-dir/demo4.yyy.java
  8. ./sub-dir/demo4.yyy.rb
``` - Run with simple prefix option ```shell index_html --base-dir spec/fixtures --exts rb java --recursive --prefix http://localhost ``` The output file `index.html` should be something like ```html File Listing
File List
  1. http://localhost/demo1.xxx.java
  2. http://localhost/demo1.xxx.rb
  3. http://localhost/demo2.xxx.java
  4. http://localhost/demo2.xxx.rb
  5. http:/localhost/sub-dir/demo3.yyy.java
  6. http://localhost/sub-dir/demo3.yyy.rb
  7. http://localhost/sub-dir/demo4.yyy.java
  8. http://localhost/sub-dir/demo4.yyy.rb
``` ### Contributing Bug reports and suggestions for improvements are always welcome, GitHub pull requests are even better!. 1. Fork it 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create new Pull Request [agile_utils]: https://rubygems.org/gems/agile_utils [code_lister]: https://rubygems.org/gems/code_lister [ebook_renamer]: https://rubygems.org/gems/ebook_renamer [rubocop]: https://github.com/bbatsov/rubocop [Semantic Versioning]: http://semver.org