mayaml 4.0.4 → 5.0.0

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -13
  3. data/README.md +4 -4
  4. data/bin/mayaml-mutt-init +75 -0
  5. data/lib/mayaml/base.rb +19 -0
  6. data/lib/mayaml/mutt_account_alternates/generator.rb +29 -0
  7. data/lib/mayaml/mutt_account_alternates/presenter.rb +18 -0
  8. data/lib/mayaml/mutt_account_alternates/template.mustache +1 -0
  9. data/lib/mayaml/mutt_account_alternates/validator.rb +18 -0
  10. data/lib/mayaml/mutt_account_alternates.rb +32 -0
  11. data/lib/mayaml/mutt_account_creds/generator.rb +29 -0
  12. data/lib/mayaml/mutt_account_creds/presenter.rb +29 -0
  13. data/lib/mayaml/mutt_account_creds/template.mustache +8 -0
  14. data/lib/mayaml/mutt_account_creds/validator.rb +25 -0
  15. data/lib/mayaml/mutt_account_creds.rb +32 -0
  16. data/lib/mayaml/mutt_account_init/generator.rb +30 -0
  17. data/lib/mayaml/mutt_account_init/presenter.rb +37 -0
  18. data/lib/mayaml/mutt_account_init/template.mustache +3 -0
  19. data/lib/mayaml/mutt_account_init/validator.rb +24 -0
  20. data/lib/mayaml/mutt_account_init.rb +32 -0
  21. data/lib/mayaml/mutt_config_accounts.rb +19 -0
  22. data/lib/mayaml/mutt_config_default_account.rb +18 -0
  23. data/lib/mayaml/mutt_config_init.rb +20 -0
  24. data/lib/mayaml/mutt_config_static.rb +18 -0
  25. data/lib/mayaml/mutt_configs_accounts/handler.rb +30 -0
  26. data/lib/mayaml/mutt_configs_default_account/handler.rb +46 -0
  27. data/lib/mayaml/mutt_configs_init/handler.rb +37 -0
  28. data/lib/mayaml/mutt_configs_static/assets/account_chooser.sh +20 -0
  29. data/lib/mayaml/mutt_configs_static/assets/csk.muttrc +94 -0
  30. data/lib/mayaml/mutt_configs_static/assets/mailcap +4 -0
  31. data/lib/mayaml/mutt_configs_static/assets/muttrc +125 -0
  32. data/lib/mayaml/mutt_configs_static/handler.rb +40 -0
  33. data/lib/mayaml/version.rb +1 -18
  34. data/lib/mayaml.rb +3 -47
  35. metadata +82 -24
  36. data/bin/mayaml-check +0 -42
  37. data/lib/mayaml/error.rb +0 -23
  38. data/lib/mayaml/mail_account/builder.rb +0 -127
  39. data/lib/mayaml/mail_account/default_flag_validator.rb +0 -43
  40. data/lib/mayaml/mail_account/error.rb +0 -47
  41. data/lib/mayaml/mail_account/mailboxes_validator.rb +0 -53
  42. data/lib/mayaml/mail_account/port_validator.rb +0 -44
  43. data/lib/mayaml/mail_account/required_attributes_validator.rb +0 -91
  44. data/lib/mayaml/mail_account/smtp_protocol_validator.rb +0 -53
  45. data/lib/mayaml/mail_account/type_validator.rb +0 -53
  46. data/lib/mayaml/mail_account.rb +0 -47
  47. data/lib/mayaml/parser.rb +0 -29
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "mainapp/component"
4
+
5
+ module Mayaml
6
+ module MuttConfigsAccounts
7
+ class Handler
8
+ include ::Mainapp::Component
9
+ attr_struct :logger, :mutt_account_creds_generator
10
+
11
+ def execute(data, prefix_path)
12
+ data.map do |account_data|
13
+ key = build_path(prefix_path, account_data)
14
+ view = mutt_account_creds_generator.render account_data
15
+ {key => view}
16
+ end
17
+ end
18
+
19
+ private
20
+
21
+ def build_path(prefix_path, acc_data)
22
+ File.join(
23
+ prefix_path,
24
+ "accounts",
25
+ acc_data[:name]
26
+ )
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "mainapp/component"
4
+
5
+ module Mayaml
6
+ module MuttConfigsDefaultAccount
7
+ class Handler
8
+ include ::Mainapp::Component
9
+ attr_struct :logger
10
+
11
+ def execute(data, prefix_path)
12
+ account_data = default_account(data) || first_account(data)
13
+ return [] unless account_data
14
+ src = link_path(prefix_path)
15
+ dest = build_path(prefix_path, account_data)
16
+ [{src => dest}]
17
+ end
18
+
19
+ private
20
+
21
+ def default_account(data)
22
+ data.find { |account_data| account_data[:default] == true }
23
+ end
24
+
25
+ def first_account(data)
26
+ data.first
27
+ end
28
+
29
+ def link_path(prefix_path)
30
+ File.join(
31
+ prefix_path,
32
+ "accounts",
33
+ "current_acc"
34
+ )
35
+ end
36
+
37
+ def build_path(prefix_path, acc_data)
38
+ File.join(
39
+ prefix_path,
40
+ "accounts",
41
+ acc_data[:name]
42
+ )
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "mainapp/component"
4
+
5
+ module Mayaml
6
+ module MuttConfigsInit
7
+ class Handler
8
+ include ::Mainapp::Component
9
+ attr_struct :logger, :mutt_account_init_generator, :mutt_account_alternates_generator
10
+
11
+ def execute(data, prefix_path)
12
+ key = build_path(prefix_path)
13
+ view = compute_config data, prefix_path
14
+ [{key => view}]
15
+ end
16
+
17
+ private
18
+
19
+ def build_path(prefix_path)
20
+ File.join(
21
+ prefix_path,
22
+ "init.muttrc"
23
+ )
24
+ end
25
+
26
+ def compute_config(data, prefix_path)
27
+ view = "vim: filetype=muttrc\n\n"
28
+ view += data.map.with_index do |account_data, index|
29
+ mutt_account_init_generator.render index, prefix_path, account_data
30
+ end.join("\n")
31
+ view += "\n"
32
+ view += mutt_account_alternates_generator.render data
33
+ view
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/env bash
2
+ set -eo pipefail
3
+ [[ "$TRACE" ]] && set -x
4
+
5
+ CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
6
+ ACCOUNT_DIR="${CURRENT_DIR}/accounts"
7
+
8
+ main() {
9
+ local profile_file=$1; shift
10
+ ADDR=$(grep -e "^Delivered-To:" -e "^To:" | sed -e "s/^Delivered-To:\s//" -e "s/^To:\s//" | grep -Eio '\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b')
11
+ for email in $ADDR; do
12
+ account_file="${ACCOUNT_DIR}/${email}"
13
+ if [ -f "$account_file" ]; then
14
+ ln -sf $account_file ${ACCOUNT_DIR}/${profile_file}
15
+ return
16
+ fi
17
+ done
18
+ }
19
+
20
+ [[ "$0" == "$BASH_SOURCE" ]] && main "$@"
@@ -0,0 +1,94 @@
1
+ # vim: filetype=muttrc
2
+ #
3
+ # Mutt color file
4
+ # Maintainer: Jon Häggblad <jon@haeggblad.com>
5
+ # URL: http://www.haeggblad.com
6
+ # Last Change: 2013 May 17
7
+ # Version: 0.1
8
+ #
9
+ # Mutt colorscheme loosely inspired by vim colorscheme wombat.vim.
10
+
11
+ # --- vombatidae text colors ---
12
+ # color normal color230 color234
13
+ # color message color230 color234
14
+
15
+ # --- slightly less yellow text colors ---
16
+ color normal color253 color234 # mod
17
+ # color normal color253 color233 # mod
18
+ # color normal color253 default # mod
19
+ color indicator color230 color238
20
+ color status color101 color16
21
+ # color tree color113 color234
22
+ # color tree color173 color234
23
+ color tree color208 color234
24
+ color signature color102 color234
25
+ color message color253 color234
26
+ color attachment color117 color234
27
+ color error color30 color234
28
+ color tilde color130 color235
29
+
30
+ color search color100 default
31
+ color markers color138 default
32
+
33
+ # mono bold reverse
34
+ # color bold color173 color191
35
+ # mono underline reverse
36
+ # color underline color48 color191
37
+
38
+ color quoted color107 color234 # quoted text
39
+ color quoted1 color66 color234
40
+ color quoted2 color32 color234
41
+ color quoted3 color30 color234
42
+ color quoted4 color99 color234
43
+ color quoted5 color36 color234
44
+ color quoted6 color114 color234
45
+ color quoted7 color109 color234
46
+ color quoted8 color41 color234
47
+ #color quoted9 color138 color234
48
+
49
+ # color body cyan default "((ftp|http|https)://|news:)[^ >)\"\t]+"
50
+ # color body cyan default "[-a-z_0-9.+]+@[-a-z_0-9.]+"
51
+ # color body red default "(^| )\\*[-a-z0-9*]+\\*[,.?]?[ \n]"
52
+ # color body green default "(^| )_[-a-z0-9_]+_[,.?]?[\n]"
53
+ # color body red default "(^| )\\*[-a-z0-9*]+\\*[,.?]?[ \n]"
54
+ # color body green default "(^| )_[-a-z0-9_]+_[,.?]?[ \n]"
55
+ color index color245 color234 "~P" # messages from me
56
+ color index color202 color234 ~F # Flagged
57
+ color index color39 color234 ~N # New
58
+ color index color39 color234 ~O
59
+ color index color229 color22 ~T # Tagged
60
+ color index color236 color234 ~D # Deleted
61
+
62
+ # ---
63
+
64
+ #mono body reverse '^(subject):.*'
65
+ #color body brightwhite magenta '^(subject):.*'
66
+ #mono body reverse '[[:alpha:]][[:alnum:]-]+:'
67
+ #color body black cyan '[[:alpha:]][[:alnum:]-]+:'
68
+
69
+ # --- header ---
70
+
71
+ color hdrdefault color30 color233
72
+ color header color132 color233 '^date:'
73
+ color header color153 color233 '^(to|cc|bcc):'
74
+ color header color120 color233 '^from:'
75
+ color header color178 color233 '^subject:'
76
+ color header color31 color233 '^user-agent:'
77
+ color header color29 color233 '^reply-to:'
78
+
79
+ #color header magenta default '^(status|lines|date|received|sender|references):'
80
+ #color header magenta default '^(pr|mime|x-|user|return|content-)[^:]*:'
81
+ #color header brightyellow default '^content-type:'
82
+ #color header magenta default '^content-type: *text/plain'
83
+ # color header brightgreen default '^list-[^:]*:'
84
+ #mono header bold '^(subject):.*$'
85
+ #color header brightcyan default '^(disposition)'
86
+ #color header green default '^(mail-)?followup'
87
+ #color header white default '^reply'
88
+ #color header brightwhite default '^(resent)'
89
+ # color header brightwhite default '^from:'
90
+
91
+ #mono index bold '~h "^content-type: *(multipart/(mixed|signed|encrypted)|application/)"'
92
+ #color index green black '~h "^content-type: *multipart/(signed|encrypted)"'
93
+
94
+ #color sidebar_new color39 color234
@@ -0,0 +1,4 @@
1
+ # text/html; w3m -I %{charset} -T text/html; copiousoutput;
2
+ # text/html; elinks -dump ; copiousoutput;
3
+ text/html; elinks -eval "set document.codepage.assume = %{charset}" %s; nametemplate=%s.html
4
+ text/html; elinks -dump -dump-color-mode 3 -dump-charset utf-8 -default-mime-type text/htm -eval "set document.codepage.assume = %{charset}" %s; copiousoutput;
@@ -0,0 +1,125 @@
1
+ # Paths ----------------------------------------------
2
+ set folder = ~/.mails # mailbox location
3
+ set alias_file = ~/.mails/alias # where to store aliases
4
+ # set header_cache = ~/.mutt/cache/headers # where to store headers
5
+ # set message_cachedir = ~/.mutt/cache/bodies # where to store bodies
6
+ # set certificate_file = ~/.mutt/certificates # where to store certs
7
+ set mailcap_path = {{ prefix_path }}/mailcap # entries for filetypes
8
+ # set tmpdir = ~/.mutt/temp # where to keep temp files
9
+ # set signature = ~/.mutt/sig # my signature file
10
+
11
+ # Mailboxes to show in the sidebar.
12
+ mailboxes +INBOX \
13
+ +open \
14
+ +archive \
15
+ +drafts \
16
+ +trash \
17
+
18
+ # Default inbox.
19
+ set spoolfile = "+INBOX"
20
+
21
+ # Other special folders.
22
+ set mbox = "+open"
23
+ set postponed = "+drafts"
24
+ set record = "+INBOX"
25
+
26
+
27
+ # character set on messages that we send
28
+ set send_charset="utf-8"
29
+ # if there is no character set given on incoming messages, it is probably windows
30
+ set assumed_charset="iso-8859-1"
31
+ set editor="vim -c 'set syntax=mail ft=mail enc=utf-8 spell spelllang=pl,en'"
32
+ set markers=no
33
+
34
+ # Basic Options --------------------------------------
35
+ unset wait_key # no wait
36
+ set mbox_type = Maildir # mailbox type
37
+ set timeout = 3 # idle time before scanning
38
+ set mail_check = 1 # minimum time between scans
39
+ set mail_check_stats = yes
40
+ set mail_check_stats_interval = 5
41
+ set move # readed message to the mbox
42
+ set delete # don't ask, just do
43
+ unset confirmappend # don't ask, just do!
44
+ unset mark_old # read/new is good enough for me
45
+ # set beep_new # bell on new mails
46
+ set pipe_decode # strip headers and eval mimes when piping
47
+ # set thorough_search # strip headers and eval mimes before searching
48
+ set text_flowed # http://brianbuccola.com/line-breaks-in-mutt-and-vim/
49
+
50
+ # Sidebar Patch --------------------------------------
51
+ set sidebar_divider_char = ' │ '
52
+ set sidebar_visible = yes
53
+ set sidebar_width = 24
54
+ set sidebar_format = "%B%* %?N?%N/ ?%S"
55
+ color sidebar_new color221 color233
56
+ macro index "<PageUp>" "<sidebar-prev><sidebar-open>"
57
+ macro index "<PageDown>" "<sidebar-next><sidebar-open>"
58
+
59
+ # Status Bar -----------------------------------------
60
+ #set status_format = "───[ Folder: %f ]───[%r%m messages%?n? (%n new)?%?d? (%d to delete)?%?t? (%t tagged)? ]───%>─%?p?( %p postponed )?───"
61
+
62
+ # Header Options -------------------------------------
63
+ ignore * # ignore all headers
64
+ unignore from: to: cc: date: subject: # show only these
65
+ unhdr_order * # some distros order things by default
66
+ hdr_order date: to: cc: from: subject: # and in this order
67
+
68
+ # Index View Options ---------------------------------
69
+ set date_format = "%y-%m-%d %H:%M"
70
+ #set index_format="%4C %Z %{%b %d} %-16.16L %s"
71
+ #set index_format="%2C | %Z [%d] %-30.30F (%-4.4c) %s"
72
+ #set index_format= "[%Z] %D %-20.20F %s"
73
+ set index_format="%4C [%Z]%?X?%2X*& ? %s %* (%D) %-30.30L "
74
+ set sort = threads # like gmail
75
+ # set sort_aux = reverse-last-date-received # like gmail
76
+ # set uncollapse_jump # don't collapse on an unread message
77
+ # set sort_re # thread based on regex
78
+ # set reply_regexp = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*"
79
+
80
+ # Colours --------------------------------------------
81
+ source {{ prefix_path }}/csk.muttrc
82
+
83
+ # Account Settings -----------------------------------
84
+ set my_profile_file = "current_acc"
85
+ set smtp_authenticators="digest-md5:cram-md5:gssapi:login"
86
+
87
+ source {{ prefix_path }}/init.muttrc
88
+ source {{ prefix_path }}/accounts/$my_profile_file
89
+
90
+ # ============================================================================================
91
+ set query_command= "abook --mutt-query '%s'"
92
+ set pager_index_lines = 6
93
+
94
+ auto_view text/html # view html automatically
95
+ alternative_order text/plain text/enriched text/html # save html for last
96
+
97
+ attachments +A */.*
98
+ attachments -A text/x-vcard application/pgp.*
99
+ attachments -A application/x-pkcs7-.*
100
+
101
+ bind editor "<tab>" complete-query
102
+ bind editor "^T" complete
103
+ bind pager <Up> previous-line
104
+ bind pager <Down> next-line
105
+
106
+ macro index,pager r "<pipe-message>{{ prefix_path }}/account_chooser.sh $my_profile_file<enter>\
107
+ <enter-command>source {{ prefix_path }}/accounts/$my_profile_file<enter>\
108
+ <reply>" "Reply using specific account"
109
+ macro compose 'v' "<edit-from>^Umy_account_<complete>" "Select from"
110
+ macro index,pager "a" "<pipe-message>abook --add-email-quiet<enter>" "add the sender address to abook"
111
+ macro index,pager "A" "<shell-escape>abook<enter>" "launch abook"
112
+ macro pager \cb <pipe-entry>'urlscan'<enter> 'Follow links with urlview'
113
+ #macro pager \cv "<enter-command>set my_pdsave=\$pipe_decode<enter>\
114
+ #<enter-command>unset pipe_decode<enter>\
115
+ #<pipe-message>extract_url.pl | less<enter>\
116
+ #<enter-command>set pipe_decode=\$my_pdsave<enter>" "get URLs"
117
+
118
+ folder-hook . 'macro index,pager "<space>" "<display-message>"'
119
+ folder-hook . 'macro index,pager d "<save-message>=trash<enter>"'
120
+ folder-hook INBOX 'macro index "<space>" "<tag-prefix><save-message>=archive<enter>"'
121
+ folder-hook INBOX 'macro pager "<space>" "<save-message>=archive<enter>"'
122
+ folder-hook =open 'macro index "<space>" "<tag-prefix><save-message>=archive<enter>"'
123
+ folder-hook =open 'macro pager "<space>" "<save-message>=archive<enter>"'
124
+ folder-hook =trash 'push <delete-pattern>~r>30d!~F<enter>'
125
+ folder-hook =trash 'macro index,pager d <delete-message>'
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "mainapp/component"
4
+ require "mustache"
5
+
6
+ module Mayaml
7
+ module MuttConfigsStatic
8
+ class Handler
9
+ include ::Mainapp::Component
10
+ attr_struct :logger
11
+
12
+ def execute(prefix_path)
13
+ keys = %w[account_chooser.sh csk.muttrc mailcap muttrc]
14
+ keys.map do |config_file|
15
+ key = build_path(prefix_path, config_file)
16
+ value = ::Mustache.render assets_file_content(config_file), prefix_path: prefix_path
17
+ {key => value}
18
+ end
19
+ end
20
+
21
+ private
22
+
23
+ def build_path(prefix_path, config_file)
24
+ File.join(
25
+ prefix_path,
26
+ config_file
27
+ )
28
+ end
29
+
30
+ def assets_file_content(config_file)
31
+ path = File.join(
32
+ __dir__,
33
+ "assets",
34
+ config_file
35
+ )
36
+ File.read path
37
+ end
38
+ end
39
+ end
40
+ end
@@ -1,22 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (C) 2016, 2017, 2018 Szymon Kopciewski
4
- #
5
- # This file is part of Mayaml.
6
- #
7
- # This program is free software: you can redistribute it and/or modify
8
- # it under the terms of the GNU General Public License as published by
9
- # the Free Software Foundation, either version 3 of the License, or
10
- # (at your option) any later version.
11
- #
12
- # This program is distributed in the hope that it will be useful,
13
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- # GNU General Public License for more details.
16
- #
17
- # You should have received a copy of the GNU General Public License
18
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
-
20
3
  module Mayaml
