Skip to content
Browse files

Initial checkin: Skeleton

  • Loading branch information...
0 parents commit a3f257801db17090ba1b0b8b9dca8e4e14655a96 unknown committed Dec 20, 2009
Showing with 171 additions and 0 deletions.
  1. +18 −0 .bnsignore
  2. +4 −0 History.txt
  3. +48 −0 README.txt
  4. +22 −0 Rakefile
  5. +7 −0 bin/orgmode_parser
  6. +48 −0 lib/orgmode_parser.rb
  7. +9 −0 spec/orgmode_parser_spec.rb
  8. +15 −0 spec/spec_helper.rb
  9. 0 test/test_orgmode_parser.rb
18 .bnsignore
@@ -0,0 +1,18 @@
+# The list of files that should be ignored by Mr Bones.
+# Lines that start with '#' are comments.
+#
+# A .gitignore file can be used instead by setting it as the ignore
+# file in your Rakefile:
+#
+# Bones {
+# ignore_file '.gitignore'
+# }
+#
+# For a project with a C extension, the following would be a good set of
+# exclude patterns (uncomment them if you want to use them):
+# *.[oa]
+# *~
+announcement.txt
+coverage
+doc
+pkg
4 History.txt
@@ -0,0 +1,4 @@
+== 1.0.0 / 2009-12-19
+
+* 1 major enhancement
+ * Birthday!
48 README.txt
@@ -0,0 +1,48 @@
+orgmode_parser
+ by Brian Dewey
+ http://www.bdewey.com
+
+== DESCRIPTION:
+
+Helpful Ruby routines for parsing orgmode files.
+
+== FEATURES/PROBLEMS:
+
+* FIXME (list of features or problems)
+
+== SYNOPSIS:
+
+ FIXME (code sample of usage)
+
+== REQUIREMENTS:
+
+* FIXME (list of requirements)
+
+== INSTALL:
+
+* FIXME (sudo gem install, anything else)
+
+== LICENSE:
+
+(The MIT License)
+
+Copyright (c) 2009 Brian Dewey
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+'Software'), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 Rakefile
@@ -0,0 +1,22 @@
+
+begin
+ require 'bones'
+rescue LoadError
+ abort '### Please install the "bones" gem ###'
+end
+
+ensure_in_path 'lib'
+require 'orgmode_parser'
+
+task :default => 'test:run'
+task 'gem:release' => 'test:run'
+
+Bones {
+ name 'orgmode_parser'
+ authors 'Brian Dewey'
+ email 'bdewey@gmail.com'
+ url 'http://bdewey.com'
+ version OrgmodeParser::VERSION
+}
+
+# EOF
7 bin/orgmode_parser
@@ -0,0 +1,7 @@
+#!/usr/bin/env ruby
+
+require File.expand_path(
+ File.join(File.dirname(__FILE__), %w[.. lib orgmode_parser]))
+
+# Put your code here
+
48 lib/orgmode_parser.rb
@@ -0,0 +1,48 @@
+
+module OrgmodeParser
+
+ # :stopdoc:
+ VERSION = '0.0.1'
+ LIBPATH = ::File.expand_path(::File.dirname(__FILE__)) + ::File::SEPARATOR
+ PATH = ::File.dirname(LIBPATH) + ::File::SEPARATOR
+ # :startdoc:
+
+ # Returns the version string for the library.
+ #
+ def self.version
+ VERSION
+ end
+
+ # Returns the library path for the module. If any arguments are given,
+ # they will be joined to the end of the libray path using
+ # <tt>File.join</tt>.
+ #
+ def self.libpath( *args )
+ args.empty? ? LIBPATH : ::File.join(LIBPATH, args.flatten)
+ end
+
+ # Returns the lpath for the module. If any arguments are given,
+ # they will be joined to the end of the path using
+ # <tt>File.join</tt>.
+ #
+ def self.path( *args )
+ args.empty? ? PATH : ::File.join(PATH, args.flatten)
+ end
+
+ # Utility method used to require all files ending in .rb that lie in the
+ # directory below this file that has the same name as the filename passed
+ # in. Optionally, a specific _directory_ name can be passed in such that
+ # the _filename_ does not have to be equivalent to the directory.
+ #
+ def self.require_all_libs_relative_to( fname, dir = nil )
+ dir ||= ::File.basename(fname, '.*')
+ search_me = ::File.expand_path(
+ ::File.join(::File.dirname(fname), dir, '**', '*.rb'))
+
+ Dir.glob(search_me).sort.each {|rb| require rb}
+ end
+
+end # module OrgmodeParser
+
+OrgmodeParser.require_all_libs_relative_to(__FILE__)
+
9 spec/orgmode_parser_spec.rb
@@ -0,0 +1,9 @@
+
+require File.join(File.dirname(__FILE__), %w[spec_helper])
+
+describe OrgmodeParser do
+ it "should open ORG files" do
+ parser = OrgmodeParser.new("foo.org")
+ end
+end
+
15 spec/spec_helper.rb
@@ -0,0 +1,15 @@
+
+require File.expand_path(
+ File.join(File.dirname(__FILE__), %w[.. lib orgmode_parser]))
+
+Spec::Runner.configure do |config|
+ # == Mock Framework
+ #
+ # RSpec uses it's own mocking framework by default. If you prefer to
+ # use mocha, flexmock or RR, uncomment the appropriate line:
+ #
+ # config.mock_with :mocha
+ # config.mock_with :flexmock
+ # config.mock_with :rr
+end
+
0 test/test_orgmode_parser.rb
No changes.

0 comments on commit a3f2578

Please sign in to comment.
Something went wrong with that request. Please try again.