Module: Webby
- Defined in:
- lib/webby/stelan/mktemp.rb,
lib/webby.rb,
lib/webby/builder.rb,
lib/webby/filters.rb,
lib/webby/helpers.rb,
lib/webby/journal.rb,
lib/webby/renderer.rb,
lib/webby/auto_builder.rb,
lib/webby/filters/tidy.rb,
lib/webby/filters/slides.rb,
lib/webby/link_validator.rb,
lib/webby/filters/outline.rb,
lib/webby/filters/basepath.rb,
lib/webby/stelan/paginator.rb
Overview
:stopdoc: Skeleton module for the ‘mktemp’ routine.
Ideally, one would do this in their code to import the “mktemp” call directly into their current namespace:
require 'mktemp'
include MkTemp
# do something with mktemp()
It is recommended that you look at the documentation for the mktemp() call directly for specific usage.
–
The compilation of software known as mktemp.rb is distributed under the following terms: Copyright © 2005-2006 Erik Hollensbe. All rights reserved.
Redistribution and use in source form, with or without modification, are permitted provided that the following conditions are met:
-
Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++
Defined Under Namespace
Modules: Apps, Filters, Helpers, MkTemp, Resources Classes: AutoBuilder, Builder, Error, Journal, LinkValidator, Paginator, Renderer
Constant Summary collapse
- VERSION =
:stopdoc:
'0.9.4'
- LIBPATH =
:nodoc:
::File.(::File.dirname(__FILE__)) + ::File::SEPARATOR
- PATH =
::File.dirname(LIBPATH) + ::File::SEPARATOR
- YAML_SEP =
'---'
Class Method Summary collapse
-
.cairn ⇒ Object
call-seq: cairn => filename.
-
.deprecated(method, message = nil) ⇒ Object
Prints a deprecation warning using the logger.
-
.exclude ⇒ Object
call-seq Webby.exclude => regexp.
-
.exec_editor(*args) ⇒ Object
call-seq: Webby.exec_editor( *args ).
-
.libpath(*args) ⇒ Object
Returns the library path for Webby.
-
.load_files ⇒ Object
Scan the
layouts/
folder and thecontent/
folder and create a new Resource object for each file found there. -
.path(*args) ⇒ Object
Returns the path for Webby.
-
.require_all_libs_relative_to(fname, dir = nil) ⇒ Object
call-seq: Webby.require_all_libs_relative_to( filename, directory = nil ).
-
.site ⇒ Object
call-seq: Webby.site => configuration.
Class Method Details
.cairn ⇒ Object
call-seq:
cairn => filename
The Webby cairn file is used to mark the last time the content was built into the output directory. It is an empty file; only the modification time of the file is important.
71 72 73 |
# File 'lib/webby.rb', line 71 def self.cairn @cairn ||= ::File.join(site.output_dir, '.cairn') end |
.deprecated(method, message = nil) ⇒ Object
Prints a deprecation warning using the logger. The message states that the given method is being deprecated. An optional message can be give to – somthing nice and fuzzy about a new method or why this one has to go away; sniff, we’ll miss you little buddy.
112 113 114 115 116 |
# File 'lib/webby.rb', line 112 def self.deprecated( method, = nil ) msg = "'#{method}' has been deprecated" msg << "\n\t#{}" unless .nil? Logging::Logger['Webby'].warn msg end |
.exclude ⇒ Object
call-seq
Webby.exclude => regexp
Returns a regular expression used to exclude resources from the content directory from being processed by Webby. This same regular expression is also used to exclude layouts.
42 43 44 |
# File 'lib/webby.rb', line 42 def self.exclude @exclude ||= Regexp.new(site.exclude.join('|')) end |
.exec_editor(*args) ⇒ Object
call-seq:
Webby.exec_editor( *args )
Calls the editor set in the Sitefile or in the environment variables WEBBY_EDITOR or EDITOR (in that order). This method will do nothing if the editor has not been set.
53 54 55 56 57 58 59 60 61 62 |
# File 'lib/webby.rb', line 53 def self.exec_editor( *args ) unless defined? @editor @editor = (site.editor.nil? or site.editor.empty?) ? nil : site.editor @editor = @editor.split if @editor end return if @editor.nil? args = [@editor, args].flatten exec(*args) end |
.libpath(*args) ⇒ Object
Returns the library path for Webby. If any arguments are given, they will be joined to the end of the libray path using File.join
.
79 80 81 |
# File 'lib/webby.rb', line 79 def self.libpath( *args ) args.empty? ? LIBPATH : ::File.join(LIBPATH, args.flatten) end |
.load_files ⇒ Object
Scan the layouts/
folder and the content/
folder and create a new Resource object for each file found there.
121 122 123 124 125 126 127 |
# File 'lib/webby.rb', line 121 def self.load_files ::Find.find(site.layout_dir, site.content_dir) do |path| next unless test ?f, path next if path =~ ::Webby.exclude Resources.new path end end |
.path(*args) ⇒ Object
Returns the path for Webby. If any arguments are given, they will be joined to the end of the path using File.join
.
87 88 89 |
# File 'lib/webby.rb', line 87 def self.path( *args ) args.empty? ? PATH : ::File.join(PATH, args.flatten) end |
.require_all_libs_relative_to(fname, dir = nil) ⇒ Object
call-seq:
Webby.require_all_libs_relative_to( filename, directory = nil )
Utility method used to rquire 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.
99 100 101 102 103 104 105 |
# File 'lib/webby.rb', line 99 def self.require_all_libs_relative_to( fname, dir = nil ) dir ||= ::File.basename(fname, '.*') search_me = ::File.( ::File.join(::File.dirname(fname), dir, '*.rb')) Dir.glob(search_me).sort.each {|rb| require rb} end |
.site ⇒ Object
call-seq:
Webby.site => configuration
Returns the configuration parameters for the Webby site. These defaults should be overridden as needed in the site specific Rakefile.
31 32 33 |
# File 'lib/webby.rb', line 31 def self.site Loquacious.configuration_for :webby end |