my_help 0.6.2 → 0.7.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.
@@ -1,172 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- require "optparse"
3
- require "yaml"
4
- require "my_help/version"
5
- require 'fileutils'
6
- require "coderay"
7
- require 'colorize'
8
- require "thor"
9
-
10
- module SpecificHelp
11
- class Command < Thor
12
- # def self.start(file,*args)
13
- # new(file,*args).execute
14
- # end
15
- def initialize(*args)
16
- super
17
- # p ENV['HELP_NAME']
18
- file=File.join(ENV['HOME'],'.my_help',"#{ENV['HELP_NAME']}.yml")
19
- puts "@initialize\n"
20
-
21
- @source_file = file
22
- @help_cont = YAML.load(File.read(@source_file))
23
- @help_cont[:head].each{|line| print line.chomp+"\n" } if @help_cont[:head] != nil
24
- @help_cont[:license].each{|line| print "#{line.chomp}\n" } if @help_cont[:license] != nil
25
- @argv = *args
26
- end
27
-
28
- desc 'backup NAME, --backup NAME','backup NAME help'
29
- map "--backup" => "backup"
30
- def backup(val)
31
- val = val || 10
32
- print "\n ...showing last #{val} stored items in backup.\n"
33
- backup=mk_backup_file(@source_file)
34
- File.open(backup,'r'){|file|
35
- backup_cont = YAML.load(File.read(backup))
36
- backup_size = backup_cont.size
37
- backup_size = backup_size>val.to_i ? val.to_i : backup_size
38
- backup_keys = backup_cont.keys
39
- backup_keys.reverse.each_with_index{|item,i|
40
- break if i>=backup_size
41
- line = item.to_s.split('_')
42
- printf("%10s : %8s%8s\n",line[0],line[1],line[2])
43
- }
44
- }
45
- end
46
-
47
- desc 'store NAME, --store','store NAME help'
48
- map "--store" => "store"
49
- def store(item)
50
- if item==nil
51
- print "spcify --store [item].\n"
52
- exit
53
- else
54
- print "Trying to store #{item}\n"
55
- end
56
- backup=mk_backup_file(@source_file)
57
- unless store_item = @help_cont[item.to_sym] then
58
- print "No #{item} in this help. The items are following...\n"
59
- keys = @help_cont.keys
60
- keys.each{|key|
61
- p key
62
- }
63
- exit
64
- end
65
- p store_name = item+"_"+Time.now.strftime("%Y%m%d_%H%M%S")
66
- cont = {store_name.to_sym => store_item}
67
- backup_cont=YAML.load(File.read(backup)) || {}
68
- backup_cont[store_name.to_sym]=store_item
69
- File.open(backup,'w'){|file| file.print(YAML.dump(backup_cont))}
70
- end
71
-
72
- desc 'add NAME, --add NAME','add NAME help'
73
- map "--add" => "add"
74
- def add(item='new_item')
75
- print "Trying to add #{item}\n"
76
- new_item={:opts=>{:short=>'-'+item[0], :long=>'--'+item, :desc=>item},
77
- :title=>item, :cont=> [item]}
78
- @help_cont[item.to_sym]=new_item
79
- File.open(@source_file,'w'){|file| file.print YAML.dump(@help_cont)}
80
- end
81
-
82
- desc 'remove NAME, --remove NAME','remove NAME help'
83
- map "--remove" => "remove"
84
- def remove(item)
85
- print "Trying to remove #{item}\n"
86
- store(item)
87
- @help_cont.delete(item.to_sym)
88
- File.open(@source_file,'w'){|file| file.print YAML.dump(@help_cont)}
89
- end
90
-
91
- desc 'edit, --edit','edit help'
92
- map "--edit" => "edit"
93
- def edit
94
- puts "@edit\n"
95
- p help_file =@source_file
96
- begin
97
- p command= "emacs #{help_file}"
98
- exec command
99
- rescue => e
100
- print "\nOption edit is not executable on windows. \n"
101
- print "Type the following shell command;\n\n"
102
- print "emacs /home/#{ENV['USER']}/.my_help/#{File.basename(@source_file)}\n\n"
103
- print "M-x ruby-mode should be good for edit.\n"
104
- end
105
- end
106
-
107
- desc 'hiki, --hiki','hiki help'
108
- map "--hiki" => "hiki"
109
- def hiki
110
- @help_cont.each_pair{|key,val|
111
- if key==:head or key==:license
112
- hiki_disp(val)
113
- else
114
- hiki_help(key)
115
- end
116
- }
117
- end
118
-
119
- desc 'all, --all','all help'
120
- map "--all" => "all"
121
- def all
122
- @help_cont.each_pair{|key,val|
123
- if key==:head or key==:license
124
- val[0]+=":"
125
- disp(val)
126
- else
127
- disp_help(key)
128
- end
129
- }
130
- end
131
-
132
- no_commands do
133
-
134
- def mk_backup_file(file)
135
- path = File.dirname(file)
136
- base = File.basename(file)
137
- backup= File.join(path,"."+base)
138
- FileUtils.touch(backup) unless File.exists?(backup)
139
- return backup
140
- end
141
-
142
- def hiki_help(key_word)
143
- items =@help_cont[key_word]
144
- puts "\n!!"+items[:title]+"\n"
145
- hiki_disp(items[:cont])
146
- end
147
-
148
- def hiki_disp(lines)
149
- lines.each{|line| puts "*#{line}"} if lines != nil
150
- end
151
-
152
- def disp_help(key_word)
153
- print_separater
154
- items =@help_cont[key_word]
155
- puts items[:title].magenta
156
- # puts CodeRay.scan("-#{items[:title]}:", :Taskpaper).term
157
- disp(items[:cont])
158
- print_separater
159
- end
160
-
161
- def disp(lines)
162
- # lines.each{|line| puts " +#{line}"} if lines != nil
163
- lines.each{|line| puts "*#{line}".blue}
164
- # lines.each{|line| puts CodeRay.scan("+#{line}", :Taskpaper).term}
165
- end
166
-
167
- def print_separater
168
- print "---\n"
169
- end
170
- end
171
- end
172
- end
@@ -1,5 +0,0 @@
1
- #!/bin/sh
2
-
3
- sed "/FROM alpine:3.7/a\\
4
- \nENV http_proxy '$http_proxy'\\
5
- ENV https_proxy '$https_proxy'" Dockerfile.template > Dockerfile