README.markdown in unpack-0.1.6 vs README.markdown in unpack-0.1.7
- old
+ new
@@ -12,10 +12,12 @@
sudo gem install unpack
Start `irb` and include the gem, `require 'unpack'`
+## Working with a directory
+
### Unpack everything in the current directory
$ Unpack.runner!
=> [#<Container:0x000001010ab458 @files=["dmd-tsa-cd2.avi"], @directory="/Downloads/Some.Super.Movie/CD2">]
@@ -38,32 +40,60 @@
### Unpack all archived file, but not deeper 3 folders down
$ Unpack.runner!('.', depth: 3)
=> [#<Container:0x000001010ab458 @files=["dmd-tsa-cd2.avi"], @directory="/Downloads/Some.Super.Movie/CD2">]
-
+
### Unpack everything, even one file directories
To prevent you from unarchive files in folders that contains subtitles and other nonrelevant files, the folder must contain 5 archive files or more.
If you want to unpack everything, even subtitles directories, then you will have to specify the `min_files` option.
$ Unpack.runner!('.', min_files: 0)
=> [#<Container:0x000001010ab458 @files=["english.str"], @directory="/Downloads/Subtitle/">]
+
+## Working with one specific file
-### Some configure alternatives
+### Unpack a file
+
+ $ Unpack.it!(file: 'zip/my_file.zip')
+ => [#<Container:0x000001010ab458 @files=["file1", "file2"], @directory="/Downloads/my/files/zip">]
+
+### Unpack a specific file, removing it when done
+
+ $ Unpack.it!(file: 'zip/my_file.zip', remove: true)
+ => [#<Container:0x000001010ab458 @files=["file1", "file2"], @directory="/Downloads/my/files/zip">]
+
+### Unpack a specific file and move the new files to a destination directory
+
+ $ Unpack.it!(file: 'zip/my_file.zip', to: '/tmp')
+ => [#<Container:0x000001010ab458 @files=["file1", "file2"], @directory="/tmp">]
+## Some configure alternatives
+
+### The *runner!* method
+
- ** :min_files ** (Integer) The minimum amount of files in the directory you want to archive the files in. *Default is 5*.
- ** :depth ** (Integer) The maximum folder depth. *Default is 2*.
- ** :debugger ** (Boolean) Prints some debug output into the console. *Default is false*.
- ** :force_remove ** (Boolean) Remove rarfiles, even if no files where unarchived. *Default is false*. **To get this to work you also have to set the `remove` option to true**.
- ** :remove ** (Boolean) Removes archived files after they have been used. *Default is false*.
- ** :absolute_path_to_unrar ** (String) The absolut path to the unrar binary. *Default is the [unrar](http://homepage.mac.com/pnoriega/unrar.html) binary that comes with the gem*.
+### The *it!* method
+
+- **:to** (String) The absolute or relative path to the destination directory. If nothing is defined, the *:file* path will be used.
+- **:file** (String) The absolute or relative path to the archive file.
+- **:remove** (Boolean) See the *runner!* method above
+- **:absolute_path_to_unrar** (String) See the *runner!* method above
+- **:debugger** (String) See the *runner!* method above
+
## What is being returned?
-The `runner!` method returns an `Array` of `Container` objects.
+The `runner!` method returns an `Array` of `Container` instances.
+The `it!` method returns an instance of `Container`.
These are the accessors of the `Container` class.
- **files** (String) The absolut path to the files that where unarchived.
- **directory** (String) The absolut path to the folder containing the files.
@@ -75,10 +105,11 @@
- Start by running all tests using rspec, `autotest`.
- Implement your own code, write some tests, commit and do a pull request.
## Requirements
-The gem is tested in OS X 10.6.6 using Ruby 1.9.2
+The gem is tested in OS X 10.6.6 using Ruby 1.9.2.
+It will not work in 1.8, due to the [new hash syntax](http://blog.peepcode.com/tutorials/2011/rip-ruby-hash-rocket-syntax).
## Thanks to ...
- the [UnRarX](http://homepage.mac.com/pnoriega/unrar.html) team that provies the unrar binary.
- [NinoScript](https://github.com/NinoScript) that solved the console-escaping issue - [see this commit](https://github.com/oleander/Unpack/commit/dd7e46200a490c7af9fc5f770127291192a818f5).
\ No newline at end of file