21
- VERSION = "4.0.4"
4
+ VERSION = "5.0.0"
22
5
  end
data/lib/mayaml.rb CHANGED
@@ -1,49 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (C) 2016, 2017, 2018 Szymon Kopciewski
4
- #
5
- # This file is part of Mayaml.
6
- #
7
- # This program is free software: you can redistribute it and/or modify
8
- # it under the terms of the GNU General Public License as published by
9
- # the Free Software Foundation, either version 3 of the License, or
10
- # (at your option) any later version.
11
- #
12
- # This program is distributed in the hope that it will be useful,
13
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- # GNU General Public License for more details.
16
- #
17
- # You should have received a copy of the GNU General Public License
18
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
-
20
- require "mayaml/version"
21
- require "mayaml/mail_account/builder"
22
- require "mayaml/parser"
23
-
24
- module Mayaml
25
- def self.accounts_from_file(yaml_accounts)
26
- raw_accounts = Parser.get_accounts(yaml_accounts)
27
- raw_accounts.map do |raw_account|
28
- build_account(raw_account)
29
- end
30
- end
31
-
32
- def self.build_account(raw_account)
33
- MailAccount::Builder.build do |builder|
34
- builder.name raw_account.fetch("name")
35
- builder.default raw_account.fetch("default", "")
36
- builder.realname raw_account.fetch("realname")
37
- builder.type raw_account.fetch("type")
38
- builder.server raw_account.fetch("server")
39
- builder.port raw_account.fetch("port")
40
- builder.user raw_account.fetch("user")
41
- builder.pass raw_account.fetch("pass")
42
- builder.mailboxes raw_account.fetch("mailboxes", [])
43
- builder.smtp_protocol raw_account.fetch("smtp_protocol")
44
- builder.smtp_port raw_account.fetch("smtp_port")
45
- builder.smtp_authenticator raw_account.fetch("smtp_authenticator")
46
- builder.smtp_server raw_account.fetch("smtp_server")
47
- end
48
- end
49
- end
3
+ lib_dir = File.expand_path(".", __dir__)
4
+ $LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
5
+ Dir[File.join(lib_dir, "mayaml", "*.rb")].each { |path| require_relative path }
metadata CHANGED
@@ -1,17 +1,59 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mayaml
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.4
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Szymon Kopciewski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-07 00:00:00.000000000 Z
11
+ date: 2024-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: codeclimate-test-reporter
14
+ name: mainapp
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: mustache
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: ougai
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: debug
15
57
  requirement: !ruby/object:Gem::Requirement
