flnews_post_proc 1.7 → 1.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -70,7 +70,7 @@ GROUP_INTROS:
70
70
  GROUP_SIGS:
71
71
  .*de.test: "newsgroup_hook .*de.test\r\nMit Zeilenumbruch"
72
72
  .*fr.test: "newsgroup_hook .*fr.test\r\n2ème ligne, « guillemets »"
73
- de.*: "„Erst betonieren, dann reinwerfen.”\r\n– „Erst Schulden machen, dann klugscheißen?”"
73
+ de.*: Geh Kaffee kochen
74
74
  fr.*: "« Ton ordinateur de rêve ? » – « Le bleue. »\r\n "
75
75
 
76
76
  # CUSTOM_HEADERS
@@ -86,13 +86,13 @@ GROUP_SIGS:
86
86
  CUSTOM_HEADERS:
87
87
  - "X-Post-Processor: flnews_post_proc"
88
88
 
89
- # NO_ARCHIVE_GROUPS:
89
+ # XNAY_GROUPS:
90
90
  # The newsgroups, where a header X-No-Archive: YES shall be set.
91
91
  # CONTENT: a dash and space, then a String, containing the name of the group
92
92
  # or a regexp.
93
93
  # DEFAULT: empty
94
94
  # EXAMPLE: - "alt.test"
95
- NO_ARCHIVE_GROUPS:
95
+ XNAY_GROUPS:
96
96
  - ".*.test"
97
97
 
98
98
  # DEBUG_LOG:
@@ -145,17 +145,16 @@ REFERENCE_FORMAT: " ➤%s"
145
145
  # try to correct URLs. Even if URLs are identified as such, only a few
146
146
  # manipulations are attempted :
147
147
  # * Angular brackets '<' and '>' are added, if missing
148
- # -----> handling <news:/> is disabled
149
148
  # * Article-references are prepended with "news:", if missing
150
149
  # * Slashes are added, if they are found missing after "http(s):"
151
150
  # ATTN! The program is unable to discern "mailto:" and "news:" references. If
152
151
  # neither is given, but '@' is present, "news:" is automatically prepended.
153
- # <-----
152
+ #
154
153
  # If the variable is not set, a value 'yes' is assumed.
155
154
  # CONTENT: One of YES, yes, NO, no, and other variations of case.
156
- # DEFAULT: No
155
+ # DEFAULT: yes
157
156
  # Example: ... I let you guess.
158
- VFY_URLS: No
157
+ VFY_URLS: YES
159
158
 
160
159
  # OVERRIDE_CONFIG
161
160
  # A Boolean constant. You can choose to override the following
@@ -15,7 +15,6 @@
15
15
 
16
16
  require 'yaml'
17
17
  require 'ostruct'
18
-
19
18
  # --needs the Diffy gem
20
19
  require 'diffy'
21
20
 
@@ -30,10 +29,11 @@ $LN = "\r\n"
30
29
  # The main application class.
31
30
  # Does it.
32
31
  class PostProcessor
32
+ # class-level configuration object
33
+ @@config = Configuration.instance
33
34
  include BasicLogging
34
35
 
35
36
  def initialize(article_text)
36
- @config = Configuration.instance
37
37
  # for simplicity.
38
38
  # separate the headers and the body.
39
39
  debug ' initializing headers'
@@ -55,9 +55,8 @@ class PostProcessor
55
55
  body.handle_references
56
56
  body.set_signature(newsgroups.signature)
57
57
 
58
- # verify and eventually correct URIs.
59
- # Will only handle http(s) for the time.
60
- body.handle_uris
58
+ # verify and eventually correct URLs
59
+ body.handle_urls
61
60
 
62
61
  # get the headers and the body as a string.
63
62
  # Assemble.
data/lib/headers.rb CHANGED
@@ -20,41 +20,22 @@ require_relative 'newsgroups'
20
20
  # an object of this class represents the headers of a news-article
21
21
 
22
22
  class Headers
23
+ # class-level configuration object
24
+ @@config = Configuration.instance
23
25
  include BasicLogging
24
26
 
25
27
  # read the headers from the article
26
28
  def initialize(article_text)
27
29
 
28
- @config = Configuration.instance
29
30
  line = nil
30
31
  # transform the article to an array.
31
32
  debug('before split, article_text is : ' << article_text)
32
33
  line_array = article_text.split($LN)
