Mercurial > ~mikael > mcabber > hg
annotate mcabber/contrib/mcwizz.rb @ 1566:d64e0b2855fc
Fix display of last character in the input line when Aspell support is enabled
The rightmost character displayed in the input line was always the last
character of the line. (Reported by isbear.)
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sun, 08 Feb 2009 10:08:05 +0100 |
parents | e86483cb8c39 |
children |
rev | line source |
---|---|
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 |