markup-email 1.0.0 → 1.0.1
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 +4 -4
- data/README.md +70 -0
- data/bin/markup-email +10 -1
- data/lib/markup_email/meta.rb +1 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5848ea7ff048c4eb8f664692385323318d417f1e
|
4
|
+
data.tar.gz: c69df35ab4ff7a26bb466b1b60e6895cd01b29ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ecd3ff77e1fafdd3418f20b5e2e9754f66d36ccc9bdeac51babcffd18b0114bf0e2023c510f57d12750b9e3f9ec5a3ba8eb0f7b577b3781b605e8f28f76b3d56
|
7
|
+
data.tar.gz: 7781af8eb3d7dd88fa076a6f00c73328a844a2080d06e6a3d21c0c31cf67d8898f79103ed32f8e8a5d7356c2d482bfc0761b05499847c294d9a6938743d19d5d
|
data/README.md
CHANGED
@@ -1,2 +1,72 @@
|
|
1
1
|
# MarkupEmail
|
2
2
|
> Converting Markup to e-mails
|
3
|
+
|
4
|
+
## Installation
|
5
|
+
From [rubygems.org](https://rubygems.org/gems/markup-email)
|
6
|
+
```shell
|
7
|
+
gem install markup-email
|
8
|
+
# Then use the executables
|
9
|
+
markup-email [file] [options]
|
10
|
+
```
|
11
|
+
From source (without gems)
|
12
|
+
```shell
|
13
|
+
git clone https://github.com/Demonstrandum/MarkupEmail.git && cd MarkupEmail
|
14
|
+
cat *.gemspec # Read through and download all runtime dependencies
|
15
|
+
ruby -Ilib bin/markup-email [file] [options] # Then you can use the program
|
16
|
+
```
|
17
|
+
|
18
|
+
## Usage
|
19
|
+
Basic usage:
|
20
|
+
`markup-email [markup file] [options]`<br />
|
21
|
+
e.g. `markup-email -s email.md -t 'Special E-mail'`
|
22
|
+
|
23
|
+
Options:
|
24
|
+
|
25
|
+
| Option | Description |
|
26
|
+
| ----------------------|:-------------:|
|
27
|
+
| -s, --sanitize | Sanitizes all html/markdown by removing potentialy harmful tags or their attributes |
|
28
|
+
| -t, --title | The subsequent word/argument will be set as the title |
|
29
|
+
| -h, --help, help | Brings up the help menu (same as this) |
|
30
|
+
|
31
|
+
|
32
|
+
Your chosen markdown requires these packages accordingly:
|
33
|
+
- .markdown, .mdown, .mkdn, .md -- `gem install commonmarker`
|
34
|
+
- .textile -- `gem install RedCloth`
|
35
|
+
- .rdoc -- `gem install rdoc -v 3.6.1`
|
36
|
+
- .org -- `gem install org-ruby`
|
37
|
+
- .creole -- `gem install creole`
|
38
|
+
- .mediawiki, .wiki -- `gem install wikicloth`
|
39
|
+
- .rst -- `python3 -m pip install sphinx`
|
40
|
+
- .asciidoc, .adoc, .asc -- `gem install asciidoctor`
|
41
|
+
- .pod -- Pod::Simple::XHTML comes with Perl >= 5.10.
|
42
|
+
|
43
|
+
Delete the example `.html` in this repo's `examples` folder and generate it yourself
|
44
|
+
```shell
|
45
|
+
$ markup-email -s -t veryExampleWow examples/example.md
|
46
|
+
|
47
|
+
Title is : veryExampleWow
|
48
|
+
Filename is : veryExampleWow.html
|
49
|
+
|
50
|
+
Markup/HTML will be sanitized,
|
51
|
+
(`class=...` attributes and <script> tags will be disalowed).
|
52
|
+
```
|
53
|
+
### E-mail it
|
54
|
+
Then open `examples/veryExampleWow.html` in your browser and see for yourself, then you can open it in a text-editor, view the source and copy it in to your e-mail editor as `HTML` source.
|
55
|
+
|
56
|
+
## In Ruby
|
57
|
+
*Can* also be used in Ruby
|
58
|
+
```ruby
|
59
|
+
require 'markup_email'
|
60
|
+
|
61
|
+
file = ... # Markdup file
|
62
|
+
title = ... # Title of the page
|
63
|
+
|
64
|
+
markup = MarkupEmail::Convert.new(file, title, sanitize)
|
65
|
+
puts markup.content # Will print the pure HTML
|
66
|
+
|
67
|
+
markup.write "#{file.split('.')[0..-2].join('.')}-converted.html" # Makes a new file
|
68
|
+
# If `file` was equal to "hello.there.md"
|
69
|
+
# then the new file from `markup.write()` would be called
|
70
|
+
# "hello.there-converted.html"
|
71
|
+
```
|
72
|
+
If this is not sufficient, perhaps see the [rubydoc.info](http://www.rubydoc.info/gems/markup-email/MarkupEmail/) for autogenerated documentation.
|
data/bin/markup-email
CHANGED
@@ -12,7 +12,16 @@ if '-h'.arg? || '--help'.arg? || 'help'.arg?
|
|
12
12
|
|
13
13
|
Basic usage:
|
14
14
|
markup-email [markup file] [options]
|
15
|
-
e.g. `markup-email email.
|
15
|
+
e.g. `markup-email email.md`
|
16
|
+
|
17
|
+
Options:
|
18
|
+
-s, --sanitize Sanitizes all html/markdown by removing
|
19
|
+
potentialy harmful tags or their attributes
|
20
|
+
|
21
|
+
-t, --title The subsequent word/argument will be set as
|
22
|
+
the title
|
23
|
+
|
24
|
+
-h, --help, help Brings up this menu.
|
16
25
|
|
17
26
|
Your chosen markdown requires these packages accordingly:
|
18
27
|
- .markdown, .mdown, .mkdn, .md -- `gem install commonmarker`
|
data/lib/markup_email/meta.rb
CHANGED
@@ -8,6 +8,7 @@ require 'rouge'
|
|
8
8
|
module MarkupEmail
|
9
9
|
class HTMLify
|
10
10
|
attr_accessor :title
|
11
|
+
attr_reader :content
|
11
12
|
def initialize content
|
12
13
|
@content = content
|
13
14
|
end
|
@@ -52,10 +53,7 @@ HTML
|
|
52
53
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
53
54
|
HTML
|
54
55
|
|
55
|
-
#
|
56
56
|
@content = document.to_s
|
57
57
|
end
|
58
|
-
|
59
|
-
def content; @content; end
|
60
58
|
end
|
61
59
|
end
|