33
-
34
- # Emsure that all three headers are present.
35
- missing_header = ['From:', 'Newsgroups:', 'Message-ID:'].detect{|h| ! line_array.any?{|l| l.match(h) } }
36
- if(missing_header)
37
- msg = "Input does not look like a news-article, no #{missing_header.delete(':')}; aborting."
38
- STDERR.puts msg
39
- error(msg)
40
- exit false
41
- end
42
-
43
34
  debug('after split, line_array is : ' << line_array.inspect)
44
35
  # find the first empty line
45
36
  end_index = line_array.index {|ele| ele.strip == ''}
46
37
  # keep the preceding lines.
47
- begin
48
- @lines = line_array.slice!(0, end_index)
49
- rescue Exception => ex
50
- msg = 'ERROR: cannot split the input into lines: ' << self.class.name << ': ' << ex.message
51
- # console
52
- STDERR.puts msg
53
- # log
54
- error(msg)
55
- exit false
56
- end
57
-
38
+ @lines = line_array.slice!(0, end_index)
58
39
  debug('headers: ' << @lines.to_s)
59
40
 
60
41
  # headername: headervalue
@@ -74,13 +55,9 @@ class Headers
74
55
  error ("Cannot match a header in line " << l << "(" << ex.message << ")")
75
56
  exit false;
76
57
  end
77
- # Consider the two following fixes as preliminary until proven.
78
- # Getting older, this kind of problem occupies me a lot more than
79
- # it should.
80
- #
81
58
  # value is all after the first colon
82
59
  # BUGGY: val = l.match(/:(.*)/)[1].strip
83
- # BUGFIX 3/2024, use lstrip
60
+ # BUGFIX 3/2024
84
61
  val = l.match(/:(.*)/)[1].lstrip
85
62
  else # start_with?(' ')
86
63
  # a wrapped value is not devided
@@ -118,16 +95,15 @@ class Headers
118
95
 
119
96
  # Modify headers, if need be.
120
97
  def update()
121
- no_archive = @newsgroups.no_archive
122
- debug('no_archive should be set now : ' << no_archive.to_s)
123
- if no_archive
124
- @headers["X-No-Archive".to_sym] = no_archive
125
- @headers["Archive".to_sym] = 'no'
98
+ xnay = @newsgroups.xnay
99
+ debug('xnay should be set now : ' << xnay.to_s)
100
+ if xnay
101
+ @headers["X-No-Archive".to_sym] = xnay
126
102
  end
127
- if @config.CUSTOM_HEADERS
128
- ch = @config.CUSTOM_HEADERS
129
- debug('setting custom headers : ' << ch.inspect)
130
- @config.CUSTOM_HEADERS.each do |pair|
103
+ ch = @@config.CUSTOM_HEADERS
104
+ debug('setting custom headers : ' << ch.inspect)
105
+ if @@config.CUSTOM_HEADERS
106
+ @@config.CUSTOM_HEADERS.each do |pair|
131
107
  ch = pair.split(':')
132
108
  hn = ch[0].strip
133
109
  hv = ch[1].strip
@@ -167,6 +143,6 @@ class Headers
167
143
  end
168
144
 
169
145
  attr_reader :lines, :newsgroups
170
-
146
+
171
147
  end
172
148
  # EOF
data/lib/newsgroups.rb CHANGED
@@ -20,23 +20,24 @@ require_relative 'configuration'
20
20
  require_relative 'basic_logging'
21
21
 
22
22
  class Newsgroups
23
-
23
+ # class-level configuration object
24
+ @@config = Configuration.instance
24
25
  include BasicLogging
26
+
25
27
  def initialize(groups)
26
- @config = Configuration.instance
27
28
  @groups = groups.split(',')
28
- debug('set signature, intro, no_archive')
29
+ debug('set signature, intro, xnay')
29
30
  # set details for this post
30
31
  if @groups.size == 1
31
32
  set_signature
32
33
  set_intro
33
- set_no_archive
34
+ set_xnay
34
35
  end
35
36
  end
36
37
 
37
- def no_archive
38
- debug('returning ' <<( @no_archive ? @no_archive : ' nil ') )
39
- return @no_archive ? @no_archive : nil
38
+ def xnay
39
+ debug('returning ' <<( @xnay ? @xnay : ' nil ') )
40
+ return @xnay ? @xnay : nil
40
41
  end
