blob: 7ae5efb647e3518f704e7bdb3b5b7206bbe4456f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# program : rslibtool
# copyright : PRAGMA Publishing On Demand
# version : 1.00 - 2002
# author : Hans Hagen
#
# project : eXaMpLe
# concept : Hans Hagen
# info : j.hagen@xs4all.nl
# www : www.pragma-pod.com / www.pragma-ade.com
# --add --base=filename --path=directory pattern
# --remove --base=filename --path=directory label
# --sort --base=filename --path=directory
# --purge --base=filename --path=directory
# --dummy --base=filename
# --namespace
# rewrite
unless defined? ownpath
ownpath = $0.sub(/[\\\/]\w*?\.rb/i,'')
$: << ownpath
end
require 'rslb/base'
require 'xmpl/base'
require 'xmpl/switch'
session = Example.new('rslbtool', '1.0', 'PRAGMA POD')
session.identify
commandline = CommandLine.new
commandline.registerflag('add')
commandline.registerflag('remove')
commandline.registerflag('delete')
commandline.registerflag('sort')
commandline.registerflag('purge')
commandline.registerflag('dummy')
commandline.registerflag('process')
commandline.registerflag('namespace')
commandline.registervalue('prefix')
commandline.registervalue('base')
commandline.registervalue('path')
commandline.registervalue('result')
commandline.registervalue('texexec')
commandline.registervalue('zipalso')
commandline.expand
session.inherit(commandline)
base = session.get('option.base')
path = session.get('option.path')
base = 'rslbtool.xml' if base.empty?
# when path is given, assume that arg list is list of
# suffixes, else assume it is a list of globbed filespec
if path.empty?
base += '.xml' unless base =~ /\..+$/
list = commandline.arguments
else
Dir.chdir(File.dirname(path))
list = Dir.glob("*.{#{commandline.arguments.join(',')}}")
end
begin
reslib = Resource.new(base,session.get('option.namespace'))
reslib.load(base)
rescue
session.error('problems with loading base')
exit
end
unless session.get('option.texexec').empty?
reslib.set_texexec(session.get('option.texexec'))
end
if session.get('option.add')
session.report('adding records', list)
reslib.add_figures(list,session.get('option.prefix'))
elsif session.get('option.remove') or session.get('option.delete')
session.report('removing records')
reslib.delete_figures(list)
elsif session.get('option.sort')
session.report('sorting records')
reslib.sort_figures()
elsif session.get('option.purge')
session.report('purging records')
reslib.purge_figures()
elsif session.get('option.dummy')
session.report('creating dummy records')
reslib.create_dummies(session.get('option.process'),session.get('option.result'),session.get('option.zipalso'))
else
session.warning('provide action')
end
reslib.save(base)
|