The project is in a healthy, maintained state
This Jekyll plugin provides 3 Liquid filters: dirname, basename and basename_without_extension.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Jekyll_basename_dirname Gem Version

This is a Jekyll plugin that provides the following Liquid filters: basename, basename_without_extension, dirname and wbr.

basename and dirname work like the similarly named bash commands. basename_without_extension does what you might expect.

wbr Adds a <wbr> element after every "/" character in a string; this causes strings containing long paths to wrap in an HTML page.

More information is available on Mike Slinn's web site about my Jekyll plugins.

Installation

As a Jekyll Filter Plugin

If you want to use this Ruby gem in a Jekyll application, add the following line to your application's Gemfile:

group :jekyll_plugins do
  gem 'jekyll_basename_dirname'
end

And then install in the usual fashion:

$ bundle

As a Dependency Of a Gem

Add the following line to your application's .gemspec:

spec.add_dependency 'jekyll_basename_dirname'

And then install the dependencies in the usual fashion:

$ bundle

As a Ruby Module In a Ruby Program

Add the following line to your application's Gemfile:

gem 'jekyll_basename_dirname'

And then install the dependencies in the usual fashion:

$ bundle

Usage

Dirname

Filters a string containing a path and returns the portion of th path before the filename and extension. Example: Extracts "blah/blah" from the path.

{{ "blah/blah/filename.ext" | dirname }} => blah/blah

Basename

Filters a string containing a path and returns the filename extracted from the path, including the filetype.

Example: Extracts "filename.ext" from the path:

{{ "blah/blah/filename.ext" | basename }} => filename.ext

Basename Without Extension

Filters a string containing a path and returns the filename extracted from the path, including the filetype.

Example: Extracts "filename.ext" from the path:

{{ "blah/blah/filename.ext" | basename_without_extension  }} => filename

wbr

Filters a string containing a path so long paths wrap in an HTML page.

Example:

{{ 'blah/blah/filename.ext' | wbr }} => blah/<wbr>/blah/<wbr>filename.ext

Development

After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.

Install development dependencies like this:

$ BUNDLE_WITH="development" bundle install

To install this gem onto your local machine, run:

$ bundle exec rake install

To release a new version,

  1. Update the version number in version.rb.

  2. Commit all changes to git; if you don't the next step might fail with an unexplainable error message.

  3. Run the following:

    $ bundle exec rake release

    The above creates a git tag for the version, commits the created tag, and pushes the new .gem file to RubyGems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/mslinn/jekyll_basename_dirname.

License

The gem is available as open source under the terms of the MIT License.