41
42
  attr_reader :signature, :intro, :groups
42
43
 
@@ -49,7 +50,7 @@ class Newsgroups
49
50
  # only one group.
50
51
  group = @groups[0]
51
52
  # all configured intro-lines.
52
- gintros = @config.GROUP_INTROS
53
+ gintros = @@config.GROUP_INTROS
53
54
 
54
55
  if gintros && gintros.respond_to?(:to_hash)
55
56
  # find the intro for the group.
@@ -82,7 +83,6 @@ class Newsgroups
82
83
  warned ||= true
83
84
  # ... and silently marry them to \r
84
85
  text.gsub!($~[0],$~[1] + "\r\n")
85
- text.gsub!("\n ", "\n")
86
86
  # Luxury you can afford.
87
87
  end # \n
88
88
  text
@@ -93,7 +93,7 @@ class Newsgroups
93
93
  @signature = nil
94
94
  # 1 group
95
95
  group = @groups[0]
96
- gsigs = @config.GROUP_SIGS
96
+ gsigs = @@config.GROUP_SIGS
97
97
 
98
98
  if gsigs && gsigs.respond_to?(:to_hash)
99
99
  # find the signature for the group
@@ -109,16 +109,11 @@ class Newsgroups
109
109
  sm = group.match(rg)
110
110
  debug('signature for group(s) ' << g << ': ' << s) if sm
111
111
  if sm
112
- @signature = s
112
+ @signature = correct_linebreaks(s)
113
113
  end # if sm
114
114
  end # if no signature
115
115
  end # gsigs.each
116
116
  end # gsigs for group?
117
- if(@signature && @signature.strip.start_with?('/') )
118
- debug('picking signature from file ' << @signature)
119
- @signature = pick_sig(@signature)
120
- end
121
- @signature = correct_linebreaks(@signature) if @signature
122
117
  else # gsigs and is hash?
123
118
  msg = "Cannot read the signatures from the configuration."
124
119
  msg << "\nPlease verify that GROUP_SIGS is set."
@@ -126,26 +121,13 @@ class Newsgroups
126
121
  end
127
122
  end
128
123
 
129
- # pick a signature from a file
130
- def pick_sig(file)
131
- if file && File.exist?(file) && File.readable?(file)
132
- allSigs = File::read(file).force_encoding('utf-8').split("\n\n")
133
- numSigs = allSigs.length
134
-
135
- srand(Time.now.nsec)
136
- return allSigs[rand(numSigs)]
137
- else
138
- error 'cannot read signature from file ' << file
139
- end
140
- end
141
-
142
- # define the no_archive header.
143
- def set_no_archive
144
- @no_archive = nil
145
- xgs = @config.NO_ARCHIVE_GROUPS
124
+ # define the xnay header.
125
+ def set_xnay
126
+ @xnay = nil
127
+ xgs = @@config.XNAY_GROUPS
146
128
  if xgs && !xgs.empty? && xgs.detect {|g| @groups[0].match(g) }
147
- debug("setting no_archive")
148
- @no_archive = 'yes'
129
+ debug("setting XNAY")
130
+ @xnay = 'YES'
149
131
  end
150
132
  end
151
133
  end
data/lib/override.rb CHANGED
@@ -40,7 +40,7 @@ class OverrideDlg
40
40
  @@LIBDIR = File::dirname(__FILE__)
41
41
  # The configuration variables that can be unset.
42
42
  # This class instance variable is exposed via a getter.
43
- @cvars = [:GROUP_SIGS, :CUSTOM_HEADERS, :NO_ARCHIVE_GROUPS, :VFY_URLS, :DEBUG_LOG]
43
+ @cvars = [:GROUP_SIGS, :CUSTOM_HEADERS, :XNAY_GROUPS, :VFY_URLS, :DEBUG_LOG]
44
44
 
45
45
  # ... here
46
46
  # For the record: this is rather cool.
@@ -66,7 +66,7 @@ class OverrideDlg
66
66
  # display a dialog and return the new options.
67
67
  def show
68
68
  if(@executables && !@executables.empty?)
69
- debug('found executables ' << @executables.join(', '))
69
+ debug('found executables ' << @executables.join(', ') )
70
70
  opts = nil
71
71
  begin
72
72
  if has?(YAD)
