maillinks 1.1 → 1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d083333310f5787e778bb24a2532f2c9f284b2a1576c1c2db1942f3224bb738f
4
- data.tar.gz: 27619b93b517807ad3b23eecc737bd830db63f0e98f721a9796a0f3c159403d7
3
+ metadata.gz: '097b42d44248b22bfedaa4bd1393bd1422607af0e3e18d6f87380c5dff149b18'
4
+ data.tar.gz: b1a42aaecec83dea60dd998e01e0ab1cbb6b09cbdfe79d1979da9f7e12b97fea
5
5
  SHA512:
6
- metadata.gz: 240b806c7dd973e3fd7babe3caab44e132848a51f08a98ff1a821267f8de0654424ccc179cc762fb87f7d6afebd21cdf4a8faa0cc3a93811e273d5b91392963d
7
- data.tar.gz: c8a5c84f1344f47cfd184e1712c32af6a1d21dfeca128846a58ef6b8ed441e8a5c56183e09ead59d06f6c3fff8a4b23d6c9189821dfddc3295cbcafed3817284
6
+ metadata.gz: '09c7aade1caafca6d93ecf9988f162a941acae1b28cb5e486f3c12faf2d5440abea816fb241b36de7ede8457b0c4e57fa8495d55e37c45d680c0dc1e23c10ea3'
7
+ data.tar.gz: b27765c032f3ffeff0f23bfab4814a9d6ab9f93fa82b8d3ed2cda67ad2a7766eb1039ae28d98fae4b137aae2f3f0d026fe154884cd8b80dd26f73129ceff9a9a
data/changes.txt CHANGED
@@ -1,8 +1,19 @@
1
+ v
2
+ -) The man page can be installed automatically, if the maillinks gem
3
+ is already installed on the current system. Initially call
4
+ gem manpages --update-all to ensure that the man pages for all
5
+ gems including such documentation is moved to the standard locations
6
+ on the system, also for the gems installed thereafter.
7
+
1
8
  v 1.1
2
9
  -) Bugfix: programming error corrected: :symbol.splt to :symbol.to_s.split
3
10
  The error only happens with invalid input files, the program will
4
11
  abort anyway.
5
12
 
13
+ -) The URLS of linked images are used as caption text in the list
14
+ of detected links. Previously, there had been no caption for
15
+ linked images.
16
+
6
17
  v 1.0
7
18
  Browser is opened via Process::spawn().
8
19
 
@@ -47,6 +47,8 @@
47
47
 
48
48
  <blockquote>
49
49
  <p>cat [mail-file] | maillinks</p>
50
+
51
+ <p>maillinks &lt; [mail-file]</p>
50
52
  </blockquote>
51
53
  </section>
52
54
 
@@ -133,7 +135,7 @@
133
135
  <dt>Version</dt>
134
136
 
135
137
  <dd>
136
- <p>0.2.1 (April 2026)</p>
138
+ <p>1.1 (September 2026)</p>
137
139
  </dd>
138
140
  </dl>
139
141
 
@@ -166,12 +168,25 @@
166
168
  "https://creativecommons.org/licenses/by-nd/4.0/">CC BY-ND
167
169
  4.0</a></p>
168
170
 
169
- <p>Date: 2026-04-28</p>
171
+ <p>Date: 2026-09-22</p>
172
+
173
+ <p>The man page can be accessed in the ordinary way, by
174
+ executing <em>man</em> maillinks, <strong>if</strong> the
175
+ <a class="reference external" href=
176
+ "https://rubygems.org/gems/manpages">manpages</a> gem is
177
+ installed. Initially, executing <em>gem manpages
178
+ --update-all</em> will ensure that the man pages for all
179
+ packages which provide such documentation are copied to the
180
+ default locations for man pages.</p>
170
181
 
171
182
  <p><strong>Ω</strong>
172
183
  </p>
173
184
  </section>
174
185
  </section>
175
186
  </main>
187
+
188
+ <div id='page_dt'>
189
+ 2026-09-22
190
+ </div>
176
191
  </body>
177
192
  </html>
