aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/0.52/options.rb
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2007-06-02 11:27:06 +0100
committerRalph Amissah <ralph.amissah@gmail.com>2007-06-02 11:27:06 +0100
commit26767cc88c0548ad7978021796d0ccc4c9f7ffed (patch)
treefe225e99e180b5d2925cbf776826f74db27e1888 /lib/sisu/0.52/options.rb
parentrestrict use to ruby1.8 branch, i.e. < 1.9 (diff)
0.53.0, pre-build, see changelog, library naming changed for scm, placed under v0 (instead of 0.53)upstream/0.53.0sisu_0.53.0
Diffstat (limited to 'lib/sisu/0.52/options.rb')
-rw-r--r--lib/sisu/0.52/options.rb168
1 files changed, 0 insertions, 168 deletions
diff --git a/lib/sisu/0.52/options.rb b/lib/sisu/0.52/options.rb
deleted file mode 100644
index b253aab1..00000000
--- a/lib/sisu/0.52/options.rb
+++ /dev/null
@@ -1,168 +0,0 @@
-=begin
- * Name: SiSU information Structuring Universe - Structured information, Serialized Units
- * Author: Ralph Amissah
- * http://www.jus.uio.no/sisu
- * http://www.jus.uio.no/sisu/SiSU/download.html
-
- * Description: SiSU information Structuring Universe, command line options parsing
-
- * Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Ralph Amissah
-
- * License: GPL 2 or later
-
- Summary of GPL 2
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the Free
- Software Foundation; either version 2 of the License, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
-
- If you have Internet connection, the latest version of the GPL should be
- available at these locations:
- http://www.fsf.org/licenses/gpl.html
- http://www.gnu.org/copyleft/gpl.html
- http://www.jus.uio.no/sisu/gpl2.fsf
-
- SiSU was first released to the public on January 4th 2005
-
- SiSU uses:
-
- * Standard SiSU markup syntax,
- * Standard SiSU meta-markup syntax, and the
- * Standard SiSU object citation numbering and system
-
- © Ralph Amissah 1997, current 2007.
- All Rights Reserved.
-
- * Ralph Amissah: ralph@amissah.com
- ralph.amissah@gmail.com
-
-=end
-module SiSU_commandline
- require SiSU_lib + '/sysenv'
- class Options
- attr_accessor :cmd,:mod,:files,:fns,:fnb,:what
- def initialize(a)
- @cmd,@files,@fns,@fnb,@what,c,w,s='','','','','','','','',''
- @files,@mod,m,f,z,ca=[],[],[],[],[],[]
- @env=SiSU_Env::Info_env.new
- shortcut=SiSU_Env::Info_processing_flag.new
- a.each do |x|
- y=case x
- when /0/
- if x=~/^-1\S+/; x.gsub(/^-0(\S+)/,shortcut.cf_0 + ' -\1')
- else x.gsub(/^-0/,shortcut.cf_0 + ' ')
- end
- when /1/
- if x=~/^-1\S+/; x.gsub(/^-1(\S+)/,shortcut.cf_1 + ' -\1')
- else x.gsub(/^-1/,shortcut.cf_1 + ' ')
- end
- when /2/
- if x=~/^-2\S+/; x.gsub(/^-2(\S+)/,shortcut.cf_2 + ' -\1')
- else x.gsub(/^-2/,shortcut.cf_2 + ' ')
- end
- when /3/
- if x=~/^-3\S+/; x.gsub(/^-3(\S+)/,shortcut.cf_3 + ' -\1')
- else x.gsub(/^-3/,shortcut.cf_3 + ' ')
- end
- when /4/
- if x=~/^-4\S+/; x.gsub(/^-4(\S+)/,shortcut.cf_4 + ' -\1')
- else x.gsub(/^-4/,shortcut.cf_4 + ' ')
- end
- when /5/
- if x=~/^-5\S+/; x.gsub(/^-5(\S+)/,shortcut.cf_5 + ' -\1')
- else x.gsub(/^-5/,shortcut.cf_5 + ' ')
- end
- else x
- end
- s << " #{y}" unless y.empty?
- end
- s.strip!
- a=s.split(/\s+/)
- a.each do |x|
- if x =~/^-[a-z0-5]+/i or x =~/^--\S+/
- if x =~/^-([a-z0-5]+)/i; c << $1
- end
- if x =~/^--\S+/; m << x
- end
- elsif x =~ /(?:\.(?:[_-]?sst(?:\.xml)?|ssm|ssi|sx[sdn]\.xml|s[1-3]|kdi|ssp)|sisupod(?:\.zip)?)$/
- if x =~/^http:\/\/\S+/; f << x
- elsif FileTest.file?(x); f << x
- else puts "file not found: #{x}"
- end
- elsif x =~ /\.termsheet\.rb$/
- if FileTest.file?(x); f << x
- else puts "file not found: #{x}"
- end
- else w=x
- puts "#{x} in #{a.join(' ')}?"
- end
- end
- unless m.empty?
- m.each do |m|
- case m
- when /--maintenance/
- c=c+'M'
- when /--verbose[=-]3/
- c=c+'VM'
- when /--verbose[=-]2|--Verbose|--VERBOSE/
- c=c+'V'
- when /--verbose(?:[=-]1)?/
- c=c+'v'
- when /--verbose[=-]0|--quiet|--silent/
- c=c+'q'
- else @mod << m
- end
- end
- end
- unless c.empty?
- c.gsub!(/-/,'')
- c.scan(/./) {|x| ca << x}
- @cmd= '-' + ca.uniq.join
- end
- unless w.empty? ; @what=w
- end
- @files << f
- @files.flatten!
- if @files.length > 0 and @cmd.empty? and @mod.length == 0 #% if no other action called on filename given, default is sisu -0 [filename(s)] configured as flag default
- @cmd=shortcut.cf_0
- end
- tell=SiSU_Screen::Ansi.new(@cmd,"\tsisu " + @cmd + ' ' + @mod.join(' ') + ' ' + @files.join(' ') + "\n")
- tell.print_brown if @cmd =~/[vVM]/
- @files.uniq!
- end
- def cmd
- @cmd
- end
- def mod
- @mod
- end
- def fns
- @fns
- end
- def what
- @what
- end
- def fnb
- unless fns.empty?
- fns[/(.+?)\.(?:[_-]?sst|ssm)$/,1]
- end
- end
- end
-end
-__END__
-note usually named @opt
-is carried in Param usually as @md
-@opt is a subset of @md
-where @md is passed, contents of @opt are available
-passing @opt as well is duplication
-check for fns & fnb