data/lib/ruby_dlg CHANGED
@@ -35,25 +35,27 @@ def wait_for_user()
35
35
  end
36
36
  return char
37
37
  end
38
- if !ARGV.empty? && ARGV.length > 0
39
- ofl = nil
40
- begin
41
- ofl = File.open(ARGV[0], 'w+')
42
- puts 'writing to ' << ARGV[0]
43
- rescue Exception => ex
44
- puts red ('cannot open ' << ARGV[1])
45
- puts ex.message
46
- puts 'hit any key to exit'
47
- wait_for_user
48
- exit false
49
- end
50
38
 
51
- opt_array = []
52
- message = ''
53
- menu ||= %=
39
+
40
+ ofl = nil
41
+ begin
42
+ ofl = File.open(ARGV[0], 'w+') if ARGV.length > 0
43
+ puts 'writing to ' << ARGV[0]
44
+ rescue Exception => ex
45
+ puts red ('cannot open ' << ARGV[1])
46
+ puts 'hit any key to exit'
47
+ wait_for_user
48
+ exit false
49
+ end
50
+
51
+
52
+
53
+ opt_array = []
54
+ message = ''
55
+ menu ||= %=
54
56
  1 Unset Signature GROUP_SIGS
55
57
  2 Unset Custom headers CUSTOM_HEADERS
56
- 3 Unset No Archive NO_ARCHIVE_GROUPS
58
+ 3 Unset X-No-Archive XNAY_GROUPS
57
59
  4 Do not correct URLs VFY_URLS
58
60
  5 Disable log DEBUG_LOG
59
61
  ––––––––––––––––––––––––––––––––––––––––––––––
@@ -61,79 +63,74 @@ if !ARGV.empty? && ARGV.length > 0
61
63
  ––––––––––––––––––––––––––––––––––––––––––––––
62
64
  0 Okay, use settings.
63
65
  ––––––––––––––––––––––––––––––––––––––––––––––––
64
- {bold("Esc, Ctrl+C and 'q'")} terminate the Post-processor
66
+ #{bold("Esc, Ctrl+C and 'q'")} terminate the Post-processor
65
67
  and no changes will be applied.
66
68
  =
67
69
 
