aboutsummaryrefslogtreecommitdiff
path: root/optparser.rb
diff options
context:
space:
mode:
authorAlessandro Iezzi <aiezzi@alessandroiezzi.it>2024-04-24 11:50:23 +0200
committerAlessandro Iezzi <aiezzi@alessandroiezzi.it>2024-04-25 11:33:30 +0200
commit94e686f66f749b834ff3e6c50d14b0f12ff457e0 (patch)
tree1a7b6ac190e1b09bc4cfc8241ae0d4576631d694 /optparser.rb
parentc0f787f5d39382ca2a04f617bfb3e4c66c78fb0b (diff)
downloadhyde-94e686f66f749b834ff3e6c50d14b0f12ff457e0.tar.gz
hyde-94e686f66f749b834ff3e6c50d14b0f12ff457e0.zip
Add HydeOptionParser class
Diffstat (limited to 'optparser.rb')
-rw-r--r--optparser.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/optparser.rb b/optparser.rb
index 27a0708..7740f7f 100644
--- a/optparser.rb
+++ b/optparser.rb
@@ -14,6 +14,39 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
+class HydeOptionParser
+ def self.parse
+ options = {}
+ optionParser = OptionParser.new do |option|
+ option.on("-f", "--file-name FILENAME", "File name of the page you want to render") {
+ |o| options[:fileName] = o
+ }
+ option.on("-t", "--title TITLE", "Title of the rendered page") {
+ |o| options[:title] = o
+ }
+ option.on("-m", "--master MASTER", "Master file page") {
+ |o| options[:master] = o
+ }
+ option.on("-n", "--page-name NAME", "Page name") {
+ |o| options[:pageNames] = o
+ }
+ option.on_tail("-h", "--help", "Show this message") do
+ puts option
+ exit
+ end
+ end
+
+ if ARGV.length < 1 then
+ puts optionParser.help
+ exit 1
+ end
+
+ optionParser.parse!
+
+ return options
+ end
+end
+
def optparse
options = {}
optparse = OptionParser.new do |opt|