author | Mikael Berthe <mikael@lilotux.net> |
Wed, 04 Apr 2007 22:03:49 +0200 | |
changeset 1176 | 547a8ca7c1a8 |
parent 1148 | e86483cb8c39 |
permissions | -rwxr-xr-x |
1148
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
1 |
#!/usr/bin/ruby -w |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
2 |
# |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
3 |
# Copyright (C) 2006,2007 Adam Wolk "Mulander" <netprobe@gmail.com> |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
4 |
# Copyright (C) 2006 Mateusz Karkula "Karql" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
5 |
# |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
6 |
# This script is provided under the terms of the GNU General Public License, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
7 |
# see the file COPYING in the root mcabber source directory. |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
8 |
# |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
9 |
# |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
10 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
11 |
require 'getoptlong' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
12 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
13 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
14 |
# strings of colors ;) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
15 |
module Colors |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
16 |
@@color = true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
17 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
18 |
ESC = 27.chr |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
19 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
20 |
RED = ESC + '[31m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
21 |
GREEN = ESC + '[32m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
22 |
YELLOW= ESC + '[33m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
23 |
BLUE = ESC + '[34m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
24 |
PURPLE= ESC + '[35m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
25 |
CYAN = ESC + '[36m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
26 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
27 |
BGREEN= ESC + '[42m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
28 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
29 |
ENDCOL= ESC + '[0m' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
30 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
31 |
def color(color) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
32 |
return '[' + self + ']' unless @@color |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
33 |
color + self + ENDCOL |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
34 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
35 |
def red; color(RED); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
36 |
def green; color(GREEN); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
37 |
def yellow; color(YELLOW); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
38 |
def blue; color(BLUE); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
39 |
def purple; color(PURPLE); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
40 |
def cyan; color(CYAN); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
41 |
def bgreen; color(BGREEN); end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
42 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
43 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
44 |
class String; include Colors; end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
45 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
46 |
class Option |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
47 |
attr_accessor :value, :current, :default |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
48 |
attr_reader :name,:msg |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
49 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
50 |
def initialize(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
51 |
@name = args[:name] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
52 |
@msg = args[:msg] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
53 |
@default = args[:default] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
54 |
@value = nil |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
55 |
@current = nil |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
56 |
@prompt = '' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
57 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
58 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
59 |
def set?; !@value.nil?; end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
60 |
def to_s; "set #@name=#@value"; end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
61 |
def additional?; false; end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
62 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
63 |
def ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
64 |
puts @msg |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
65 |
print @prompt |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
66 |
$stdin.gets.chomp |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
67 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
68 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
69 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
70 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
71 |
class YesNo < Option |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
72 |
def initialize(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
73 |
super(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
74 |
@ifSet = args[:ifSet] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
75 |
@prompt = '[Yes/no]: ' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
76 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
77 |
def ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
78 |
# 1 == yes, 0 == no |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
79 |
case super |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
80 |
when /^Y/i |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
81 |
@value = 1 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
82 |
return additional() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
83 |
when /^N/i |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
84 |
@value = 0 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
85 |
return [] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
86 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
87 |
puts 'Please answer yes or no' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
88 |
puts |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
89 |
ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
90 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
91 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
92 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
93 |
def additional? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
94 |
(@value == 1 && !@ifSet.nil?) ? true : false |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
95 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
96 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
97 |
def additional |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
98 |
(@ifSet.nil?) ? [] : @ifSet |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
99 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
100 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
101 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
102 |
class Edit < Option |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
103 |
def initialize(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
104 |
super(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
105 |
@regex = args[:regex] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
106 |
@prompt = '[edit]: ' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
107 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
108 |
def ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
109 |
answer = super |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
110 |
if answer.empty? || ( !@regex.nil? && !(answer =~ @regex) ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
111 |
ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
112 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
113 |
@value = answer |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
114 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
115 |
return [] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
116 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
117 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
118 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
119 |
class Multi < Option |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
120 |
attr_reader :choices |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
121 |
def initialize(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
122 |
super(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
123 |
@choices = args[:choices] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
124 |
@max = @choices.length - 1 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
125 |
@prompt = "[0-#{ @max }] " |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
126 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
127 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
128 |
def ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
129 |
puts @msg |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
130 |
@choices.each_with_index do |choice,idx| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
131 |
print "#{idx}. #{choice}\n" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
132 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
133 |
print @prompt |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
134 |
answer = $stdin.gets.chomp |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
135 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
136 |
ask() if answer.empty? # we ask here because ''.to_i == 0 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
137 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
138 |
case answer.to_i |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
139 |
when 0 ... @max |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
140 |
@value = answer |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
141 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
142 |
ask() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
143 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
144 |
return [] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
145 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
146 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
147 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
148 |
class Wizzard |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
149 |
VERSION = 0.04 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
150 |
attr_accessor :options, :ignore_previous, :ignore_auto, :target |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
151 |
def initialize() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
152 |
if File.exists?(ENV['HOME'] + '/.mcabberrc') |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
153 |
@target = ENV['HOME'] + '/.mcabberrc' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
154 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
155 |
Dir.mkdir(ENV['HOME'] + '/.mcabber') unless File.exists?(ENV['HOME'] + '/.mcabber') |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
156 |
@target = ENV['HOME'] + '/.mcabber/mcabberrc' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
157 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
158 |
@ignore_previous = false |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
159 |
@ignore_auto = false |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
160 |
@options = Hash.new |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
161 |
@order = Array.new |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
162 |
@processed = Array.new |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
163 |
@old = Array.new # for storing the users file untouched |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
164 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
165 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
166 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
167 |
# add a group of settings to the order queue |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
168 |
def enqueue(group) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
169 |
group = group.to_a if group.class.to_s == 'String' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
170 |
@order += group |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
171 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
172 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
173 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
174 |
## adds options to the settings object |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
175 |
def add(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
176 |
@options[args[:name]] = args[:type].new(args) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
177 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
178 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
179 |
## run the wizzard |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
180 |
def run() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
181 |
parse() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
182 |
display(@order) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
183 |
save() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
184 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
185 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
186 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
187 |
# displays the setting and allows the user to modify it |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
188 |
def display(order) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
189 |
order.each do |name| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
190 |
# this line here is less efficient then on the end of this method |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
191 |
# but if placed on the end, recursion then breaks the order of settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
192 |
@processed.push(name) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
193 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
194 |
# I know this is not efficient, but I have no better idea to modify the default port |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
195 |
@options['port'].default = 5223 if @options['ssl'].value == 1 |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
196 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
197 |
puts |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
198 |
puts "'#{name}'" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
199 |
puts @options[name].msg |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
200 |
puts 'e'.green + 'dit setting' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
201 |
puts 'l'.green + 'eave current setting ' + show(@options[name],:current).cyan unless @options[name].current.nil? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
202 |
puts 'u'.green + 'se default ' + show(@options[name],:default).cyan unless @options[name].default.nil? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
203 |
puts 's'.green + 'kip' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
204 |
puts 'a'.red + 'bort configuration' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
205 |
print '[action]: ' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
206 |
case $stdin.gets.chomp |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
207 |
when /^s/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
208 |
next |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
209 |
when /^l/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
210 |
@options[name].value = @options[name].current |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
211 |
display(@options[name].additional) if @options[name].additional? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
212 |
when /^u/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
213 |
@options[name].value = @options[name].default |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
214 |
display(@options[name].additional) if @options[name].additional? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
215 |
when /^e/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
216 |
additional = @options[name].ask |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
217 |
display(additional) if additional.empty? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
218 |
when /^a/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
219 |
puts 'aborted!!'.red |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
220 |
exit |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
221 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
222 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
223 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
224 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
225 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
226 |
# this allows us to print 'yes' 'no' or descriptions of multi option settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
227 |
# insted of just showing an integer |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
228 |
def show(option,type) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
229 |
value = '' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
230 |
if type == :default |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
231 |
value = option.default |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
232 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
233 |
value = option.current |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
234 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
235 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
236 |
case option.class.to_s |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
237 |
when 'YesNo' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
238 |
return (value.to_i==1) ? 'yes' : 'no' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
239 |
when 'Multi' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
240 |
return option.choices[value.to_i] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
241 |
else |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
242 |
return value.to_s |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
243 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
244 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
245 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
246 |
## save |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
247 |
# save all settings to a file |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
248 |
def save() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
249 |
flag,dumped = true,false |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
250 |
target = File.new(@target,"w") |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
251 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
252 |
@old.each do |line| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
253 |
flag = false if line =~ /^#BEGIN AUTO GENERATED SECTION/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
254 |
flag = true if line =~ /^#END AUTO GENERATED SECTION/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
255 |
if flag |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
256 |
target << line |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
257 |
elsif( !flag && !dumped ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
258 |
target << "#BEGIN AUTO GENERATED SECTION\n\n" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
259 |
@processed.each do |name| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
260 |
target << @options[name].to_s + "\n" if @options[name].set? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
261 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
262 |
puts |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
263 |
dumped = true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
264 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
265 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
266 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
267 |
unless dumped |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
268 |
target << "#BEGIN AUTO GENERATED SECTION\n\n" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
269 |
@processed.each do |name| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
270 |
target << @options[name].to_s + "\n" if @options[name].set? |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
271 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
272 |
target << "#END AUTO GENERATED SECTION\n\n" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
273 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
274 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
275 |
target.close |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
276 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
277 |
## parse |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
278 |
# attempt to load settings from file |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
279 |
def parse() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
280 |
return if @ignore_previous |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
281 |
return unless File.exists?(@target) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
282 |
keyreg = @options.keys.join('|') |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
283 |
parse = true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
284 |
File.open(@target) do |config| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
285 |
config.each do |line| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
286 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
287 |
@old << line |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
288 |
parse = false if @ignore_auto && line =~ /^#BEGIN AUTO GENERATED SECTION/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
289 |
parse = true if @ignore_auto && line =~ /^#END AUTO GENERATED SECTION/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
290 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
291 |
if parse && line =~ /^set\s+(#{keyreg})\s*=\s*(.+)$/ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
292 |
@options[$1].current = $2 if @options.has_key?($1) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
293 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
294 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
295 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
296 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
297 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
298 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
299 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
300 |
# display onscreen help |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
301 |
def Wizzard.help() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
302 |
puts %{ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
303 |
Usage: #{ $0.to_s.blue } #{ 'options'.green } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
304 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
305 |
This script generates configuration files for mcabber jabber client |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
306 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
307 |
#{ "Options:".green } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
308 |
#{ "-h".green }, #{ "--help".green } display this help screen |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
309 |
#{ "-v".green }, #{ "--version".green } display version information |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
310 |
#{ "-T".green }, #{ "--target".green } configuration file |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
311 |
#{ "-i".green }, #{ "--ignore".green } ignore previous configuration |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
312 |
#{ "-I".green }, #{ "--ignore-auto".green } ignore auto generated section |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
313 |
#{ "-S".green }, #{ "--status".green } ask for status settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
314 |
#{ "-P".green }, #{ "--proxy".green } ask for proxy settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
315 |
#{ "-k".green }, #{ "--keep".green } ping/keepalive connection settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
316 |
#{ "-t".green }, #{ "--tracelog".green } ask for tracelog settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
317 |
#{ "-C".green }, #{ "--nocolor".green } turn of color output |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
318 |
} |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
319 |
exit |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
320 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
321 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
322 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
323 |
# display version information |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
324 |
def Wizzard.version() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
325 |
puts "mcwizz v#{VERSION.to_s.purple} coded by #{ 'Karql'.purple } & #{ 'mulander'.purple } <netprobe@gmail.com>" |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
326 |
exit |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
327 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
328 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
329 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
330 |
required = %w{ username server resource nickname ssl port pgp logging } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
331 |
proxy = %w{ proxy_host proxy_port proxy_user proxy_pass } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
332 |
status = %w{ buddy_format roster_width show_status_in_buffer autoaway message message_avail message_free |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
333 |
message_dnd message_notavail message_away message_autoaway } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
334 |
tracelog = %w{ tracelog_level tracelog_file } |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
335 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
336 |
opts = GetoptLong.new( |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
337 |
["--help","-h", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
338 |
["--version","-v", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
339 |
["--target", "-T", GetoptLong::REQUIRED_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
340 |
["--ignore","-i", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
341 |
["--ignore-auto","-I",GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
342 |
["--proxy","-P", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
343 |
["--keep","-k", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
344 |
["--status","-S", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
345 |
["--tracelog","-t", GetoptLong::NO_ARGUMENT], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
346 |
["--nocolor","-C", GetoptLong::NO_ARGUMENT] |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
347 |
) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
348 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
349 |
opts.ordering = GetoptLong::REQUIRE_ORDER |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
350 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
351 |
config = Wizzard.new() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
352 |
config.enqueue(required) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
353 |
config.enqueue( %w{ beep_on_message hide_offline_buddies iq_version_hide_os autoaway } ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
354 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
355 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
356 |
# Description of the add() syntax |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
357 |
# :name - name of the setting |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
358 |
# :msg - message displayed to the user |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
359 |
# :type - type of settings - avaible types are: YesNo, Edit, Multi |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
360 |
# :default - default setting |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
361 |
# YesNo type specific flag: |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
362 |
# :ifSet - an array of other options, that will be asked if the flag holding option is set to true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
363 |
# Edit type specific flag: |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
364 |
# :regex- regular expression to which input will be compared |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
365 |
# Multi type specific flag: |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
366 |
# :choices - an array of possible settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
367 |
# |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
368 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
369 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
370 |
# here we add all the settings that we want to be able to handle |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
371 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
372 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
373 |
# ungrouped settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
374 |
config.add( :name => 'beep_on_message', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
375 |
:msg => 'Should mcabber beep when you receive a message?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
376 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
377 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
378 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
379 |
config.add( :name => 'hide_offline_buddies', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
380 |
:msg => 'Display only connected buddies in the roster?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
381 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
382 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
383 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
384 |
config.add( :name => 'pinginterval', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
385 |
:msg => 'Enter pinginterval in seconds for keepalive settings' \ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
386 |
' set this to 0 to disable.', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
387 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
388 |
:regex => /^\d+$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
389 |
:default => 40) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
390 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
391 |
config.add( :name => 'iq_version_hide_os', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
392 |
:msg => 'Hide Your OS information?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
393 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
394 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
395 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
396 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
397 |
config.add( :name => 'port', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
398 |
:msg => 'Enter port number', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
399 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
400 |
:regex => /^\d+$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
401 |
:default => 5222 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
402 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
403 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
404 |
# server settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
405 |
config.add( :name => 'username', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
406 |
:msg => 'Your username', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
407 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
408 |
:regex => /^[^\s\@:<>&\'"]+$/ ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
409 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
410 |
config.add( :name => 'server', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
411 |
:msg => 'Your jabber server', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
412 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
413 |
:regex => /^\S+$/ ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
414 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
415 |
config.add( :name => 'resource', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
416 |
:msg => 'Resource (If you don\'t know what a resource is, use the default setting)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
417 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
418 |
:regex => /^.{1,1024}$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
419 |
:default => 'mcabber' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
420 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
421 |
config.add( :name => 'nickname', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
422 |
:msg => 'Conference nickname (if you skip this setting your username will be used as' \ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
423 |
' nickname in MUC chatrooms)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
424 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
425 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
426 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
427 |
# ssl settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
428 |
config.add( :name => 'ssl', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
429 |
:msg => 'Enable ssl?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
430 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
431 |
:ifSet => %w{ ssl_verify ssl_cafile ssl_capath ciphers }, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
432 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
433 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
434 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
435 |
config.add( :name => 'ssl_verify', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
436 |
:msg => 'Set to 0 to disable certificate verification, or non-zero to set desired maximum CA' \ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
437 |
' verification depth. Use -1 to specify an unlimited depth.', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
438 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
439 |
:regex => /^(-1)|(\d+)$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
440 |
:default => -1 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
441 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
442 |
config.add( :name => 'ssl_cafile', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
443 |
:msg => 'Set to a path to a CA certificate file (may contain multiple CA certificates)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
444 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
445 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
446 |
config.add( :name => 'ssl_capath', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
447 |
:msg => 'Set to a directory containing CA certificates (use c_rehash to generate hash links)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
448 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
449 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
450 |
config.add( :name => 'ciphers', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
451 |
:msg => 'Set to a list of desired SSL ciphers (run "openssl ciphers" for a candidate values)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
452 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
453 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
454 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
455 |
# pgp support |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
456 |
config.add( :name => 'pgp', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
457 |
:msg => 'Enable OpenPGP support?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
458 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
459 |
:ifSet => %w{ pgp_private_key }, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
460 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
461 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
462 |
config.add( :name => 'pgp_private_key', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
463 |
:msg => 'Enter your private key id. You can get the Key Id with gpg: ' \ |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
464 |
'"gpg --list-keys --keyid-format long"', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
465 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
466 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
467 |
# proxy settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
468 |
config.add( :name => 'proxy_host', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
469 |
:msg => 'Proxy host', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
470 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
471 |
:regex => /^\S+?\.\S+?$/ ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
472 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
473 |
config.add( :name => 'proxy_port', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
474 |
:msg => 'Proxy port', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
475 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
476 |
:regex => /^\d+$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
477 |
:default => 3128 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
478 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
479 |
config.add( :name => 'proxy_user', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
480 |
:msg => 'Proxy user', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
481 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
482 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
483 |
config.add( :name => 'proxy_pass', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
484 |
:msg => 'Proxy pass (will be stored unencrypted an the pass will be echoed during input)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
485 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
486 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
487 |
# trace logs |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
488 |
config.add( :name => 'tracelog_level', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
489 |
:msg => 'Specify level of advanced traces', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
490 |
:type => Multi, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
491 |
:choices => [ 'lvl0: I don\'t want advanced tracing', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
492 |
'lvl1: most events of the log window are written to the file', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
493 |
'lvl2: debug logging (XML etc.)' ], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
494 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
495 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
496 |
config.add( :name => 'tracelog_file', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
497 |
:msg => 'Specify a file to which the logs will be written', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
498 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
499 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
500 |
# logging settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
501 |
config.add( :name => 'logging', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
502 |
:msg => 'Enable logging?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
503 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
504 |
:ifSet => %w{ log_win_height log_display_sender load_logs logging_dir log_muc_conf}, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
505 |
:default => 1 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
506 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
507 |
config.add( :name => 'log_win_height', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
508 |
:msg => 'Set log window height (minimum 1)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
509 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
510 |
:regex => /^[1-9]\d*/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
511 |
:default => 5 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
512 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
513 |
config.add( :name => 'log_display_sender', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
514 |
:msg => 'Display the message sender\'s jid in the log window?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
515 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
516 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
517 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
518 |
config.add( :name => 'load_logs', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
519 |
:msg => 'Enable loading logs?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
520 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
521 |
:default => 1 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
522 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
523 |
config.add( :name => 'logging_dir', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
524 |
:msg => 'Enter logging directory', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
525 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
526 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
527 |
config.add( :name => 'log_muc_conf', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
528 |
:msg => 'Log MUC chats?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
529 |
:ifSet => %w{ load_muc_logs }, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
530 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
531 |
:default => 1 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
532 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
533 |
config.add( :name => 'load_muc_logs', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
534 |
:msg => 'Load MUC chat logs?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
535 |
:type => YesNo, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
536 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
537 |
## |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
538 |
# status settings |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
539 |
config.add( :name => 'roster_width', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
540 |
:msg => 'Set buddylist window width (minimum 2)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
541 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
542 |
:regex => /^[2-9]\d*$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
543 |
:default => 24 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
544 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
545 |
config.add( :name => 'buddy_format', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
546 |
:msg => 'What buddy format (in status window) do you prefer?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
547 |
:type => Multi, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
548 |
:choices => [ '<jid/resource>', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
549 |
'name <jid/resource> (name is omitted if same as the jid)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
550 |
'name/resource (if the name is same as the jid, use <jid/res>', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
551 |
'name (if the name is the same as the jid, use <jid/res>' ] ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
552 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
553 |
config.add( :name => 'show_status_in_buffer', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
554 |
:msg => 'What status changes should be displayed in the buffer?', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
555 |
:type => Multi, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
556 |
:choices => [ 'none', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
557 |
'connect/disconnect', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
558 |
'all' ], |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
559 |
:default => 2 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
560 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
561 |
config.add( :name => 'autoaway', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
562 |
:msg => 'After how many seconds of inactivity should You become away? (0 for never)', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
563 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
564 |
:regex => /^\d+$/, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
565 |
:default => 0 ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
566 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
567 |
config.add( :name => 'message', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
568 |
:msg => 'Skip this setting unless you want to override all other status messages', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
569 |
:type => Edit ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
570 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
571 |
config.add( :name => 'message_avail', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
572 |
:message => 'Set avaible status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
573 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
574 |
:default => 'I\'m avaible' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
575 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
576 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
577 |
config.add( :name => 'message_free', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
578 |
:message => 'Set free for chat status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
579 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
580 |
:default => 'I\'m free for chat' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
581 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
582 |
config.add( :name => 'message_dnd', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
583 |
:message => 'Set do not disturb status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
584 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
585 |
:default => 'Please do not disturb' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
586 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
587 |
config.add( :name => 'message_notavail', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
588 |
:message => 'Set not avaible status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
589 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
590 |
:default => 'I\'m not avaible' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
591 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
592 |
config.add( :name => 'message_away', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
593 |
:message => 'Set away status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
594 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
595 |
:default => 'I\'m away' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
596 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
597 |
config.add( :name => 'message_autoaway', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
598 |
:msg => 'Set auto-away status', |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
599 |
:type => Edit, |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
600 |
:default => 'Auto-away' ) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
601 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
602 |
begin |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
603 |
opts.each do |opt,arg| |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
604 |
case opt |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
605 |
when '--help' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
606 |
Wizzard.help() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
607 |
when '--version' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
608 |
Wizzard.version() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
609 |
when '--target' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
610 |
config.target = arg |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
611 |
when '--ignore' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
612 |
config.ignore_previous = true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
613 |
when '--ignore-auto' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
614 |
config.ignore_auto = true |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
615 |
when '--proxy' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
616 |
config.enqueue(proxy) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
617 |
when '--keep' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
618 |
config.enqueue('pinginterval') |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
619 |
when '--tracelog' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
620 |
config.enqueue(tracelog) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
621 |
when '--status' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
622 |
config.enqueue(status) |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
623 |
when '--nocolor' |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
624 |
class String; @@color = false; end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
625 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
626 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
627 |
rescue GetoptLong::InvalidOption |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
628 |
Wizzard.help() |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
629 |
end |
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
630 |
|
e86483cb8c39
Update mcwizz setup script (Mulander)
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
631 |
config.run |