Module: Gitlab::Utils::Markdown
- Included in:
- Banzai::Filter::TableOfContentsFilter
- Defined in:
- lib/gitlab/utils/markdown.rb
Constant Summary collapse
- PUNCTUATION_REGEXP =
/[^\p{Word}\- ]/u.freeze
- PRODUCT_SUFFIX =
/\s*\**\((core|starter|premium|ultimate|free|bronze|silver|gold)(\s+(only|self|sass))?\)\**/.freeze
Instance Method Summary collapse
Instance Method Details
#string_to_anchor(string) ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/gitlab/utils/markdown.rb', line 9 def string_to_anchor(string) string .strip .downcase .gsub(PRODUCT_SUFFIX, '') .gsub(PUNCTUATION_REGEXP, '') # remove punctuation .tr(' ', '-') # replace spaces with dash .squeeze('-') # replace multiple dashes with one .gsub(/\A(\d+)\z/, 'anchor-\1') # digits-only hrefs conflict with issue refs end |