Binary file
Binary file
@@ -15,6 +15,8 @@ or
15
15
 
16
16
  cat [mail-file] | maillinks
17
17
 
18
+ maillinks < [mail-file]
19
+
18
20
  Description
19
21
  ===========
20
22
  In a plain text email message, you will recognize URLs easily. In HTML-mails
@@ -74,7 +76,7 @@ Source-code and Development
74
76
  the data-archive with *tar -xzf*.
75
77
 
76
78
  Version
77
- 0.2.1 (April 2026)
79
+ 1.1 (September 2026)
78
80
 
79
81
  .. _WTFPL: https://www.wtfpl.net/about/
80
82
 
@@ -88,6 +90,7 @@ This document
88
90
  -------------
89
91
  .. _CC By-ND 4.0: https://creativecommons.org/licenses/by-nd/4.0/
90
92
  .. |date| date::
93
+ .. _manpages: https://rubygems.org/gems/manpages
91
94
 
92
95
  ©Michael Uplawski <michael.uplawski@uplawski.eu>
93
96
 
@@ -95,5 +98,10 @@ License: `CC BY-ND 4.0`_
95
98
 
96
99
  Date: |date|
97
100
 
101
+ The man page can be accessed in the ordinary way, by executing *man*
102
+ maillinks, **if** the `manpages`_ gem is installed. Initially, executing *gem
103
+ manpages --update-all* will ensure that the man pages for all packages which
104
+ provide such documentation are copied to the default locations for man pages.
105
+
98
106
  **Ω**
99
107
 
data/maillinks.gemspec CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
9
9
  s.description = "Marks in an email HTMl-links and creates a list of all links at the bottom of the mail-text. Best used with the Mutt MUA"
10
10
  s.authors = AUTHORS
11
11
  s.email = MAIL_ADDRESS
12
- s.files = %w~maillinks~.collect{|f| 'bin/' << f} + %w~constants.rb color_output.rb basic_logging.rb maillinks.rb ~.collect{|f| 'lib/' << f} + %w~html/maillinks.html man/maillinks.1.gz pdf/maillinks.pdf rst/maillinks.rst~.collect{|f| 'doc/' << f} + %w~maillinks.gemspec changes.txt~.collect{|f|f}
12
+ s.files = %w~maillinks~.collect{|f| 'bin/' << f} + %w~constants.rb color_output.rb basic_logging.rb maillinks.rb ~.collect{|f| 'lib/' << f} + %w~html/maillinks.html man/maillinks.1.gz pdf/maillinks.pdf rst/maillinks.rst~.collect{|f| 'doc/' << f} + %w~maillinks.gemspec changes.txt man/maillinks.1~.collect{|f|f}
13
13
  s.homepage = 'https://www.uplawski.eu/software'
14
14
  s.requirements = 'Linux, one of the browsers Dillo, W3M, Lynx, Brave-browser or Firefox'
15
15
  s.add_runtime_dependency 'nokogiri', '~> 1.19', '>= 1.19.0'
@@ -21,6 +21,6 @@ Gem::Specification.new do |s|
21
21
  s.metadata = {
22
22
  "homepage_uri" => 'https://www.uplawski.eu/software/',
23
23
  "documentation_uri" => 'https://www.uplawski.eu/software/maillinks/maillinks.html',
24
- "changelog_uri" => 'https://www.uplawski.eu/software/changelogs/changes_maillinks.txt'
24
+ "changelog_uri" => 'https://www.uplawski.eu/software/maillinks/changes.txt'
25
25
  }
26
26
  end