16
58
  requirements:
17
59
  - - ">="
@@ -53,7 +95,7 @@ dependencies:
53
95
  - !ruby/object:Gem::Version
54
96
  version: '0'
55
97
  - !ruby/object:Gem::Dependency
56
- name: pry
98
+ name: rake
57
99
  requirement: !ruby/object:Gem::Requirement
58
100
  requirements:
59
101
  - - ">="
@@ -67,7 +109,7 @@ dependencies:
67
109
  - !ruby/object:Gem::Version
68
110
  version: '0'
69
111
  - !ruby/object:Gem::Dependency
70
- name: rake
112
+ name: simplecov
71
113
  requirement: !ruby/object:Gem::Requirement
72
114
  requirements:
73
115
  - - ">="
@@ -81,7 +123,7 @@ dependencies:
81
123
  - !ruby/object:Gem::Version
82
124
  version: '0'
83
125
  - !ruby/object:Gem::Dependency
84
- name: simplecov
126
+ name: yard
85
127
  requirement: !ruby/object:Gem::Requirement
86
128
  requirements:
87
129
  - - ">="
@@ -94,11 +136,11 @@ dependencies:
94
136
  - - ">="
95
137
  - !ruby/object:Gem::Version
96
138
  version: '0'
97
- description: Mail Accounts from Yaml parser - the base classes
139
+ description: Mail Accounts from Yaml config for mutt
98
140
  email:
99
- - s.kopciewski@gmail.com
141
+ - s.kopciewski@dlamnie.net
100
142
  executables:
101
- - mayaml-check
143
+ - mayaml-mutt-init
102
144
  extensions: []
103
145
  extra_rdoc_files: []
104
146
  files:
@@ -106,19 +148,36 @@ files:
106
148
  - Gemfile
107
149
  - LICENSE
108
150
  - README.md
109
- - bin/mayaml-check
151
+ - bin/mayaml-mutt-init
110
152
  - lib/mayaml.rb
111
- - lib/mayaml/error.rb
112
- - lib/mayaml/mail_account.rb
113
- - lib/mayaml/mail_account/builder.rb
114
- - lib/mayaml/mail_account/default_flag_validator.rb
115
- - lib/mayaml/mail_account/error.rb
116
- - lib/mayaml/mail_account/mailboxes_validator.rb
117
- - lib/mayaml/mail_account/port_validator.rb
118
- - lib/mayaml/mail_account/required_attributes_validator.rb
119
- - lib/mayaml/mail_account/smtp_protocol_validator.rb
120
- - lib/mayaml/mail_account/type_validator.rb
121
- - lib/mayaml/parser.rb
153
+ - lib/mayaml/base.rb
154
+ - lib/mayaml/mutt_account_alternates.rb
155
+ - lib/mayaml/mutt_account_alternates/generator.rb
156
+ - lib/mayaml/mutt_account_alternates/presenter.rb
157
+ - lib/mayaml/mutt_account_alternates/template.mustache
158
+ - lib/mayaml/mutt_account_alternates/validator.rb
159
+ - lib/mayaml/mutt_account_creds.rb
160
+ - lib/mayaml/mutt_account_creds/generator.rb
161
+ - lib/mayaml/mutt_account_creds/presenter.rb
162
+ - lib/mayaml/mutt_account_creds/template.mustache
163
+ - lib/mayaml/mutt_account_creds/validator.rb
164
+ - lib/mayaml/mutt_account_init.rb
165
+ - lib/mayaml/mutt_account_init/generator.rb
166
+ - lib/mayaml/mutt_account_init/presenter.rb
167
+ - lib/mayaml/mutt_account_init/template.mustache
168
+ - lib/mayaml/mutt_account_init/validator.rb
169
+ - lib/mayaml/mutt_config_accounts.rb
170
+ - lib/mayaml/mutt_config_default_account.rb
171
+ - lib/mayaml/mutt_config_init.rb
172
+ - lib/mayaml/mutt_config_static.rb
173
+ - lib/mayaml/mutt_configs_accounts/handler.rb
174
+ - lib/mayaml/mutt_configs_default_account/handler.rb
175
+ - lib/mayaml/mutt_configs_init/handler.rb
176
+ - lib/mayaml/mutt_configs_static/assets/account_chooser.sh
177
+ - lib/mayaml/mutt_configs_static/assets/csk.muttrc
178
+ - lib/mayaml/mutt_configs_static/assets/mailcap
179
+ - lib/mayaml/mutt_configs_static/assets/muttrc
180
+ - lib/mayaml/mutt_configs_static/handler.rb
122
181
  - lib/mayaml/version.rb
123
182
  homepage: https://github.com/skopciewski/mayaml
124
183
  licenses:
@@ -139,9 +198,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
198
  - !ruby/object:Gem::Version
140
199
  version: '0'
141
200
  requirements: []
142
- rubyforge_project:
143
- rubygems_version: 2.7.7
201
+ rubygems_version: 3.4.19
144
202
  signing_key:
145
203
  specification_version: 4
146
- summary: Mail Accounts from Yaml parser - the base classes
204
+ summary: Mail Accounts from Yaml comfig for mutt
147
205
  test_files: []