68
- loop do
69
- system 'clear'
70
- puts yellow(menu)
71
- puts cyan(message)
72
- option = wait_for_user - 48
73
- case option
74
- # Esc, Ctrl+C, 'q'
75
- when -21, -45, 65
76
- puts red('Aborting. Bye.')
77
- ofl.write 'exit'
78
- ofl.close
79
- exit true
80
- when 0
81
- puts green('Applying changes.') if !opt_array.empty?
82
- # write the list of variables to unset (others remain)
83
- ofl.write opt_array.join(' ')
84
- ofl.close
85
- exit true
86
-
87
- # toggle options
88
- # ADD option to the option array, if it should be *removed*
89
- # from the configuration, else remove it from the array.
90
- when 1
91
- active = !opt_array.include?(:GROUP_SIGS)
92
- opt_array << :GROUP_SIGS if active
93
- opt_array.delete(:GROUP_SIGS) if !active
94
-
95
- message = "Signature #{active ? 'unset' : 'as configured'}!"
96
- menu.sub!("Unset Signature", "Set Signature ") if active
97
- menu.sub!("Set Signature ", "Unset Signature") if !active
98
- when 2
99
- active = !opt_array.include?(:CUSTOM_HEADERS)
100
- opt_array << :CUSTOM_HEADERS if active
101
- opt_array.delete(:CUSTOM_HEADERS) if !active
102
-
103
- message = "Custom headers #{active ? 'removed' : 'are added'}!"
104
- menu.sub!("Unset Custom headers", "Add Custom headers ") if active
105
- menu.sub!("Add Custom headers ", "Unset Custom headers") if !active
106
- when 3
107
- active = !opt_array.include?(:NO_ARCHIVE_GROUPS)
108
- opt_array << :NO_ARCHIVE_GROUPS if active
109
- opt_array.delete(:NO_ARCHIVE_GROUPS) if !active
110
-
111
- message = "X-No-Archive #{active ? 'removed' : 'is added'}!"
112
- menu.sub!("Unset X-No-Archive", "Add X-No-Archive ") if active
113
- menu.sub!("Add X-No-Archive ", "Unset X-No-Archive") if !active
114
- when 4
115
- active = !opt_array.include?(:VFY_URLS)
116
- opt_array << :VFY_URLS if active
117
- opt_array.delete(:VFY_URLS) if !active
118
-
119
- message = "URLS will #{active ? 'not ' : ''}" << "be verified!"
120
- menu.sub!("Do not correct URLs", "Correct URLs ") if active
121
- menu.sub!("Correct URLs ", "Do not correct URLs") if !active
122
- when 5
123
- active = !opt_array.include?(:DEBUG_LOG)
124
- opt_array << :DEBUG_LOG if active
125
- opt_array.delete(:DEBUG_LOG) if !active
126
-
127
- message = "Log is #{ active ? 'not ' : ''} " << "written!"
128
- menu.sub!("Disable log", "Enable log ") if active
129
- menu.sub!("Enable log ", "Disable log") if !active
130
- when 6
131
- message = "Summary of " << bold('disabled') << " options: " << opt_array.join(' ')
132
- end
70
+ loop do
71
+ system 'clear'
72
+ puts yellow(menu)
73
+ puts cyan(message)
74
+ option = wait_for_user - 48
75
+ case option
76
+ # Esc, Ctrl+C, 'q'
77
+ when -21, -45, 65
78
+ puts red('Aborting. Bye.')
79
+ ofl.write 'exit'
80
+ ofl.close
81
+ exit true
82
+ when 0
83
+ puts green('Applying changes.') if !opt_array.empty?
84
+ # write the list of variables to unset (others remain)
85
+ ofl.write opt_array.join(' ')
86
+ ofl.close
87
+ exit true
88
+
89
+ # toggle options
90
+ # ADD option to the option array, if it should be *removed*
91
+ # from the configuration, else remove it from the array.
92
+ when 1
93
+ active = !opt_array.include?(:GROUP_SIGS)
94
+ opt_array << :GROUP_SIGS if active
95
+ opt_array.delete(:GROUP_SIGS) if !active
96
+
97
+ message = "Signature #{active ? 'unset' : 'as configured'}!"
98
+ menu.sub!("Unset Signature", "Set Signature ") if active
99
+ menu.sub!("Set Signature ", "Unset Signature") if !active
100
+ when 2
101
+ active = !opt_array.include?(:CUSTOM_HEADERS)
102
+ opt_array << :CUSTOM_HEADERS if active
103
+ opt_array.delete(:CUSTOM_HEADERS) if !active
104
+
105
+ message = "Custom headers #{active ? 'removed' : 'are added'}!"
106
+ menu.sub!("Unset Custom headers", "Add Custom headers ") if active
107
+ menu.sub!("Add Custom headers ", "Unset Custom headers") if !active
108
+ when 3
109
+ active = !opt_array.include?(:XNAY_GROUPS)
110
+ opt_array << :XNAY_GROUPS if active
111
+ opt_array.delete(:XNAY_GROUPS) if !active
112
+
113
+ message = "X-No-Archive #{active ? 'removed' : 'is added'}!"
114
+ menu.sub!("Unset X-No-Archive", "Add X-No-Archive ") if active
115
+ menu.sub!("Add X-No-Archive ", "Unset X-No-Archive") if !active
116
+ when 4
117
+ active = !opt_array.include?(:VFY_URLS)
118
+ opt_array << :VFY_URLS if active
119
+ opt_array.delete(:VFY_URLS) if !active
120
+
121
+ message = "URLS will #{active ? 'not ' : ''}" << "be verified!"
122
+ menu.sub!("Do not correct URLs", "Correct URLs ") if active
123
+ menu.sub!("Correct URLs ", "Do not correct URLs") if !active
124
+ when 5
125
+ active = !opt_array.include?(:DEBUG_LOG)
126
+ opt_array << :DEBUG_LOG if active
127
+ opt_array.delete(:DEBUG_LOG) if !active
128
+
129
+ message = "Log is #{ active ? 'not ' : ''} " << "written!"
130
+ menu.sub!("Disable log", "Enable log ") if active
131
+ menu.sub!("Enable log ", "Disable log") if !active
132
+ when 6
133
+ message = "Summary of " << bold('disabled') << " options: " << opt_array.join(' ')
133
134
  end
134
- else # ARGV
135
- puts red('missing file argument')
136
- exit false
137
135
  end
138
136
 
