Merge pull request #5597 from thetimbanks/add_array_connector_param
Merge pull request 5597
This commit is contained in:
commit
7044549ae1
|
@ -208,7 +208,7 @@ common tasks easier.
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="name"><strong>Array to Sentence</strong></p>
|
<p class="name"><strong>Array to Sentence</strong></p>
|
||||||
<p>Convert an array into a sentence. Useful for listing tags.</p>
|
<p>Convert an array into a sentence. Useful for listing tags. Optional argument for connector.</p>
|
||||||
</td>
|
</td>
|
||||||
<td class="align-center">
|
<td class="align-center">
|
||||||
<p>
|
<p>
|
||||||
|
@ -217,6 +217,12 @@ common tasks easier.
|
||||||
<p>
|
<p>
|
||||||
<code class="output">foo, bar, and baz</code>
|
<code class="output">foo, bar, and baz</code>
|
||||||
</p>
|
</p>
|
||||||
|
<p>
|
||||||
|
<code class="filter">{% raw %}{{ page.tags | array_to_sentence_string: 'or' }}{% endraw %}</code>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<code class="output">foo, bar, or baz</code>
|
||||||
|
</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -175,6 +175,7 @@ module Jekyll
|
||||||
# word "and" for the last one.
|
# word "and" for the last one.
|
||||||
#
|
#
|
||||||
# array - The Array of Strings to join.
|
# array - The Array of Strings to join.
|
||||||
|
# connector - Word used to connect the last 2 items in the array
|
||||||
#
|
#
|
||||||
# Examples
|
# Examples
|
||||||
#
|
#
|
||||||
|
@ -182,8 +183,7 @@ module Jekyll
|
||||||
# # => "apples, oranges, and grapes"
|
# # => "apples, oranges, and grapes"
|
||||||
#
|
#
|
||||||
# Returns the formatted String.
|
# Returns the formatted String.
|
||||||
def array_to_sentence_string(array)
|
def array_to_sentence_string(array, connector = "and")
|
||||||
connector = "and"
|
|
||||||
case array.length
|
case array.length
|
||||||
when 0
|
when 0
|
||||||
""
|
""
|
||||||
|
|
|
@ -143,6 +143,11 @@ class TestFilters < JekyllUnitTest
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
should "convert array to sentence string with different connector" do
|
||||||
|
assert_equal "1 or 2", @filter.array_to_sentence_string([1, 2], "or")
|
||||||
|
assert_equal "1, 2, 3, or 4", @filter.array_to_sentence_string([1, 2, 3, 4], "or")
|
||||||
|
end
|
||||||
|
|
||||||
context "normalize_whitespace filter" do
|
context "normalize_whitespace filter" do
|
||||||
should "replace newlines with a space" do
|
should "replace newlines with a space" do
|
||||||
assert_equal "a b", @filter.normalize_whitespace("a\nb")
|
assert_equal "a b", @filter.normalize_whitespace("a\nb")
|
||||||
|
|
Loading…
Reference in New Issue