data/man/maillinks.1 ADDED
@@ -0,0 +1,131 @@
1
+ .\" Man page generated from reStructuredText
2
+ .\" by the Docutils 0.23 manpage writer.
3
+ .
4
+ .
5
+ .nr rst2man-indent-level 0
6
+ .
7
+ .de1 rstReportMargin
8
+ \\$1 \\n[an-margin]
9
+ level \\n[rst2man-indent-level]
10
+ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
11
+ -
12
+ \\n[rst2man-indent0]
13
+ \\n[rst2man-indent1]
14
+ \\n[rst2man-indent2]
15
+ ..
16
+ .de1 INDENT
17
+ .\" .rstReportMargin pre:
18
+ . RS \\$1
19
+ . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
20
+ . nr rst2man-indent-level +1
21
+ .\" .rstReportMargin post:
22
+ ..
23
+ .de UNINDENT
24
+ . RE
25
+ .\" indent \\n[an-margin]
26
+ .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
27
+ .nr rst2man-indent-level -1
28
+ .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
29
+ .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
30
+ ..
31
+ .TH maillinks "1" "Tue 22 Sep 2026" "2.0" "General Commands"
32
+ .SH Name
33
+ Maillinks \- Print out the URLs of hyperlinks in HTML-mail.
34
+ .SH Synopsis
35
+ .INDENT 0.0
36
+ .INDENT 3.5
37
+ maillinks [mail\-file]
38
+ .sp
39
+ maillinks [mail\-file] <log level>
40
+ .UNINDENT
41
+ .UNINDENT
42
+ .sp
43
+ or
44
+ .INDENT 0.0
45
+ .INDENT 3.5
46
+ cat [mail\-file] | maillinks
47
+ .sp
48
+ maillinks < [mail\-file]
49
+ .UNINDENT
50
+ .UNINDENT
51
+ .SH Description
52
+ .sp
53
+ In a plain text email message, you will recognize URLs easily. In HTML\-mails
54
+ they are most of the time part of a link\-tag and thus hidden by the caption
55
+ text which is shown instead. Not only because, nowadays, UBE and UCE are
56
+ composed with HTML, but in any case, before you take any risks, you should be
57
+ aware of where the click on such a link will lead you. Hyperlinks may include
58
+ directives which are likely to be addressed to a remotely running application.
59
+ .sp
60
+ \fIMaillinks\fP will find the URLs “behind” any hyperlink and show it in a footnote
61
+ below the email\-text. You can scrutinize the URL and find information about the
62
+ destination, before you engage your web\-browser or other tool to follow a link.
63
+ .sp
64
+ \fIMailLinks\fP displays the result, together with the original HTML\-mail in the
65
+ first Web\-Browser that can be executed. At the time of this writing, the
66
+ possible Browsers are: \fIDillo, W3M, Lynx, Brave\-Browser, Firefox\fP\&. If none of
67
+ these is found, the program aborts with an error message.
68
+ .SS Integration in mail\-clients
69
+ .sp
70
+ You can pipe in an email\-file to maillinks and thus create macros, where the
71
+ functionality is present in a mail\-client. In the Mutt user\-agent, to define a
72
+ shortcut, you note the following lines in your .muttrc file:
73
+ .INDENT 0.0
74
+ .INDENT 3.5
75
+ macro index M \(dq|maillinks \-\en\(dq \(dqcreate link\-list\(dq
76
+ .sp
77
+ macro pager M \(dq|maillinks \-\en\(dq \(dqcreate link\-list\(dq
78
+ .UNINDENT
79
+ .UNINDENT
80
+ .sp
81
+ Now you can push the \fIM\fP key either in the pager or in the mail index to pipe
82
+ in a selected mail to maillinks.
83
+ .sp
84
+ Consult the documentation of your own mail\-client to find out if, and how
85
+ macros or similar options can be configured.
86
+ .SH Options
87
+ .sp
88
+ When called with a mail file as first argument, \fIMaillinks\fP can interpret
89
+ as second argument a log level, to control the verboseness of the program
90
+ output. The default is \fIinfo\fP, but you can have more detailed console output
91
+ with \fIdebug\fP\&.
92
+ .sp
93
+ When used as a filter, reading from \fISTDIN\fP, \fBno additional arguments are
94
+ accepted\fP\&.
95
+ .SH Other Information
96
+ .INDENT 0.0
97
+ .TP
98
+ .B Source\-code and Development
99
+ \fIMaillinks\fP has been developed in Ruby and is published as a Ruby\-Gem. If you
100
+ have installed the program from the Gem\-file, then, to access the
101
+ source\-code, find Maillinks in the Gem\-directory for your Ruby\-version.
102
+ All source\-files found are in the sub\-directories \fI/bin\fP and \fI/lib\fP\&.
103
+ Alternatively, you can unpack the Gem\-file with \fItar \-xf\fP, then decompress
104
+ the data\-archive with \fItar \-xzf\fP\&.
105
+ .TP
106
+ .B Version
107
+ 1.1 (September 2026)
108
+ .UNINDENT
109
+ .INDENT 0.0
110
+ .TP
111
+ .B License
112
+ \fIMaillinks\fP is published under the conditions of the WTFPL \%<https://\:www\:.wtfpl\:.net/\:about/>, version 2.0.
113
+ .TP
114
+ .B Author
115
+ Michael Uplawski <\%<michael\:.uplawski@\:uplawski\:.eu>>
116
+ .UNINDENT
117
+ .SS This document
118
+ .sp
119
+ ©Michael Uplawski <\%<michael\:.uplawski@\:uplawski\:.eu>>
120
+ .sp
121
+ License: CC BY\-ND 4.0 \%<https://\:creativecommons\:.org/\:licenses/\:by-nd/\:4\:.0/>
122
+ .sp
123
+ Date: 2026\-09\-22
124
+ .sp
125
+ The man page can be accessed in the ordinary way, by executing \fIman\fP
126
+ maillinks, \fBif\fP the manpages \%<https://\:rubygems\:.org/\:gems/\:manpages> gem is installed. Initially, executing \fIgem
127
+ manpages \-\-update\-all\fP will ensure that the man pages for all packages which
128
+ provide such documentation are copied to the default locations for man pages.
129
+ .sp
130
+ \fBΩ\fP
131
+ .\" End of generated man page.
metadata CHANGED
@@ -1,129 +1,117 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maillinks
3
3
  version: !ruby/object:Gem::Version
4
- version: "1.1"
4
+ version: '1.2'
5
5
  platform: ruby
6
6
  authors:
7
- - Michael Uplawski
7
+ - Michael Uplawski
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-09-11 00:00:00.000000000 Z
10
+ date: 2026-09-22 00:00:00.000000000 Z
11
11
  dependencies:
12
- - !ruby/object:Gem::Dependency
13
- name: nokogiri
14
- requirement: !ruby/object:Gem::Requirement
15
- requirements:
16
- -
17
- - ~>
18
- - !ruby/object:Gem::Version
19
- version: "1.19"
20
- -
21
- - ">="
22
- - !ruby/object:Gem::Version
23
- version: 1.19.0
24
- type: :runtime
25
- prerelease: false
26
- version_requirements: !ruby/object:Gem::Requirement
27
- requirements:
28
- -
29
- - ~>
30
- - !ruby/object:Gem::Version
31
- version: "1.19"
32
- -
33
- - ">="
34
- - !ruby/object:Gem::Version
35
- version: 1.19.0
36
- - !ruby/object:Gem::Dependency
37
- name: escape
38
- requirement: !ruby/object:Gem::Requirement
39
- requirements:
40
- -
41
- - ~>
42
- - !ruby/object:Gem::Version
43
- version: "0.0"
44
- -
45
- - ">="
46
- - !ruby/object:Gem::Version
47
- version: 0.0.4
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- -
53
- - ~>
54
- - !ruby/object:Gem::Version
55
- version: "0.0"
56
- -
57
- - ">="
58
- - !ruby/object:Gem::Version
59
- version: 0.0.4
60
- - !ruby/object:Gem::Dependency
61
- name: mail
62
- requirement: !ruby/object:Gem::Requirement
63
- requirements:
64
- -
65
- - ~>
66
- - !ruby/object:Gem::Version
67
- version: "2.9"
68
- -
69
- - ">="
70
- - !ruby/object:Gem::Version
71
- version: 2.9.0
72
- type: :runtime
73
- prerelease: false
74
- version_requirements: !ruby/object:Gem::Requirement
75
- requirements:
76
- -
77
- - ~>
78
- - !ruby/object:Gem::Version
79
- version: "2.9"
80
- -
81
- - ">="
82
- - !ruby/object:Gem::Version
83
- version: 2.9.0
84
- description: Marks in an email HTMl-links and creates a list of all links at the bottom of the mail-text. Best used with the Mutt MUA
12
+ - !ruby/object:Gem::Dependency
13
+ name: nokogiri
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '1.19'
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: 1.19.0
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - "~>"
27
+ - !ruby/object:Gem::Version
28
+ version: '1.19'
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: 1.19.0
32
+ - !ruby/object:Gem::Dependency
33
+ name: escape
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - "~>"
37
+ - !ruby/object:Gem::Version
38
+ version: '0.0'
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: 0.0.4
42
+ type: :runtime
43
+ prerelease: false
44
+ version_requirements: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: '0.0'
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: 0.0.4
52
+ - !ruby/object:Gem::Dependency
53
+ name: mail
54
+ requirement: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - "~>"
57
+ - !ruby/object:Gem::Version
58
+ version: '2.9'
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 2.9.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.9'
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ version: 2.9.0
72
+ description: Marks in an email HTMl-links and creates a list of all links at the bottom
73
+ of the mail-text. Best used with the Mutt MUA
85
74
  email: michael.uplawski@uplawski.eu
86
75
  executables:
87
- - maillinks
76
+ - maillinks
88
77
  extensions: []
89
78
  extra_rdoc_files: []
90
79
  files:
91
- - bin/maillinks
92
- - changes.txt
93
- - doc/html/maillinks.html
94
- - doc/man/maillinks.1.gz
95
- - doc/pdf/maillinks.pdf
96
- - doc/rst/maillinks.rst
97
- - lib/basic_logging.rb
98
- - lib/color_output.rb
99
- - lib/constants.rb
100
- - lib/maillinks.rb
101
- - maillinks.gemspec
102
- homepage: "https://www.uplawski.eu/software"
80
+ - bin/maillinks
81
+ - changes.txt
82
+ - doc/html/maillinks.html
83
+ - doc/man/maillinks.1.gz
84
+ - doc/pdf/maillinks.pdf
85
+ - doc/rst/maillinks.rst
86
+ - lib/basic_logging.rb
87
+ - lib/color_output.rb
88
+ - lib/constants.rb
89
+ - lib/maillinks.rb
90
+ - maillinks.gemspec
91
+ - man/maillinks.1
92
+ homepage: https://www.uplawski.eu/software
103
93
  licenses:
104
- - WTFPL
94
+ - WTFPL
105
95
  metadata:
106
- homepage_uri: "https://www.uplawski.eu/software/"
107
- documentation_uri: "https://www.uplawski.eu/software/maillinks/maillinks.html"
108
- changelog_uri: "https://www.uplawski.eu/software/changelogs/changes_maillinks.txt"
96
+ homepage_uri: https://www.uplawski.eu/software/
97
+ documentation_uri: https://www.uplawski.eu/software/maillinks/maillinks.html
98
+ changelog_uri: https://www.uplawski.eu/software/maillinks/changes.txt
109
99
  rdoc_options: []
110
100
  require_paths:
111
- - lib
101
+ - lib
112
102
  required_ruby_version: !ruby/object:Gem::Requirement
113
103
  requirements:
114
- -
115
- - ">="
116
- - !ruby/object:Gem::Version
117
- version: "4.0"
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ version: '4.0'
118
107
  required_rubygems_version: !ruby/object:Gem::Requirement
119
108
  requirements:
120
- -
121
- - ">="
122
- - !ruby/object:Gem::Version
123
- version: "0"
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
124
112
  requirements:
125
- - "Linux, one of the browsers Dillo, W3M, Lynx, Brave-browser or Firefox"
126
- rubygems_version: 4.1.0.beta1
113
+ - Linux, one of the browsers Dillo, W3M, Lynx, Brave-browser or Firefox
114
+ rubygems_version: 4.0.20
127
115
  specification_version: 4
128
116
  summary: Documentation in HTML formatted. Alternative Browsers allowed.
129
117
  test_files: []