139
-
data/lib/version.rb CHANGED
@@ -14,9 +14,8 @@
14
14
  =end
15
15
 
16
16
  PROGNAME = 'flnews_post_proc'
17
- PROGVERSION = "1.7"
17
+ PROGVERSION = "1.40"
18
18
  AUTHORS = "Michael Uplawski"
19
19
  EMAIL = "michael.uplawski@uplawski.eu"
20
20
  YEARS = "2023 - 2024"
21
- SUMMARY = "Reads random signature from file"
22
-
21
+ SUMMARY = "Moved the override-dialog scripts from the executables directory to lib"
data/lib/whiptail_dlg CHANGED
@@ -16,11 +16,6 @@
16
16
  # The main difficulty arises from the fact that positive defaults
17
17
  # are negated, while a checklist wants to give positive results.
18
18
 
19
- if [ $# -eq 0 ]
20
- then
21
- echo "ERROR: file-argument missing"
22
- exit 1
23
- fi
24
19
  OUTFILE="$1"
25
20
 
26
21
  # empty the file
@@ -30,10 +25,10 @@ TITLE="Override post-processor configuration"
30
25
  CHECKTITLE="Deselect to disable. Esc or Cancel close the dialog and no changes will be applied."
31
26
 
32
27
  # These are the configuration variables which can be unset.
33
- VARS=(GROUP_SIGS CUSTOM_HEADERS NO_ARCHIVE_GROUPS VFY_URLS DEBUG_LOG)
28
+ VARS=(GROUP_SIGS CUSTOM_HEADERS XNAY_GROUPS VFY_URLS DEBUG_LOG)
34
29
 
35
30
  # Checklist options
36
- options=(GROUP_SIGS 'Signatures' ON CUSTOM_HEADERS 'Custom headers' ON NO_ARCHIVE_GROUPS 'No Archive' ON VFY_URLS 'Correct URLs' ON DEBUG_LOG 'Log' ON)
31
+ options=(GROUP_SIGS 'Signatures' ON CUSTOM_HEADERS 'Custom headers' ON XNAY_GROUPS 'X-No-Archive' ON VFY_URLS 'Correct URLs' ON DEBUG_LOG 'Log' ON)
37
32
 
38
33
  # show dialog and store results
39
34
  result=$(whiptail --title "$TITLE" --checklist "$CHECKTITLE" 13 55 5 "${options[@]}" 3>&1 1>&2 2>&3)
data/lib/yad_dlg CHANGED
@@ -18,17 +18,16 @@ TITLE="Override post-processor configuration"
18
18
  # unset.
19
19
  GROUP_SIGS=1
20
20
  CUSTOM_HEADERS=2
21
- NO_ARCHIVE_GROUPS=3
22
- #VFY_URLS=4
23
- DEBUG_LOG=4
24
-
25
- CONF=$(yad --item-separator=" " --title "$TITLE" --image="" --window-icon="" --form \
26
- --field="Uncheck to disable options\n<b>Esc and Cancel</b> terminate the post-processor.":LBL ""\
27
- --field="Signature":CHK 'true' \
28
- --field="Custom-headers":CHK 'true' \
29
- --field="No Archive":CHK 'true' \
30
- --field="URL Correction":CHK 'true' \
31
- --field="Log":CHK 'true')
21
+ XNAY_GROUPS=3
22
+ VFY_URLS=4
23
+ DEBUG_LOG=5
24
+ CONF=($(yad --item-separator=" " --title "$TITLE" --image="" --window-icon="" --form \
25
+ --field="Uncheck to disable options\n<b>Esc and Cancel</b> terminate the post-processor.":LBL ""\
26
+ --field="Signature":CHK 'true' \
27
+ --field="Custom-headers":CHK 'true' \
28
+ --field="XNAY":CHK 'true' \
29
+ --field="URL Correction":CHK 'true' \
30
+ --field="Log":CHK 'true'))
32
31
 
33
32
  if [ $? == 0 ]
34
33
  then
@@ -39,7 +38,7 @@ then
39
38
  # echo ${C_ARR[@]}
40
39
  # <-------------
41
40
 
42
- for i in GROUP_SIGS CUSTOM_HEADERS NO_ARCHIVE_GROUPS VFY_URLS DEBUG_LOG
41
+ for i in GROUP_SIGS CUSTOM_HEADERS XNAY_GROUPS VFY_URLS DEBUG_LOG
43
42
  do
44
43
  if [ 'FALSE' == "${C_ARR[$i]}" ]
45
44
  then
data/lib/zenity_dlg CHANGED
@@ -17,12 +17,12 @@ TITLE="Override post-processor configuration"
17
17
  # The options are the configuration variables which can be unset.
18
18
 
19
19
  CONF=$(zenity --title "$TITLE" --text "Deselect options to disable.\n<b>Esc and Cancel</b> terminate the post-processor."\
20
- --height 450 --list --checklist --column 'set' --column 'Option' --column '' \
21
- TRUE GROUP_SIGS Signature\
22
- TRUE CUSTOM_HEADERS "Custom Headers"\
23
- TRUE NO_ARCHIVE_GROUPS "No Archive"\
24
- TRUE VFY_URLS "Correct URLs"\
25
- TRUE DEBUG_LOG Log)
20
+ --height 450 --list --checklist --column 'set' --column 'Option' --column '' \
21
+ TRUE GROUP_SIGS Signature\
22
+ TRUE CUSTOM_HEADERS "Custom Headers"\
23
+ TRUE XNAY_GROUPS "X-No-Archive"\
24
+ TRUE VFY_URLS "Correct URLs"\
25
+ TRUE DEBUG_LOG Log)
26
26
 
