<commit_before># Yesman

TODO: Write a gem description

## Installation

Add this line to your application's Gemfile:

    gem 'yesman'

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install yesman

## Usage

TODO: Write usage instructions here

## Contributing

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<commit_msg>Updated with instructions and requirements<commit_after># Yesman

Yesman is a ruby command line interface that creates basic directory structures for starting a C++ project. As a part of the creation of a new project Yesman will download, compile and generally get Google Test setup for the projects testing suite.

## Installation

To install it simply run:

    $ gem install yesman

## Usage

Using yesman is simple to create a default project simply run:
    
    $ yesman new ProjectName

Doing so will create a "ProjectName" directory with a "src", "tests", "bin" directory. GoogleTests will be compiled into a "gtest" directory inside of the "tests" directory. A main test runner file named "ProjectNameTests.cpp" will be created inside of the "tests" directory and a "ProjectName.cpp" file will be created in your "src" directory.

There are several optional parameters you can use that will adjust the following:

-s  Source Directory Name (defaults to "src")

-t  Tests Directory Name (defaults to "tests")

-o  Output Directory Name (defaults to "bin")

-x  C++ extension to use for generated files (defaults to "cpp")

## Requirements

Under the hood there are several technologies that Yesman relies on. In order to run you will need the following:

G++ - You can get this by installing XCode on your mac, be sure to install the command line tools

svn - In order to pull down Google Test you will need to have svn installed on your machine

ruby > 1.9 - OS X is still shipping with 1.8.7. Use rvm to install the latest version of ruby

## Contributing

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
{'fraction_non_alphanumeric': 0.06675335934113567, 'fraction_numerical': 0.006501950585175552, 'mean_word_length': 3.9211087420042645, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1287316', 'n_tokens_mistral': 640, 'n_tokens_neox': 613, 'n_words': 353}