No release in over 3 years
Low commit activity in last 3 years
Convert strings and symbols to slug param
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.3
>= 0

Runtime

~> 4.0.0.pre
 Project Readme

ToSlugParam

Convert strings and symbols to slug param

Transliteration + Parameterization for slugs building

Install

gem "to_slug_param", "~> 1.2"

RubyGems/to_slug_param

Using

For russian transliteration by default

I18n.enforce_available_locales = true

module DummyApp
  class Application < Rails::Application
    config.i18n.default_locale = :ru
  end
end
"Привет Мир! Hello world!".to_slug_param
# => "privet-mir-hello-world"

String.to_slug_param("Привет Мир! Hello world!")
# => "privet-mir-hello-world"

Be carefully with file extension

"Документ.doc".to_slug_param
# => "dokument-doc"

For filenames:

"/доки/dir/тест/документ.doc".slugged_filename         #=> "dokument.doc"
String.slugged_filename("/доки/dir/тест/документ.doc") #=> "dokument.doc"

For full file path:

"/доки/dir/тест/документ.doc".slugged_filepath         #=> "/доки/dir/тест/dokument.doc"
String.slugged_filepath("/доки/dir/тест/документ.doc") #=> "/доки/dir/тест/dokument.doc"

Params

"Документ.doc".to_slug_param(locale: :ru) # => "dokument-doc"
"Документ.doc".to_slug_param(locale: :en) # => "doc"
"Документ.doc".to_slug_param(sep: '_', locale: :ru) # => "dokument_doc"
"Документ.doc".to_slug_param(sep: '_', locale: :en) # => "doc"

HOW TO TEST

TODO: https://github.com/TheRole/the_role_dev

MIT-LICENSE

Copyright (c) 2013-2023 [Ilya N.Zykin]

MIT BASED LICENSE