27
27
  if [ $? == 0 ]
28
28
  then
@@ -33,8 +33,7 @@ then
33
33
  # echo ${C_ARR[@]}
34
34
  # <-------------
35
35
 
36
- # for c in GROUP_SIGS CUSTOM_HEADERS NO_ARCHIVE_GROUPS VFY_URLS DEBUG_LOG
37
- for c in GROUP_SIGS CUSTOM_HEADERS NO_ARCHIVE_GROUPS DEBUG_LOG
36
+ for c in GROUP_SIGS CUSTOM_HEADERS XNAY_GROUPS VFY_URLS DEBUG_LOG
38
37
  do
39
38
  # disable only the options which are missing in
40
39
  # the Zenity return value
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flnews_post_proc
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.7'
4
+ version: '1.40'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Uplawski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-21 00:00:00.000000000 Z
11
+ date: 2024-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diffy
@@ -30,27 +30,7 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 3.4.2
33
- - !ruby/object:Gem::Dependency
34
- name: ruby-filemagic
35
- requirement: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '0.7'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 0.7.3
43
- type: :runtime
44
- prerelease: false
45
- version_requirements: !ruby/object:Gem::Requirement
46
- requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '0.7'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 0.7.3
53
- description: Post-processor for Usenet-articles created in flnews
33
+ description: Post-processor for Usenet-articles created in FLNews
54
34
  email: michael.uplawski@uplawski.eu
55
35
  executables:
56
36
  - flnews_post_proc
@@ -59,16 +39,15 @@ extra_rdoc_files: []
59
39
  files:
60
40
  - README.md
61
41
  - bin/flnews_post_proc
62
- - doc/fr/html/flnews_post_proc.html
63
- - doc/fr/man/flnews_post_proc.1.gz
64
- - doc/fr/pdf/flnews_post_proc.pdf
65
- - doc/fr/rst/flnews_post_proc.rst
66
42
  - doc/html/flnews_post_proc.html
43
+ - doc/html/flnews_post_proc_fr.html
67
44
  - doc/license.txt
68
45
  - doc/man/flnews_post_proc.1.gz
46
+ - doc/man/flnews_post_proc_fr.1.gz
69
47
  - doc/pdf/flnews_post_proc.pdf
48
+ - doc/pdf/flnews_post_proc_fr.pdf
70
49
  - doc/rst/flnews_post_proc.rst
71
- - lib/_quoting_style_regexp
50
+ - doc/rst/flnews_post_proc_fr.rst
72
51
  - lib/basic_logging.rb
73
52
  - lib/body.rb
74
53
  - lib/color_output.rb
@@ -102,8 +81,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
81
  - !ruby/object:Gem::Version
103
82
  version: '0'
104
83
  requirements: []
105
- rubygems_version: 3.5.3
84
+ rubygems_version: 3.4.20
106
85
  signing_key:
107
86
  specification_version: 4
108
- summary: Reads random signature from file
87
+ summary: Moved the override-dialog scripts from the executables directory to lib
109
88
  test_files: []
Binary file