marked-conductor 1.0.14 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/README.md +18 -5
- data/html/Array.html +1 -1
- data/html/Conductor/Command.html +1 -1
- data/html/Conductor/Condition.html +1 -1
- data/html/Conductor/Config.html +1 -1
- data/html/Conductor/Env.html +1 -1
- data/html/Conductor/Script.html +1 -1
- data/html/Conductor.html +2 -2
- data/html/FalseClass.html +1 -1
- data/html/Filter.html +29 -5
- data/html/Hash.html +1 -1
- data/html/Object.html +1 -1
- data/html/README_rdoc.html +1 -1
- data/html/String.html +316 -31
- data/html/TrueClass.html +1 -1
- data/html/created.rid +6 -5
- data/html/index.html +5 -1
- data/html/js/navigation.js.gz +0 -0
- data/html/js/search_index.js +1 -1
- data/html/js/search_index.js.gz +0 -0
- data/html/js/searcher.js.gz +0 -0
- data/html/table_of_contents.html +85 -19
- data/lib/conductor/filter.rb +129 -2
- data/lib/conductor/string.rb +22 -0
- data/lib/conductor/version.rb +1 -1
- data/lib/conductor/yui-compressor.rb +230 -0
- data/lib/conductor.rb +1 -0
- data/src/_README.md +18 -5
- data/test.md +14 -0
- data/test.sh +4 -7
- metadata +4 -2
data/html/TrueClass.html
CHANGED
@@ -132,7 +132,7 @@
|
|
132
132
|
|
133
133
|
<footer id="validator-badges" role="contentinfo">
|
134
134
|
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
135
|
-
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.
|
135
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
|
136
136
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
137
137
|
</footer>
|
138
138
|
|
data/html/created.rid
CHANGED
@@ -1,15 +1,16 @@
|
|
1
|
-
|
1
|
+
Fri, 28 Jun 2024 12:41:02 -0500
|
2
2
|
README.rdoc Sun, 28 Apr 2024 13:21:34 -0500
|
3
|
-
lib/conductor.rb Fri,
|
3
|
+
lib/conductor.rb Fri, 28 Jun 2024 12:29:13 -0500
|
4
4
|
lib/conductor/array.rb Sat, 27 Apr 2024 11:54:28 -0500
|
5
5
|
lib/conductor/boolean.rb Thu, 25 Apr 2024 14:25:59 -0500
|
6
6
|
lib/conductor/command.rb Sat, 27 Apr 2024 11:54:28 -0500
|
7
7
|
lib/conductor/condition.rb Mon, 29 Apr 2024 09:19:15 -0500
|
8
8
|
lib/conductor/config.rb Sat, 27 Apr 2024 11:54:28 -0500
|
9
9
|
lib/conductor/env.rb Mon, 29 Apr 2024 09:28:21 -0500
|
10
|
-
lib/conductor/filter.rb
|
10
|
+
lib/conductor/filter.rb Fri, 28 Jun 2024 12:35:15 -0500
|
11
11
|
lib/conductor/hash.rb Sat, 27 Apr 2024 11:54:28 -0500
|
12
12
|
lib/conductor/script.rb Sun, 28 Apr 2024 16:21:49 -0500
|
13
|
-
lib/conductor/string.rb Sat, 25 May 2024
|
14
|
-
lib/conductor/version.rb
|
13
|
+
lib/conductor/string.rb Sat, 25 May 2024 10:58:38 -0500
|
14
|
+
lib/conductor/version.rb Sat, 25 May 2024 11:14:29 -0500
|
15
|
+
lib/conductor/yui-compressor.rb Fri, 28 Jun 2024 12:35:00 -0500
|
15
16
|
bin/conductor Fri, 24 May 2024 12:39:06 -0500
|
data/html/index.html
CHANGED
@@ -83,6 +83,10 @@
|
|
83
83
|
<li><code><a href="./Object.html">Object</a></code>
|
84
84
|
<li><code><a href="./String.html">String</a></code>
|
85
85
|
<li><code><a href="./TrueClass.html">TrueClass</a></code>
|
86
|
+
<li><details><summary><code><a href="./YuiCompressor.html">YuiCompressor</a></code></summary>
|
87
|
+
<ul class="link-list">
|
88
|
+
<li><code><a href="./YuiCompressor/Yui.html">Yui</a></code>
|
89
|
+
</ul></details>
|
86
90
|
</div>
|
87
91
|
|
88
92
|
</div>
|
@@ -100,7 +104,7 @@
|
|
100
104
|
|
101
105
|
<footer id="validator-badges" role="contentinfo">
|
102
106
|
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
103
|
-
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.
|
107
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
|
104
108
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
105
109
|
</footer>
|
106
110
|
|
data/html/js/navigation.js.gz
CHANGED
Binary file
|
data/html/js/search_index.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
var search_data = {"index":{"searchIndex":["array","conductor","command","condition","config","env","script","falseclass","filter","hash","object","string","trueclass","add_comment()","add_mmd()","add_yaml()","append()","args=()","args=()","bool?()","bool?()","bool?()","bool_to_symbol()","clean_condition()","conduct()","create_config()","date?()","delete_meta()","delete_mmd()","delete_yaml()","env()","execute_track()","get_title()","has_comment?()","insert_script()","insert_title()","load_test_env()","meta?()","meta_insert_point()","meta_type()","new()","new()","new()","new()","new()","normalize_filter()","number?()","operator_to_symbol()","parse_condition()","path=()","path=()","process()","replace()","replace_all()","run()","run()","sample_config()","set_meta()","split_booleans()","split_condition()","stdin()","strip_meta()","strip_time()","symbolize_keys()","symbolize_keys()","symbolize_keys!()","symbolize_keys!()","test_condition()","test_meta()","test_operator()","test_pandoc()","test_string()","test_tree()","test_truthy()","test_type()","test_yaml()","time?()","title_from_slug()","titleize()","to_bool()","to_bool!()","to_date()","to_day()","to_pattern()","to_rx()","to_s()","true?()","yaml?()","readme"],"longSearchIndex":["array","conductor","conductor::command","conductor::condition","conductor::config","conductor::env","conductor::script","falseclass","filter","hash","object","string","trueclass","string#add_comment()","string#add_mmd()","string#add_yaml()","string#append()","conductor::command#args=()","conductor::script#args=()","falseclass#bool?()","string#bool?()","trueclass#bool?()","string#bool_to_symbol()","object#clean_condition()","conductor::conduct()","conductor#create_config()","string#date?()","string#delete_meta()","string#delete_mmd()","string#delete_yaml()","conductor::env::env()","conductor::execute_track()","string#get_title()","string#has_comment?()","string#insert_script()","string#insert_title()","conductor::env::load_test_env()","string#meta?()","string#meta_insert_point()","string#meta_type()","conductor::command::new()","conductor::condition::new()","conductor::config::new()","conductor::script::new()","filter::new()","string#normalize_filter()","string#number?()","conductor::condition#operator_to_symbol()","conductor::condition#parse_condition()","conductor::command#path=()","conductor::script#path=()","filter#process()","string#replace()","string#replace_all()","conductor::command#run()","conductor::script#run()","conductor#sample_config()","string#set_meta()","conductor::condition#split_booleans()","conductor::condition#split_condition()","conductor::stdin()","string#strip_meta()","string#strip_time()","array#symbolize_keys()","hash#symbolize_keys()","array#symbolize_keys!()","hash#symbolize_keys!()","conductor::condition#test_condition()","conductor::condition#test_meta()","conductor::condition#test_operator()","conductor::condition#test_pandoc()","conductor::condition#test_string()","conductor::condition#test_tree()","conductor::condition#test_truthy()","conductor::condition#test_type()","conductor::condition#test_yaml()","string#time?()","string#title_from_slug()","string#titleize()","string#to_bool()","string#to_bool!()","string#to_date()","string#to_day()","string#to_pattern()","string#to_rx()","conductor::env::to_s()","conductor::condition#true?()","string#yaml?()",""],"info":[["Array","","Array.html","",""],["Conductor","","Conductor.html","","<p>Main Conductor class\n"],["Conductor::Command","","Conductor/Command.html","","<p>Command runner\n"],["Conductor::Condition","","Conductor/Condition.html","",""],["Conductor::Config","","Conductor/Config.html","","<p>Configuration methods\n"],["Conductor::Env","","Conductor/Env.html","","<p>Environment variables\n"],["Conductor::Script","","Conductor/Script.html","","<p>Script runner\n"],["FalseClass","","FalseClass.html","","<p>False class\n"],["Filter","","Filter.html","","<p>String filtering\n"],["Hash","","Hash.html","",""],["Object","","Object.html","",""],["String","","String.html","","<p>String helpers\n<p>String helpers\n"],["TrueClass","","TrueClass.html","","<p>True class\n"],["add_comment","String","String.html#method-i-add_comment","(key, value)",""],["add_mmd","String","String.html#method-i-add_mmd","(key, value)",""],["add_yaml","String","String.html#method-i-add_yaml","(key, value)",""],["append","String","String.html#method-i-append","(string)",""],["args=","Conductor::Command","Conductor/Command.html#method-i-args-3D","(array)",""],["args=","Conductor::Script","Conductor/Script.html#method-i-args-3D","(array)","<p>Set the args array\n<p>@param array The array\n"],["bool?","FalseClass","FalseClass.html#method-i-bool-3F","()",""],["bool?","String","String.html#method-i-bool-3F","()","<p>Test if a string is a boolean\n<p>@return [Boolean] test result\n"],["bool?","TrueClass","TrueClass.html#method-i-bool-3F","()",""],["bool_to_symbol","String","String.html#method-i-bool_to_symbol","()","<p>Convert a string boolean to symbol\n<p>@return [Symbol] symbolized version\n"],["clean_condition","Object","Object.html#method-i-clean_condition","(condition)","<p>Clean up conditions for output\n<p>@param condition The condition\n"],["conduct","Conductor","Conductor.html#method-c-conduct","(tracks, res = nil, condition = nil)","<p>Main function to parse conditions and\n\n<pre>execute actions. Executes recursively for\nsub-tracks.</pre>\n<p>@param …\n"],["create_config","Conductor","Conductor.html#method-i-create_config","(config_file)",""],["date?","String","String.html#method-i-date-3F","()","<p>Test a string to see if it’s a UTC date\n<p>@return [Boolean] test result\n"],["delete_meta","String","String.html#method-i-delete_meta","(key)",""],["delete_mmd","String","String.html#method-i-delete_mmd","(key)",""],["delete_yaml","String","String.html#method-i-delete_yaml","(key)",""],["env","Conductor::Env","Conductor/Env.html#method-c-env","()","<p>Define @env using Marked environment variables\n"],["execute_track","Conductor","Conductor.html#method-c-execute_track","(track)","<p>Execute commands/scripts in the track\n<p>@param track The track\n<p>@return Resulting STDOUT output …\n"],["get_title","String","String.html#method-i-get_title","()",""],["has_comment?","String","String.html#method-i-has_comment-3F","(key)",""],["insert_script","String","String.html#method-i-insert_script","(path)",""],["insert_title","String","String.html#method-i-insert_title","()",""],["load_test_env","Conductor::Env","Conductor/Env.html#method-c-load_test_env","()","<p>Loads a test environment.\n"],["meta?","String","String.html#method-i-meta-3F","()","<p>Test if a string starts with MMD metadata\n<p>@return [Boolean] test result\n"],["meta_insert_point","String","String.html#method-i-meta_insert_point","()",""],["meta_type","String","String.html#method-i-meta_type","()",""],["new","Conductor::Command","Conductor/Command.html#method-c-new","(command)",""],["new","Conductor::Condition","Conductor/Condition.html#method-c-new","(condition)","<p>Initializes the given condition.\n<p>@param condition The condition\n"],["new","Conductor::Config","Conductor/Config.html#method-c-new","()",""],["new","Conductor::Script","Conductor/Script.html#method-c-new","(script)","<p>Initializes the given script.\n<p>@param script The script/path\n"],["new","Filter","Filter.html#method-c-new","(filter)",""],["normalize_filter","String","String.html#method-i-normalize_filter","()",""],["number?","String","String.html#method-i-number-3F","()","<p>Test if a string is a number\n<p>@return [Boolean] test result\n"],["operator_to_symbol","Conductor::Condition","Conductor/Condition.html#method-i-operator_to_symbol","(operator)",""],["parse_condition","Conductor::Condition","Conductor/Condition.html#method-i-parse_condition","()",""],["path=","Conductor::Command","Conductor/Command.html#method-i-path-3D","(path)",""],["path=","Conductor::Script","Conductor/Script.html#method-i-path-3D","(path)","<p>Set script path, automatically expands/tests\n<p>@param path The path\n"],["process","Filter","Filter.html#method-i-process","()",""],["replace","String","String.html#method-i-replace","(regex, pattern)",""],["replace_all","String","String.html#method-i-replace_all","(regex, pattern)",""],["run","Conductor::Command","Conductor/Command.html#method-i-run","()",""],["run","Conductor::Script","Conductor/Script.html#method-i-run","()","<p>Execute the script\n<p>@return [String] script results (STDOUT)\n"],["sample_config","Conductor","Conductor.html#method-i-sample_config","()",""],["set_meta","String","String.html#method-i-set_meta","(key, value, style: :comment)",""],["split_booleans","Conductor::Condition","Conductor/Condition.html#method-i-split_booleans","(condition)","<p>Splits booleans and tests components.\n<p>@param condition The condition to test\n<p>@return [Boolean] …\n"],["split_condition","Conductor::Condition","Conductor/Condition.html#method-i-split_condition","(condition)","<p>Splits a natural language condition.\n<p>@param condition The condition @return [Array] Value, value …\n"],["stdin","Conductor","Conductor.html#method-c-stdin","()",""],["strip_meta","String","String.html#method-i-strip_meta","()",""],["strip_time","String","String.html#method-i-strip_time","()","<p>Remove time from string\n<p>@return [String] string with time removed\n"],["symbolize_keys","Array","Array.html#method-i-symbolize_keys","()",""],["symbolize_keys","Hash","Hash.html#method-i-symbolize_keys","()",""],["symbolize_keys!","Array","Array.html#method-i-symbolize_keys-21","()",""],["symbolize_keys!","Hash","Hash.html#method-i-symbolize_keys-21","()",""],["test_condition","Conductor::Condition","Conductor/Condition.html#method-i-test_condition","(condition)",""],["test_meta","Conductor::Condition","Conductor/Condition.html#method-i-test_meta","(content, value, key, operator)","<p>Test for MultiMarkdown metadata,\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">optionally</span> <span class=\"ruby-identifier\">key</span> <span class=\"ruby-keyword\">and</span> <span class=\"ruby-identifier\">value</span>\n</pre>\n<p>@param content [String] The text content …\n"],["test_operator","Conductor::Condition","Conductor/Condition.html#method-i-test_operator","(value1, value2, operator)","<p>Test operators\n<p>@param value1 Value @param value2 Value to test @param operator …\n"],["test_pandoc","Conductor::Condition","Conductor/Condition.html#method-i-test_pandoc","(content, operator)",""],["test_string","Conductor::Condition","Conductor/Condition.html#method-i-test_string","(val1, val2, operator)","<p>Compare a string based on operator\n<p>@param val1 The string to test against @param val2 …\n"],["test_tree","Conductor::Condition","Conductor/Condition.html#method-i-test_tree","(origin, value, operator)","<p>Test for the existince of a\n\n<pre>file/directory in the parent tree</pre>\n<p>@param origin Starting directory …\n"],["test_truthy","Conductor::Condition","Conductor/Condition.html#method-i-test_truthy","(value1, value2, operator)","<p>Test “truthiness”\n<p>@param value1 Value to test against @param value2 Value to …\n"],["test_type","Conductor::Condition","Conductor/Condition.html#method-i-test_type","(val1, val2, operator)","<p>Test for type of value\n<p>@param val1 value @param val2 value to test against @param …\n"],["test_yaml","Conductor::Condition","Conductor/Condition.html#method-i-test_yaml","(content, value, key, operator)","<p>Test for presence of yaml, optionall for\n\n<pre>a key, optionally for a key's value</pre>\n<p>@param content Text …\n"],["time?","String","String.html#method-i-time-3F","()","<p>Test a string to see if it includes a time\n<p>@return [Boolean] test result\n"],["title_from_slug","String","String.html#method-i-title_from_slug","()",""],["titleize","String","String.html#method-i-titleize","()","<p>Titlecase a string\n<p>@return Titleized string\n"],["to_bool","String","String.html#method-i-to_bool","()","<p>Returns a bool representation of the string.\n<p>@return [Boolean] Bool representation of the object. …\n"],["to_bool!","String","String.html#method-i-to_bool-21","()","<p>Destructive version of #to_bool\n<p>@see #to_bool\n"],["to_date","String","String.html#method-i-to_date","()","<p>Convert a natural language string to a Date\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">object</span>\n</pre>\n<p>@return [Date] Resulting Date object\n"],["to_day","String","String.html#method-i-to_day","(time = :end)",""],["to_pattern","String","String.html#method-i-to_pattern","()",""],["to_rx","String","String.html#method-i-to_rx","()",""],["to_s","Conductor::Env","Conductor/Env.html#method-c-to_s","()","<p>env to string\n<p>@return [String] shell-compatible string representation of @env\n"],["true?","Conductor::Condition","Conductor/Condition.html#method-i-true-3F","()","<p>Tests condition\n<p>@return [Boolean] test result\n"],["yaml?","String","String.html#method-i-yaml-3F","()","<p>Test if string starts with YAML\n<p>@return [Boolean] test result\n"],["README","","README_rdoc.html","","<p>Marked Conductor\n<p>A command line tool that functions as a custom processor handler for Marked 2.\n"]]}}
|
1
|
+
var search_data = {"index":{"searchIndex":["array","conductor","command","condition","config","env","script","falseclass","filter","hash","object","string","trueclass","yuicompressor","yui","add_comment()","add_mmd()","add_yaml()","append()","args=()","args=()","bool?()","bool?()","bool?()","bool_to_symbol()","clean_condition()","compress()","conduct()","create_config()","date?()","delete_meta()","delete_mmd()","delete_yaml()","env()","execute_track()","first_h1()","first_h2()","get_title()","has_comment?()","insert_css()","insert_file()","insert_script()","insert_title()","insert_toc()","load_test_env()","meta?()","meta_insert_point()","meta_type()","new()","new()","new()","new()","new()","new()","normalize_filter()","normalize_include_type()","normalize_position()","number?()","operator_to_symbol()","parse_condition()","path=()","path=()","process()","process_comments_and_strings()","replace()","replace_all()","restore_preserved_comments_and_strings()","run()","run()","sample_config()","set_meta()","split_booleans()","split_condition()","stdin()","strip_meta()","strip_time()","symbolize_keys()","symbolize_keys()","symbolize_keys!()","symbolize_keys!()","test_condition()","test_meta()","test_operator()","test_pandoc()","test_string()","test_tree()","test_truthy()","test_type()","test_yaml()","time?()","title_from_slug()","titleize()","to_bool()","to_bool!()","to_date()","to_day()","to_pattern()","to_rx()","to_s()","true?()","wrap_style()","yaml?()","readme"],"longSearchIndex":["array","conductor","conductor::command","conductor::condition","conductor::config","conductor::env","conductor::script","falseclass","filter","hash","object","string","trueclass","yuicompressor","yuicompressor::yui","string#add_comment()","string#add_mmd()","string#add_yaml()","string#append()","conductor::command#args=()","conductor::script#args=()","falseclass#bool?()","string#bool?()","trueclass#bool?()","string#bool_to_symbol()","object#clean_condition()","yuicompressor::yui#compress()","conductor::conduct()","conductor#create_config()","string#date?()","string#delete_meta()","string#delete_mmd()","string#delete_yaml()","conductor::env::env()","conductor::execute_track()","string#first_h1()","string#first_h2()","string#get_title()","string#has_comment?()","string#insert_css()","string#insert_file()","string#insert_script()","string#insert_title()","string#insert_toc()","conductor::env::load_test_env()","string#meta?()","string#meta_insert_point()","string#meta_type()","conductor::command::new()","conductor::condition::new()","conductor::config::new()","conductor::script::new()","filter::new()","yuicompressor::yui::new()","string#normalize_filter()","string#normalize_include_type()","string#normalize_position()","string#number?()","conductor::condition#operator_to_symbol()","conductor::condition#parse_condition()","conductor::command#path=()","conductor::script#path=()","filter#process()","yuicompressor::yui#process_comments_and_strings()","string#replace()","string#replace_all()","yuicompressor::yui#restore_preserved_comments_and_strings()","conductor::command#run()","conductor::script#run()","conductor#sample_config()","string#set_meta()","conductor::condition#split_booleans()","conductor::condition#split_condition()","conductor::stdin()","string#strip_meta()","string#strip_time()","array#symbolize_keys()","hash#symbolize_keys()","array#symbolize_keys!()","hash#symbolize_keys!()","conductor::condition#test_condition()","conductor::condition#test_meta()","conductor::condition#test_operator()","conductor::condition#test_pandoc()","conductor::condition#test_string()","conductor::condition#test_tree()","conductor::condition#test_truthy()","conductor::condition#test_type()","conductor::condition#test_yaml()","string#time?()","string#title_from_slug()","string#titleize()","string#to_bool()","string#to_bool!()","string#to_date()","string#to_day()","string#to_pattern()","string#to_rx()","conductor::env::to_s()","conductor::condition#true?()","string#wrap_style()","string#yaml?()",""],"info":[["Array","","Array.html","",""],["Conductor","","Conductor.html","","<p>Main Conductor class\n"],["Conductor::Command","","Conductor/Command.html","","<p>Command runner\n"],["Conductor::Condition","","Conductor/Condition.html","",""],["Conductor::Config","","Conductor/Config.html","","<p>Configuration methods\n"],["Conductor::Env","","Conductor/Env.html","","<p>Environment variables\n"],["Conductor::Script","","Conductor/Script.html","","<p>Script runner\n"],["FalseClass","","FalseClass.html","","<p>False class\n"],["Filter","","Filter.html","","<p>String filtering\n"],["Hash","","Hash.html","",""],["Object","","Object.html","",""],["String","","String.html","","<p>String helpers\n<p>String helpers\n"],["TrueClass","","TrueClass.html","","<p>True class\n"],["YuiCompressor","","YuiCompressor.html","","<p>This is a Ruby port of the YUI CSS compressor See LICENSE for license information\n"],["YuiCompressor::Yui","","YuiCompressor/Yui.html","","<p>Compress CSS rules using a variety of techniques\n"],["add_comment","String","String.html#method-i-add_comment","(key, value)",""],["add_mmd","String","String.html#method-i-add_mmd","(key, value)",""],["add_yaml","String","String.html#method-i-add_yaml","(key, value)",""],["append","String","String.html#method-i-append","(string)",""],["args=","Conductor::Command","Conductor/Command.html#method-i-args-3D","(array)",""],["args=","Conductor::Script","Conductor/Script.html#method-i-args-3D","(array)","<p>Set the args array\n<p>@param array The array\n"],["bool?","FalseClass","FalseClass.html#method-i-bool-3F","()",""],["bool?","String","String.html#method-i-bool-3F","()","<p>Test if a string is a boolean\n<p>@return [Boolean] test result\n"],["bool?","TrueClass","TrueClass.html#method-i-bool-3F","()",""],["bool_to_symbol","String","String.html#method-i-bool_to_symbol","()","<p>Convert a string boolean to symbol\n<p>@return [Symbol] symbolized version\n"],["clean_condition","Object","Object.html#method-i-clean_condition","(condition)","<p>Clean up conditions for output\n<p>@param condition The condition\n"],["compress","YuiCompressor::Yui","YuiCompressor/Yui.html#method-i-compress","(css, line_length = 0)",""],["conduct","Conductor","Conductor.html#method-c-conduct","(tracks, res = nil, condition = nil)","<p>Main function to parse conditions and\n\n<pre>execute actions. Executes recursively for\nsub-tracks.</pre>\n<p>@param …\n"],["create_config","Conductor","Conductor.html#method-i-create_config","(config_file)",""],["date?","String","String.html#method-i-date-3F","()","<p>Test a string to see if it’s a UTC date\n<p>@return [Boolean] test result\n"],["delete_meta","String","String.html#method-i-delete_meta","(key)",""],["delete_mmd","String","String.html#method-i-delete_mmd","(key)",""],["delete_yaml","String","String.html#method-i-delete_yaml","(key)",""],["env","Conductor::Env","Conductor/Env.html#method-c-env","()","<p>Define @env using Marked environment variables\n"],["execute_track","Conductor","Conductor.html#method-c-execute_track","(track)","<p>Execute commands/scripts in the track\n<p>@param track The track\n<p>@return Resulting STDOUT output …\n"],["first_h1","String","String.html#method-i-first_h1","()",""],["first_h2","String","String.html#method-i-first_h2","()",""],["get_title","String","String.html#method-i-get_title","()",""],["has_comment?","String","String.html#method-i-has_comment-3F","(key)",""],["insert_css","String","String.html#method-i-insert_css","(path)",""],["insert_file","String","String.html#method-i-insert_file","(path, type = :file, position = :end)",""],["insert_script","String","String.html#method-i-insert_script","(path)",""],["insert_title","String","String.html#method-i-insert_title","()",""],["insert_toc","String","String.html#method-i-insert_toc","(max = nil, after = :h1)",""],["load_test_env","Conductor::Env","Conductor/Env.html#method-c-load_test_env","()","<p>Loads a test environment.\n"],["meta?","String","String.html#method-i-meta-3F","()","<p>Test if a string starts with MMD metadata\n<p>@return [Boolean] test result\n"],["meta_insert_point","String","String.html#method-i-meta_insert_point","()",""],["meta_type","String","String.html#method-i-meta_type","()",""],["new","Conductor::Command","Conductor/Command.html#method-c-new","(command)",""],["new","Conductor::Condition","Conductor/Condition.html#method-c-new","(condition)","<p>Initializes the given condition.\n<p>@param condition The condition\n"],["new","Conductor::Config","Conductor/Config.html#method-c-new","()",""],["new","Conductor::Script","Conductor/Script.html#method-c-new","(script)","<p>Initializes the given script.\n<p>@param script The script/path\n"],["new","Filter","Filter.html#method-c-new","(filter)",""],["new","YuiCompressor::Yui","YuiCompressor/Yui.html#method-c-new","()",""],["normalize_filter","String","String.html#method-i-normalize_filter","()",""],["normalize_include_type","String","String.html#method-i-normalize_include_type","()",""],["normalize_position","String","String.html#method-i-normalize_position","()",""],["number?","String","String.html#method-i-number-3F","()","<p>Test if a string is a number\n<p>@return [Boolean] test result\n"],["operator_to_symbol","Conductor::Condition","Conductor/Condition.html#method-i-operator_to_symbol","(operator)",""],["parse_condition","Conductor::Condition","Conductor/Condition.html#method-i-parse_condition","()",""],["path=","Conductor::Command","Conductor/Command.html#method-i-path-3D","(path)",""],["path=","Conductor::Script","Conductor/Script.html#method-i-path-3D","(path)","<p>Set script path, automatically expands/tests\n<p>@param path The path\n"],["process","Filter","Filter.html#method-i-process","()",""],["process_comments_and_strings","YuiCompressor::Yui","YuiCompressor/Yui.html#method-i-process_comments_and_strings","(css_text)",""],["replace","String","String.html#method-i-replace","(regex, pattern)",""],["replace_all","String","String.html#method-i-replace_all","(regex, pattern)",""],["restore_preserved_comments_and_strings","YuiCompressor::Yui","YuiCompressor/Yui.html#method-i-restore_preserved_comments_and_strings","(clean_css)",""],["run","Conductor::Command","Conductor/Command.html#method-i-run","()",""],["run","Conductor::Script","Conductor/Script.html#method-i-run","()","<p>Execute the script\n<p>@return [String] script results (STDOUT)\n"],["sample_config","Conductor","Conductor.html#method-i-sample_config","()",""],["set_meta","String","String.html#method-i-set_meta","(key, value, style: :comment)",""],["split_booleans","Conductor::Condition","Conductor/Condition.html#method-i-split_booleans","(condition)","<p>Splits booleans and tests components.\n<p>@param condition The condition to test\n<p>@return [Boolean] …\n"],["split_condition","Conductor::Condition","Conductor/Condition.html#method-i-split_condition","(condition)","<p>Splits a natural language condition.\n<p>@param condition The condition @return [Array] Value, value …\n"],["stdin","Conductor","Conductor.html#method-c-stdin","()",""],["strip_meta","String","String.html#method-i-strip_meta","()",""],["strip_time","String","String.html#method-i-strip_time","()","<p>Remove time from string\n<p>@return [String] string with time removed\n"],["symbolize_keys","Array","Array.html#method-i-symbolize_keys","()",""],["symbolize_keys","Hash","Hash.html#method-i-symbolize_keys","()",""],["symbolize_keys!","Array","Array.html#method-i-symbolize_keys-21","()",""],["symbolize_keys!","Hash","Hash.html#method-i-symbolize_keys-21","()",""],["test_condition","Conductor::Condition","Conductor/Condition.html#method-i-test_condition","(condition)",""],["test_meta","Conductor::Condition","Conductor/Condition.html#method-i-test_meta","(content, value, key, operator)","<p>Test for MultiMarkdown metadata,\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">optionally</span> <span class=\"ruby-identifier\">key</span> <span class=\"ruby-keyword\">and</span> <span class=\"ruby-identifier\">value</span>\n</pre>\n<p>@param content [String] The text content …\n"],["test_operator","Conductor::Condition","Conductor/Condition.html#method-i-test_operator","(value1, value2, operator)","<p>Test operators\n<p>@param value1 Value @param value2 Value to test @param operator …\n"],["test_pandoc","Conductor::Condition","Conductor/Condition.html#method-i-test_pandoc","(content, operator)",""],["test_string","Conductor::Condition","Conductor/Condition.html#method-i-test_string","(val1, val2, operator)","<p>Compare a string based on operator\n<p>@param val1 The string to test against @param val2 …\n"],["test_tree","Conductor::Condition","Conductor/Condition.html#method-i-test_tree","(origin, value, operator)","<p>Test for the existince of a\n\n<pre>file/directory in the parent tree</pre>\n<p>@param origin Starting directory …\n"],["test_truthy","Conductor::Condition","Conductor/Condition.html#method-i-test_truthy","(value1, value2, operator)","<p>Test “truthiness”\n<p>@param value1 Value to test against @param value2 Value to …\n"],["test_type","Conductor::Condition","Conductor/Condition.html#method-i-test_type","(val1, val2, operator)","<p>Test for type of value\n<p>@param val1 value @param val2 value to test against @param …\n"],["test_yaml","Conductor::Condition","Conductor/Condition.html#method-i-test_yaml","(content, value, key, operator)","<p>Test for presence of yaml, optionall for\n\n<pre>a key, optionally for a key's value</pre>\n<p>@param content Text …\n"],["time?","String","String.html#method-i-time-3F","()","<p>Test a string to see if it includes a time\n<p>@return [Boolean] test result\n"],["title_from_slug","String","String.html#method-i-title_from_slug","()",""],["titleize","String","String.html#method-i-titleize","()","<p>Titlecase a string\n<p>@return Titleized string\n"],["to_bool","String","String.html#method-i-to_bool","()","<p>Returns a bool representation of the string.\n<p>@return [Boolean] Bool representation of the object. …\n"],["to_bool!","String","String.html#method-i-to_bool-21","()","<p>Destructive version of #to_bool\n<p>@see #to_bool\n"],["to_date","String","String.html#method-i-to_date","()","<p>Convert a natural language string to a Date\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">object</span>\n</pre>\n<p>@return [Date] Resulting Date object\n"],["to_day","String","String.html#method-i-to_day","(time = :end)",""],["to_pattern","String","String.html#method-i-to_pattern","()",""],["to_rx","String","String.html#method-i-to_rx","()",""],["to_s","Conductor::Env","Conductor/Env.html#method-c-to_s","()","<p>env to string\n<p>@return [String] shell-compatible string representation of @env\n"],["true?","Conductor::Condition","Conductor/Condition.html#method-i-true-3F","()","<p>Tests condition\n<p>@return [Boolean] test result\n"],["wrap_style","String","String.html#method-i-wrap_style","()",""],["yaml?","String","String.html#method-i-yaml-3F","()","<p>Test if string starts with YAML\n<p>@return [Boolean] test result\n"],["README","","README_rdoc.html","","<p>Marked Conductor\n<p>A command line tool that functions as a custom processor handler for Marked 2.\n"]]}}
|
data/html/js/search_index.js.gz
CHANGED
Binary file
|
data/html/js/searcher.js.gz
CHANGED
Binary file
|
data/html/table_of_contents.html
CHANGED
@@ -77,6 +77,12 @@
|
|
77
77
|
<li class="class">
|
78
78
|
<a href="TrueClass.html">TrueClass</a>
|
79
79
|
</li>
|
80
|
+
<li class="module">
|
81
|
+
<a href="YuiCompressor.html">YuiCompressor</a>
|
82
|
+
</li>
|
83
|
+
<li class="class">
|
84
|
+
<a href="YuiCompressor/Yui.html">YuiCompressor::Yui</a>
|
85
|
+
</li>
|
80
86
|
</ul>
|
81
87
|
|
82
88
|
<h2 id="methods">Methods</h2>
|
@@ -103,9 +109,9 @@
|
|
103
109
|
<span class="container">Conductor::Env</span>
|
104
110
|
|
105
111
|
<li class="method">
|
106
|
-
<a href="
|
112
|
+
<a href="YuiCompressor/Yui.html#method-c-new">::new</a>
|
107
113
|
—
|
108
|
-
<span class="container">
|
114
|
+
<span class="container">YuiCompressor::Yui</span>
|
109
115
|
|
110
116
|
<li class="method">
|
111
117
|
<a href="Conductor/Command.html#method-c-new">::new</a>
|
@@ -113,20 +119,25 @@
|
|
113
119
|
<span class="container">Conductor::Command</span>
|
114
120
|
|
115
121
|
<li class="method">
|
116
|
-
<a href="Conductor/
|
122
|
+
<a href="Conductor/Config.html#method-c-new">::new</a>
|
117
123
|
—
|
118
|
-
<span class="container">Conductor::
|
124
|
+
<span class="container">Conductor::Config</span>
|
119
125
|
|
120
126
|
<li class="method">
|
121
|
-
<a href="Conductor/
|
127
|
+
<a href="Conductor/Condition.html#method-c-new">::new</a>
|
122
128
|
—
|
123
|
-
<span class="container">Conductor::
|
129
|
+
<span class="container">Conductor::Condition</span>
|
124
130
|
|
125
131
|
<li class="method">
|
126
132
|
<a href="Filter.html#method-c-new">::new</a>
|
127
133
|
—
|
128
134
|
<span class="container">Filter</span>
|
129
135
|
|
136
|
+
<li class="method">
|
137
|
+
<a href="Conductor/Script.html#method-c-new">::new</a>
|
138
|
+
—
|
139
|
+
<span class="container">Conductor::Script</span>
|
140
|
+
|
130
141
|
<li class="method">
|
131
142
|
<a href="Conductor.html#method-c-stdin">::stdin</a>
|
132
143
|
—
|
@@ -158,14 +169,14 @@
|
|
158
169
|
<span class="container">String</span>
|
159
170
|
|
160
171
|
<li class="method">
|
161
|
-
<a href="Conductor/
|
172
|
+
<a href="Conductor/Command.html#method-i-args-3D">#args=</a>
|
162
173
|
—
|
163
|
-
<span class="container">Conductor::
|
174
|
+
<span class="container">Conductor::Command</span>
|
164
175
|
|
165
176
|
<li class="method">
|
166
|
-
<a href="Conductor/
|
177
|
+
<a href="Conductor/Script.html#method-i-args-3D">#args=</a>
|
167
178
|
—
|
168
|
-
<span class="container">Conductor::
|
179
|
+
<span class="container">Conductor::Script</span>
|
169
180
|
|
170
181
|
<li class="method">
|
171
182
|
<a href="String.html#method-i-bool-3F">#bool?</a>
|
@@ -173,14 +184,14 @@
|
|
173
184
|
<span class="container">String</span>
|
174
185
|
|
175
186
|
<li class="method">
|
176
|
-
<a href="
|
187
|
+
<a href="TrueClass.html#method-i-bool-3F">#bool?</a>
|
177
188
|
—
|
178
|
-
<span class="container">
|
189
|
+
<span class="container">TrueClass</span>
|
179
190
|
|
180
191
|
<li class="method">
|
181
|
-
<a href="
|
192
|
+
<a href="FalseClass.html#method-i-bool-3F">#bool?</a>
|
182
193
|
—
|
183
|
-
<span class="container">
|
194
|
+
<span class="container">FalseClass</span>
|
184
195
|
|
185
196
|
<li class="method">
|
186
197
|
<a href="String.html#method-i-bool_to_symbol">#bool_to_symbol</a>
|
@@ -192,6 +203,11 @@
|
|
192
203
|
—
|
193
204
|
<span class="container">Object</span>
|
194
205
|
|
206
|
+
<li class="method">
|
207
|
+
<a href="YuiCompressor/Yui.html#method-i-compress">#compress</a>
|
208
|
+
—
|
209
|
+
<span class="container">YuiCompressor::Yui</span>
|
210
|
+
|
195
211
|
<li class="method">
|
196
212
|
<a href="Conductor.html#method-i-create_config">#create_config</a>
|
197
213
|
—
|
@@ -217,6 +233,16 @@
|
|
217
233
|
—
|
218
234
|
<span class="container">String</span>
|
219
235
|
|
236
|
+
<li class="method">
|
237
|
+
<a href="String.html#method-i-first_h1">#first_h1</a>
|
238
|
+
—
|
239
|
+
<span class="container">String</span>
|
240
|
+
|
241
|
+
<li class="method">
|
242
|
+
<a href="String.html#method-i-first_h2">#first_h2</a>
|
243
|
+
—
|
244
|
+
<span class="container">String</span>
|
245
|
+
|
220
246
|
<li class="method">
|
221
247
|
<a href="String.html#method-i-get_title">#get_title</a>
|
222
248
|
—
|
@@ -227,6 +253,16 @@
|
|
227
253
|
—
|
228
254
|
<span class="container">String</span>
|
229
255
|
|
256
|
+
<li class="method">
|
257
|
+
<a href="String.html#method-i-insert_css">#insert_css</a>
|
258
|
+
—
|
259
|
+
<span class="container">String</span>
|
260
|
+
|
261
|
+
<li class="method">
|
262
|
+
<a href="String.html#method-i-insert_file">#insert_file</a>
|
263
|
+
—
|
264
|
+
<span class="container">String</span>
|
265
|
+
|
230
266
|
<li class="method">
|
231
267
|
<a href="String.html#method-i-insert_script">#insert_script</a>
|
232
268
|
—
|
@@ -237,6 +273,11 @@
|
|
237
273
|
—
|
238
274
|
<span class="container">String</span>
|
239
275
|
|
276
|
+
<li class="method">
|
277
|
+
<a href="String.html#method-i-insert_toc">#insert_toc</a>
|
278
|
+
—
|
279
|
+
<span class="container">String</span>
|
280
|
+
|
240
281
|
<li class="method">
|
241
282
|
<a href="String.html#method-i-meta-3F">#meta?</a>
|
242
283
|
—
|
@@ -257,6 +298,16 @@
|
|
257
298
|
—
|
258
299
|
<span class="container">String</span>
|
259
300
|
|
301
|
+
<li class="method">
|
302
|
+
<a href="String.html#method-i-normalize_include_type">#normalize_include_type</a>
|
303
|
+
—
|
304
|
+
<span class="container">String</span>
|
305
|
+
|
306
|
+
<li class="method">
|
307
|
+
<a href="String.html#method-i-normalize_position">#normalize_position</a>
|
308
|
+
—
|
309
|
+
<span class="container">String</span>
|
310
|
+
|
260
311
|
<li class="method">
|
261
312
|
<a href="String.html#method-i-number-3F">#number?</a>
|
262
313
|
—
|
@@ -287,6 +338,11 @@
|
|
287
338
|
—
|
288
339
|
<span class="container">Filter</span>
|
289
340
|
|
341
|
+
<li class="method">
|
342
|
+
<a href="YuiCompressor/Yui.html#method-i-process_comments_and_strings">#process_comments_and_strings</a>
|
343
|
+
—
|
344
|
+
<span class="container">YuiCompressor::Yui</span>
|
345
|
+
|
290
346
|
<li class="method">
|
291
347
|
<a href="String.html#method-i-replace">#replace</a>
|
292
348
|
—
|
@@ -297,6 +353,11 @@
|
|
297
353
|
—
|
298
354
|
<span class="container">String</span>
|
299
355
|
|
356
|
+
<li class="method">
|
357
|
+
<a href="YuiCompressor/Yui.html#method-i-restore_preserved_comments_and_strings">#restore_preserved_comments_and_strings</a>
|
358
|
+
—
|
359
|
+
<span class="container">YuiCompressor::Yui</span>
|
360
|
+
|
300
361
|
<li class="method">
|
301
362
|
<a href="Conductor/Command.html#method-i-run">#run</a>
|
302
363
|
—
|
@@ -338,14 +399,14 @@
|
|
338
399
|
<span class="container">String</span>
|
339
400
|
|
340
401
|
<li class="method">
|
341
|
-
<a href="
|
402
|
+
<a href="Hash.html#method-i-symbolize_keys">#symbolize_keys</a>
|
342
403
|
—
|
343
|
-
<span class="container">
|
404
|
+
<span class="container">Hash</span>
|
344
405
|
|
345
406
|
<li class="method">
|
346
|
-
<a href="
|
407
|
+
<a href="Array.html#method-i-symbolize_keys">#symbolize_keys</a>
|
347
408
|
—
|
348
|
-
<span class="container">
|
409
|
+
<span class="container">Array</span>
|
349
410
|
|
350
411
|
<li class="method">
|
351
412
|
<a href="Array.html#method-i-symbolize_keys-21">#symbolize_keys!</a>
|
@@ -452,6 +513,11 @@
|
|
452
513
|
—
|
453
514
|
<span class="container">Conductor::Condition</span>
|
454
515
|
|
516
|
+
<li class="method">
|
517
|
+
<a href="String.html#method-i-wrap_style">#wrap_style</a>
|
518
|
+
—
|
519
|
+
<span class="container">String</span>
|
520
|
+
|
455
521
|
<li class="method">
|
456
522
|
<a href="String.html#method-i-yaml-3F">#yaml?</a>
|
457
523
|
—
|
@@ -462,7 +528,7 @@
|
|
462
528
|
|
463
529
|
<footer id="validator-badges" role="contentinfo">
|
464
530
|
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
465
|
-
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.
|
531
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
|
466
532
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
467
533
|
</footer>
|
468
534
|
|
data/lib/conductor/filter.rb
CHANGED
@@ -47,6 +47,109 @@ class ::String
|
|
47
47
|
insert_point
|
48
48
|
end
|
49
49
|
|
50
|
+
def first_h1
|
51
|
+
first = 0
|
52
|
+
split(/\n/).each_with_index do |line, idx|
|
53
|
+
if line =~ /^(# *\S|={2,} *$)/
|
54
|
+
first = idx
|
55
|
+
break
|
56
|
+
end
|
57
|
+
end
|
58
|
+
first
|
59
|
+
end
|
60
|
+
|
61
|
+
def first_h2
|
62
|
+
first = 0
|
63
|
+
split(/\n/).each_with_index do |line, idx|
|
64
|
+
if line =~ /^(## *\S|-{2,} *$)/
|
65
|
+
first = idx
|
66
|
+
break
|
67
|
+
end
|
68
|
+
end
|
69
|
+
first
|
70
|
+
end
|
71
|
+
|
72
|
+
def insert_toc(max = nil, after = :h1)
|
73
|
+
lines = split(/\n/)
|
74
|
+
max = max && max.to_i.positive? ? " max#{max}" : ""
|
75
|
+
line = case after.to_sym
|
76
|
+
when :h2
|
77
|
+
first_h2.positive? ? first_h2 + 1 : 0
|
78
|
+
when :h1
|
79
|
+
first_h1.positive? ? first_h1 + 1 : 0
|
80
|
+
else
|
81
|
+
0
|
82
|
+
end
|
83
|
+
|
84
|
+
lines.insert(line, "\n<!--toc#{max}-->\n").join("\n")
|
85
|
+
end
|
86
|
+
|
87
|
+
def wrap_style
|
88
|
+
if match(%r{<style>.*?</style>}m)
|
89
|
+
self
|
90
|
+
else
|
91
|
+
"<style>#{self}</style>"
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
def insert_css(path)
|
96
|
+
path.sub!(/(\.css)?$/, '.css')
|
97
|
+
|
98
|
+
if path =~ %r{^[~/]}
|
99
|
+
path = File.expand_path(path)
|
100
|
+
elsif File.directory?(File.expand_path("~/.config/conductor/css"))
|
101
|
+
new_path = File.expand_path("~/.config/conductor/css/#{path}")
|
102
|
+
path = new_path if File.exist?(new_path)
|
103
|
+
elsif File.directory?(File.expand_path("~/.config/conductor/files"))
|
104
|
+
new_path = File.expand_path("~/.config/conductor/files/#{path}")
|
105
|
+
path = new_path if File.exist?(new_path)
|
106
|
+
end
|
107
|
+
|
108
|
+
if File.exist?(path)
|
109
|
+
content = IO.read(path)
|
110
|
+
yui = YuiCompressor::Yui.new
|
111
|
+
content = yui.compress(content)
|
112
|
+
lines = split(/\n/)
|
113
|
+
insert_point = meta_insert_point
|
114
|
+
insert_at = insert_point.positive? ? insert_point + 1 : 0
|
115
|
+
lines.insert(insert_at, "#{content.wrap_style}\n\n")
|
116
|
+
lines.join("\n")
|
117
|
+
else
|
118
|
+
warn "File not found (#{path})"
|
119
|
+
self
|
120
|
+
end
|
121
|
+
end
|
122
|
+
|
123
|
+
def insert_file(path, type = :file, position = :end)
|
124
|
+
path.strip!
|
125
|
+
|
126
|
+
if path =~ %r{^[~/]}
|
127
|
+
path = File.expand_path(path)
|
128
|
+
elsif File.directory?(File.expand_path("~/.config/conductor/files"))
|
129
|
+
new_path = File.expand_path("~/.config/conductor/files/#{path}")
|
130
|
+
path = new_path if File.exist?(new_path)
|
131
|
+
end
|
132
|
+
|
133
|
+
out = case type
|
134
|
+
when :code
|
135
|
+
"<<(#{path})"
|
136
|
+
when :raw
|
137
|
+
"<<{#{path}}"
|
138
|
+
else
|
139
|
+
"<<[#{path}]"
|
140
|
+
end
|
141
|
+
out = "\n#{out}\n"
|
142
|
+
|
143
|
+
case position
|
144
|
+
when :start
|
145
|
+
"#{out}\n#{self}"
|
146
|
+
when :h1
|
147
|
+
split(/\n/).insert(first_h1 + 1, out).join("\n")
|
148
|
+
else
|
149
|
+
"#{self}\n#{out}"
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
50
153
|
def append(string)
|
51
154
|
"#{self}\n#{string}"
|
52
155
|
end
|
@@ -227,6 +330,11 @@ class Filter < String
|
|
227
330
|
content = Conductor.stdin
|
228
331
|
|
229
332
|
case @filter
|
333
|
+
when /(insert|add|inject)(css|style)/
|
334
|
+
@params.each do |css|
|
335
|
+
content = content.insert_css(css)
|
336
|
+
end
|
337
|
+
content
|
230
338
|
when /(insert|add|inject)title/
|
231
339
|
content.insert_title
|
232
340
|
when /(insert|add|inject)script/
|
@@ -235,6 +343,25 @@ class Filter < String
|
|
235
343
|
content = content.insert_script(script)
|
236
344
|
end
|
237
345
|
"#{content}</div>"
|
346
|
+
when /(prepend|append|insert|inject)(raw|file|code)/
|
347
|
+
m = Regexp.last_match
|
348
|
+
|
349
|
+
position = if @params.count == 2
|
350
|
+
@params[1].normalize_position
|
351
|
+
else
|
352
|
+
m[1].normalize_position
|
353
|
+
end
|
354
|
+
content.insert_file(@params[0], m[2].normalize_include_type, position)
|
355
|
+
when /inserttoc/
|
356
|
+
max = @params.count.positive? ? @params[0] : nil
|
357
|
+
|
358
|
+
if @params.count == 2
|
359
|
+
after = @params[1] =~ /2/ ? :h2 : :h1
|
360
|
+
else
|
361
|
+
after = :start
|
362
|
+
end
|
363
|
+
|
364
|
+
content.insert_toc(max, after)
|
238
365
|
when /(add|set)meta/
|
239
366
|
unless @params.count == 2
|
240
367
|
warn "Invalid filter parameters: #{@filter}(#{@params.join(",")})"
|
@@ -244,8 +371,8 @@ class Filter < String
|
|
244
371
|
# needs to test for existing meta, setting key if exists, adding if not
|
245
372
|
# should recognize yaml and mmd
|
246
373
|
content.set_meta(@params[0], @params[1], style: content.meta_type)
|
247
|
-
when /(strip|remove)meta/
|
248
|
-
if @params
|
374
|
+
when /(strip|remove|delete)meta/
|
375
|
+
if @params&.count.positive?
|
249
376
|
content.delete_meta(@params[0])
|
250
377
|
else
|
251
378
|
content.strip_meta
|
data/lib/conductor/string.rb
CHANGED
@@ -11,6 +11,28 @@ class ::String
|
|
11
11
|
split(/(\W)/).map(&:capitalize).join
|
12
12
|
end
|
13
13
|
|
14
|
+
def normalize_position
|
15
|
+
case self
|
16
|
+
when /^(be|s|t)/
|
17
|
+
:start
|
18
|
+
when /h1/
|
19
|
+
:h1
|
20
|
+
else
|
21
|
+
:end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def normalize_include_type
|
26
|
+
case self
|
27
|
+
when /^c/
|
28
|
+
:code
|
29
|
+
when /^r/
|
30
|
+
:raw
|
31
|
+
else
|
32
|
+
:file
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
14
36
|
##
|
15
37
|
## Convert a string boolean to symbol
|
16
38
|
##
|
data/lib/conductor/version.rb
CHANGED