my_help 0.7.1 → 0.7.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 +4 -4
- data/.gitignore +1 -2
- data/Gemfile.lock +1 -1
- data/README.org +3 -3
- data/lib/my_help/my_help_controll.rb +20 -15
- data/lib/my_help/version.rb +1 -1
- data/{before_gli/lib/templates/emacs_help.org → lib/templates/emacs.org} +0 -0
- data/{before_gli/lib/templates/template_help.org → lib/templates/help_template.org} +0 -0
- data/{before_gli/lib/templates/org_help.org → lib/templates/org.org} +0 -0
- data/{before_gli/lib/templates/my_todo.org → lib/templates/todo.org} +2 -2
- metadata +6 -38
- data/before_gli/Dockerfile.template +0 -13
- data/before_gli/Gemfile +0 -5
- data/before_gli/Gemfile.lock +0 -63
- data/before_gli/bin/console +0 -14
- data/before_gli/bin/setup +0 -8
- data/before_gli/exe/e_h +0 -4
- data/before_gli/exe/emacs_help +0 -4
- data/before_gli/exe/m_t +0 -4
- data/before_gli/exe/my_help +0 -6
- data/before_gli/exe/my_todo +0 -4
- data/before_gli/exe/o_h +0 -4
- data/before_gli/exe/org_help +0 -4
- data/before_gli/lib/emacs_help.rb +0 -137
- data/before_gli/lib/my_help/my_help_controll.rb +0 -134
- data/before_gli/lib/my_help/org2yml.rb +0 -47
- data/before_gli/lib/my_help/specific_help.rb +0 -2
- data/before_gli/lib/my_help/test.rb +0 -29
- data/before_gli/lib/my_help/version.rb +0 -3
- data/before_gli/lib/my_help/yml2org.rb +0 -34
- data/before_gli/lib/my_help.rb +0 -204
- data/before_gli/lib/my_help_new.rb +0 -54
- data/before_gli/lib/my_help_thor.rb +0 -170
- data/before_gli/lib/specific_help.rb +0 -172
- data/before_gli/lib/specific_help_bu.rb +0 -233
- data/before_gli/lib/specific_help_opt.rb +0 -71
- data/before_gli/lib/specific_help_thor.rb +0 -172
- data/before_gli/make_docker.sh +0 -5
- data/before_gli/my_help.gemspec +0 -34
- data/lib/templates/emacs_help.org +0 -50
- data/lib/templates/my_todo.org +0 -11
- data/lib/templates/org_help.org +0 -64
- data/lib/templates/template_help.org +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2acf848b3e98662747f041251d65751f61991ab6
|
4
|
+
data.tar.gz: 96ddb81c7b0a6cc3baff1dc0f1bf866966d5d06c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a7ced46cde76b762d5bd7ade8cd53ae5f0dd83b038bab5e9b5bdf57827198bbf192a919cec9acbb94a8eef5fb38bed05aef3fc3ea56459ef9f4c5c79d2a615f8
|
7
|
+
data.tar.gz: b137ed36475e5338fd83fb992e869e7422ca8f0b35565ab5bb490cb81bb70a83978eac46fbfd88c84966bcd6ed6aa6dbbb8ca7d211ee447817742a10255c31ad
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
data/README.org
CHANGED
@@ -90,9 +90,9 @@ COMMANDS
|
|
90
90
|
としてください.このlistにargsやitemを加えて行くとわかると思います.
|
91
91
|
|
92
92
|
: my_help list
|
93
|
-
: my_help list
|
94
|
-
: my_help list
|
95
|
-
: my_help list
|
93
|
+
: my_help list emacs
|
94
|
+
: my_help list emacs -f
|
95
|
+
: my_help list emacs file
|
96
96
|
として動かしてみてください.
|
97
97
|
|
98
98
|
|
@@ -11,7 +11,7 @@ module MyHelp
|
|
11
11
|
return if File::exists?(@local_help_dir)
|
12
12
|
FileUtils.mkdir_p(@local_help_dir, :verbose=>true)
|
13
13
|
Dir.entries(@template_dir).each{|file|
|
14
|
-
next if file=='
|
14
|
+
next if file=='help_template.org'
|
15
15
|
file_path=File.join(@local_help_dir,file)
|
16
16
|
next if File::exists?(file_path)
|
17
17
|
FileUtils.cp((File.join(@template_dir,file)),@local_help_dir,:verbose=>true)
|
@@ -69,16 +69,19 @@ module MyHelp
|
|
69
69
|
help = auto_load(file_path)
|
70
70
|
next if help.nil?
|
71
71
|
desc = help[:head][:cont].split("\n")[0]
|
72
|
-
print
|
72
|
+
print title.rjust(10).blue
|
73
|
+
print ": #{desc}\n".blue
|
73
74
|
end
|
74
75
|
end
|
75
76
|
|
76
77
|
def edit_help(file)
|
77
|
-
target_help = File.join(@local_help_dir,file)
|
78
|
-
|
79
|
-
|
78
|
+
target_help = File.join(@local_help_dir,file+'.org')
|
79
|
+
if local_help_entries.member?(target_help)
|
80
|
+
system "emacs #{target_help}"
|
81
|
+
else
|
82
|
+
puts "file #{target_help} does not exits in #{@local_help_dir}."
|
83
|
+
puts "init #{file} first."
|
80
84
|
end
|
81
|
-
system "emacs #{target_help}"
|
82
85
|
end
|
83
86
|
|
84
87
|
def init_help(file)
|
@@ -88,10 +91,10 @@ module MyHelp
|
|
88
91
|
end
|
89
92
|
p target_help=File.join(@local_help_dir,file+'.org')
|
90
93
|
if File::exists?(target_help)
|
91
|
-
puts "File exists.
|
94
|
+
puts "File exists. delete it first to initialize it."
|
92
95
|
exit
|
93
96
|
end
|
94
|
-
p template = File.join(@template_dir,'
|
97
|
+
p template = File.join(@template_dir,'help_template.org')
|
95
98
|
FileUtils::Verbose.cp(template,target_help)
|
96
99
|
end
|
97
100
|
|
@@ -113,19 +116,21 @@ module MyHelp
|
|
113
116
|
def local_help_entries
|
114
117
|
entries= []
|
115
118
|
Dir.entries(@local_help_dir).each{|file|
|
116
|
-
next unless file.include?('_')
|
117
|
-
next if file[0]=='#' or file[-1]=='~' or file[0]=='.'
|
118
|
-
next if file.match(/(.+)_e\.org/) # OK?
|
119
|
-
next if file.match(/(.+)\.html/)
|
120
|
-
|
119
|
+
# next unless file.include?('_')
|
120
|
+
# next if file[0]=='#' or file[-1]=='~' or file[0]=='.'
|
121
|
+
# next if file.match(/(.+)_e\.org/) # OK?
|
122
|
+
# next if file.match(/(.+)\.html/)
|
123
|
+
if file.match(/(.+)\.org$/) # OK?
|
124
|
+
entries << file
|
125
|
+
end
|
121
126
|
}
|
122
127
|
return entries
|
123
128
|
end
|
124
129
|
|
125
130
|
def auto_load(file_path)
|
126
131
|
case File.extname(file_path)
|
127
|
-
when '.yml'
|
128
|
-
cont = YAML.load(File.read(file_path))
|
132
|
+
# when '.yml'
|
133
|
+
# cont = YAML.load(File.read(file_path))
|
129
134
|
when '.org'
|
130
135
|
cont = OrgToYaml.new(file_path).help_cont
|
131
136
|
else
|
data/lib/my_help/version.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: my_help
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Your Name Here
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-05-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -102,47 +102,15 @@ files:
|
|
102
102
|
- README_en.org
|
103
103
|
- Rakefile
|
104
104
|
- Rakefile_gli
|
105
|
-
- before_gli/Dockerfile.template
|
106
|
-
- before_gli/Gemfile
|
107
|
-
- before_gli/Gemfile.lock
|
108
|
-
- before_gli/bin/console
|
109
|
-
- before_gli/bin/setup
|
110
|
-
- before_gli/exe/e_h
|
111
|
-
- before_gli/exe/emacs_help
|
112
|
-
- before_gli/exe/m_t
|
113
|
-
- before_gli/exe/my_help
|
114
|
-
- before_gli/exe/my_todo
|
115
|
-
- before_gli/exe/o_h
|
116
|
-
- before_gli/exe/org_help
|
117
|
-
- before_gli/lib/emacs_help.rb
|
118
|
-
- before_gli/lib/my_help.rb
|
119
|
-
- before_gli/lib/my_help/my_help_controll.rb
|
120
|
-
- before_gli/lib/my_help/org2yml.rb
|
121
|
-
- before_gli/lib/my_help/specific_help.rb
|
122
|
-
- before_gli/lib/my_help/test.rb
|
123
|
-
- before_gli/lib/my_help/version.rb
|
124
|
-
- before_gli/lib/my_help/yml2org.rb
|
125
|
-
- before_gli/lib/my_help_new.rb
|
126
|
-
- before_gli/lib/my_help_thor.rb
|
127
|
-
- before_gli/lib/specific_help.rb
|
128
|
-
- before_gli/lib/specific_help_bu.rb
|
129
|
-
- before_gli/lib/specific_help_opt.rb
|
130
|
-
- before_gli/lib/specific_help_thor.rb
|
131
|
-
- before_gli/lib/templates/emacs_help.org
|
132
|
-
- before_gli/lib/templates/my_todo.org
|
133
|
-
- before_gli/lib/templates/org_help.org
|
134
|
-
- before_gli/lib/templates/template_help.org
|
135
|
-
- before_gli/make_docker.sh
|
136
|
-
- before_gli/my_help.gemspec
|
137
105
|
- bin/my_help
|
138
106
|
- lib/my_help.rb
|
139
107
|
- lib/my_help/my_help_controll.rb
|
140
108
|
- lib/my_help/org2yml.rb
|
141
109
|
- lib/my_help/version.rb
|
142
|
-
- lib/templates/
|
143
|
-
- lib/templates/
|
144
|
-
- lib/templates/
|
145
|
-
- lib/templates/
|
110
|
+
- lib/templates/emacs.org
|
111
|
+
- lib/templates/help_template.org
|
112
|
+
- lib/templates/org.org
|
113
|
+
- lib/templates/todo.org
|
146
114
|
- my_help.gemspec
|
147
115
|
- my_help.rdoc
|
148
116
|
homepage: http://your.website.com
|
@@ -1,13 +0,0 @@
|
|
1
|
-
FROM alpine:3.7
|
2
|
-
|
3
|
-
RUN apk update && apk upgrade
|
4
|
-
RUN apk --update add \
|
5
|
-
openssh git build-base libffi libffi-dev \
|
6
|
-
ruby ruby-dev ruby-rake ruby-bundler
|
7
|
-
|
8
|
-
# RUN git clone https://github.com/daddygongon/my_help.git
|
9
|
-
COPY . ~/my_help
|
10
|
-
WORKDIR ~/my_help
|
11
|
-
|
12
|
-
RUN bundle update
|
13
|
-
RUN bundle exec exe/my_help -m && rake install:local
|
data/before_gli/Gemfile
DELETED
data/before_gli/Gemfile.lock
DELETED
@@ -1,63 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
my_help (0.6.2)
|
5
|
-
colorize
|
6
|
-
systemu
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: https://rubygems.org/
|
10
|
-
specs:
|
11
|
-
aruba (0.14.5)
|
12
|
-
childprocess (>= 0.6.3, < 0.10.0)
|
13
|
-
contracts (~> 0.9)
|
14
|
-
cucumber (>= 1.3.19)
|
15
|
-
ffi (~> 1.9.10)
|
16
|
-
rspec-expectations (>= 2.99)
|
17
|
-
thor (~> 0.19)
|
18
|
-
backports (3.11.1)
|
19
|
-
builder (3.2.3)
|
20
|
-
childprocess (0.9.0)
|
21
|
-
ffi (~> 1.0, >= 1.0.11)
|
22
|
-
colorize (0.8.1)
|
23
|
-
contracts (0.16.0)
|
24
|
-
cucumber (3.1.0)
|
25
|
-
builder (>= 2.1.2)
|
26
|
-
cucumber-core (~> 3.1.0)
|
27
|
-
cucumber-expressions (~> 5.0.4)
|
28
|
-
cucumber-wire (~> 0.0.1)
|
29
|
-
diff-lcs (~> 1.3)
|
30
|
-
gherkin (~> 5.0)
|
31
|
-
multi_json (>= 1.7.5, < 2.0)
|
32
|
-
multi_test (>= 0.1.2)
|
33
|
-
cucumber-core (3.1.0)
|
34
|
-
backports (>= 3.8.0)
|
35
|
-
cucumber-tag_expressions (~> 1.1.0)
|
36
|
-
gherkin (>= 5.0.0)
|
37
|
-
cucumber-expressions (5.0.13)
|
38
|
-
cucumber-tag_expressions (1.1.1)
|
39
|
-
cucumber-wire (0.0.1)
|
40
|
-
diff-lcs (1.3)
|
41
|
-
ffi (1.9.23)
|
42
|
-
gherkin (5.0.0)
|
43
|
-
multi_json (1.13.1)
|
44
|
-
multi_test (0.1.2)
|
45
|
-
rake (10.5.0)
|
46
|
-
rspec-expectations (3.7.0)
|
47
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
48
|
-
rspec-support (~> 3.7.0)
|
49
|
-
rspec-support (3.7.1)
|
50
|
-
systemu (2.6.5)
|
51
|
-
thor (0.20.0)
|
52
|
-
|
53
|
-
PLATFORMS
|
54
|
-
ruby
|
55
|
-
|
56
|
-
DEPENDENCIES
|
57
|
-
aruba (~> 0.14.2)
|
58
|
-
bundler (~> 1.11)
|
59
|
-
my_help!
|
60
|
-
rake (~> 10.0)
|
61
|
-
|
62
|
-
BUNDLED WITH
|
63
|
-
1.16.1
|
data/before_gli/bin/console
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
require "bundler/setup"
|
4
|
-
require "my_help"
|
5
|
-
|
6
|
-
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
-
# with your gem easier. You can also use a different console, if you like.
|
8
|
-
|
9
|
-
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
-
# require "pry"
|
11
|
-
# Pry.start
|
12
|
-
|
13
|
-
require "irb"
|
14
|
-
IRB.start
|
data/before_gli/bin/setup
DELETED
data/before_gli/exe/e_h
DELETED
data/before_gli/exe/emacs_help
DELETED
data/before_gli/exe/m_t
DELETED
data/before_gli/exe/my_help
DELETED
data/before_gli/exe/my_todo
DELETED
data/before_gli/exe/o_h
DELETED
data/before_gli/exe/org_help
DELETED
@@ -1,137 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
require "optparse"
|
3
|
-
require "emacs_help/version"
|
4
|
-
|
5
|
-
module EmacsHelp
|
6
|
-
class Command
|
7
|
-
def self.run(argv=[])
|
8
|
-
print "\n特殊キー操作"
|
9
|
-
print "\tc-f, controlキーを押しながら 'f'\n"
|
10
|
-
print "\t\tM-f, escキーを押した後一度離して'f'\n"
|
11
|
-
print "\t操作の中断c-g, 操作の取り消し(Undo) c-x u \n"
|
12
|
-
new(argv).execute
|
13
|
-
end
|
14
|
-
|
15
|
-
def initialize(argv=[])
|
16
|
-
@argv = argv
|
17
|
-
data_path = File.join(ENV['HOME'], '.hikirc')
|
18
|
-
end
|
19
|
-
|
20
|
-
def execute
|
21
|
-
@argv << '--help' if @argv.size==0
|
22
|
-
command_parser = OptionParser.new do |opt|
|
23
|
-
opt.on('-v', '--version','show program Version.') { |v|
|
24
|
-
opt.version = EmacsHelp::VERSION
|
25
|
-
puts opt.ver
|
26
|
-
}
|
27
|
-
opt.on('-c','--カーソル','Cursor移動') {cursor_move}
|
28
|
-
opt.on('-p','--ページ','Page移動') {page_move}
|
29
|
-
opt.on('-f','--ファイル','File操作') {file}
|
30
|
-
opt.on('-e','--編集','Edit操作') {edit}
|
31
|
-
opt.on('-w','--ウィンドウ','Window操作') {window}
|
32
|
-
opt.on('-b','--バッファ','Buffer操作') {buffer}
|
33
|
-
opt.on('-q','--終了','終了操作') {quit}
|
34
|
-
opt.on('--edit','edit help contents'){edit_help}
|
35
|
-
opt.on('--edit','edit help contentsを開く'){edit_help}
|
36
|
-
# opt.on('--to_hiki','convert to hikidoc format'){to_hiki}
|
37
|
-
opt.on('--to_hiki','hikiのformatに変更する'){to_hiki}
|
38
|
-
# opt.on('--all','display all helps'){all_help}
|
39
|
-
opt.on('--all','すべてのhelp画面を表示させる'){all_help}
|
40
|
-
# opt.on('--store [item]','store [item] in backfile'){|item| store(item)}
|
41
|
-
opt.on('--store [item]','store [item] でback upをとる'){|item| store(item)}
|
42
|
-
# opt.on('--remove [item]','remove [item] and store in backfile'){|item| remove(item) }
|
43
|
-
opt.on('--remove [item]','remove [item] back upしてるlistを消去する'){|item| remove(item) }
|
44
|
-
# opt.on('--add [item]','add new [item]'){|item| add(item) }
|
45
|
-
opt.on('--add [item]','add new [item]で新しいhelpを作る'){|item| add(item) }
|
46
|
-
# opt.on('--backup_list [val]','show last [val] backup list'){|val| backup_list(val)}
|
47
|
-
opt.on('--backup_list [val]','back upしているlistを表示させる'){|val| backup_list(val)}
|
48
|
-
|
49
|
-
end
|
50
|
-
begin
|
51
|
-
command_parser.parse!(@argv)
|
52
|
-
rescue=> eval
|
53
|
-
p eval
|
54
|
-
end
|
55
|
-
exit
|
56
|
-
end
|
57
|
-
|
58
|
-
def disp(lines)
|
59
|
-
lines.each{|line|
|
60
|
-
if line.include?(',')
|
61
|
-
show line
|
62
|
-
else
|
63
|
-
puts " #{line}"
|
64
|
-
end
|
65
|
-
}
|
66
|
-
end
|
67
|
-
def show(line)
|
68
|
-
puts " #{line}"
|
69
|
-
end
|
70
|
-
|
71
|
-
def quit
|
72
|
-
puts "\n終了操作quit"
|
73
|
-
cont = ["c-x c-c, Quit emacs, ファイルを保存して終了",
|
74
|
-
"c-z, suspend emacs, 一時停止,fgで復活"]
|
75
|
-
disp(cont)
|
76
|
-
end
|
77
|
-
|
78
|
-
def window
|
79
|
-
puts "\nウィンドウ操作window"
|
80
|
-
cont=["c-x 2, 2 windows, 二つに分割",
|
81
|
-
"c-x 1, 1 windows, 一つに戻す",
|
82
|
-
"c-x 3, 3rd window sep,縦線分割",
|
83
|
-
"c-x o, Other windows, 次の画面へ移動"]
|
84
|
-
disp(cont)
|
85
|
-
end
|
86
|
-
|
87
|
-
def buffer
|
88
|
-
puts "\nバッファー操作buffer"
|
89
|
-
cont =[ "c-x b, show Buffer, バッファのリスト",
|
90
|
-
"c-x c-b, next Buffer, 次のバッファへ移動"]
|
91
|
-
disp(cont)
|
92
|
-
end
|
93
|
-
|
94
|
-
def edit
|
95
|
-
puts "\n編集操作editor"
|
96
|
-
cont = ["c-d, Delete char, 一字削除",
|
97
|
-
"c-k, Kill line, 一行抹消,カット",
|
98
|
-
"c-y, Yank, ペースト",
|
99
|
-
"c-w, Kill region, 領域抹消,カット",
|
100
|
-
"領域選択は,先頭or最後尾でc-spaceした後,最後尾or先頭へカーソル移動",
|
101
|
-
"c-s, forward incremental Search WORD, 前へWORDを検索",
|
102
|
-
"c-r, Reverse incremental search WORD, 後へWORDを検索",
|
103
|
-
"M-x query-replace WORD1 <ret> WORD2:対話的置換(y or nで可否選択)"]
|
104
|
-
disp(cont)
|
105
|
-
end
|
106
|
-
|
107
|
-
def file
|
108
|
-
puts "\nファイル操作file"
|
109
|
-
cont =[ "c-x c-f, Find file, ファイルを開く",
|
110
|
-
"c-x c-s, Save file, ファイルを保存",
|
111
|
-
"c-x c-w, Write file NAME, ファイルを別名で書き込む"]
|
112
|
-
disp(cont)
|
113
|
-
end
|
114
|
-
|
115
|
-
def page_move
|
116
|
-
puts "\nページ移動page"
|
117
|
-
cont = ["c-v, move Vertical, 次のページへ",
|
118
|
-
"M-v, move reversive Vertical,前のページへ",
|
119
|
-
"c-l, centerise Line, 現在行を中心に",
|
120
|
-
"M-<, move Top of file, ファイルの先頭へ",
|
121
|
-
"M->, move Bottom of file, ファイルの最後尾へ"]
|
122
|
-
disp(cont)
|
123
|
-
end
|
124
|
-
|
125
|
-
def cursor_move
|
126
|
-
puts "\nカーソル移動cursor"
|
127
|
-
cont = ["c-f, move Forwrard, 前or右へ",
|
128
|
-
"c-b, move Backwrard, 後or左へ",
|
129
|
-
"c-a, go Ahead of line, 行頭へ",
|
130
|
-
"c-e, go End of line, 行末へ",
|
131
|
-
"c-n, move Next line, 次行へ",
|
132
|
-
"c-p, move Previous line, 前行へ"]
|
133
|
-
disp(cont)
|
134
|
-
end
|
135
|
-
|
136
|
-
end
|
137
|
-
end
|
@@ -1,134 +0,0 @@
|
|
1
|
-
module MyHelp
|
2
|
-
class Control
|
3
|
-
def initialize(argv)
|
4
|
-
@argv = argv
|
5
|
-
@template_dir = File.expand_path("../../templates", __FILE__)
|
6
|
-
@exe_dir = File.expand_path("../../exe", __FILE__)
|
7
|
-
@local_help_dir = File.join(ENV['HOME'],'.my_help')
|
8
|
-
@system_inst_dir = RbConfig::CONFIG['bindir']
|
9
|
-
set_help_dir_if_not_exists
|
10
|
-
end
|
11
|
-
|
12
|
-
def set_help_dir_if_not_exists
|
13
|
-
return if File::exists?(@local_help_dir)
|
14
|
-
FileUtils.mkdir_p(@local_help_dir, :verbose=>true)
|
15
|
-
Dir.entries(@template_dir).each{|file|
|
16
|
-
next if file=='template_help.org'
|
17
|
-
file_path=File.join(@local_help_dir,file)
|
18
|
-
next if File::exists?(file_path)
|
19
|
-
FileUtils.cp((File.join(@template_dir,file)),@local_help_dir,:verbose=>true)
|
20
|
-
}
|
21
|
-
end
|
22
|
-
|
23
|
-
def show(file, item)
|
24
|
-
file_path=File.join(@local_help_dir,file+'.org')
|
25
|
-
help = auto_load(file_path)
|
26
|
-
print help[:head][:cont]
|
27
|
-
print '-'*5+"\n"
|
28
|
-
print item.red+"\n"
|
29
|
-
print help[item.to_sym][:cont]
|
30
|
-
end
|
31
|
-
|
32
|
-
def list_helps(file)
|
33
|
-
if file.nil?
|
34
|
-
list_all
|
35
|
-
else
|
36
|
-
list_help(file)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
def list_help(file)
|
41
|
-
file_path=File.join(@local_help_dir,file+'.org')
|
42
|
-
help = auto_load(file_path)
|
43
|
-
help.each_pair do |key, conts|
|
44
|
-
print conts[:cont] if key==:head
|
45
|
-
disp_opts( conts[:opts] )
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
def disp_opts( conts )
|
50
|
-
col = 0
|
51
|
-
conts.each_pair do |key, item|
|
52
|
-
col_length = case col
|
53
|
-
when 0; print item.rjust(5)+", "
|
54
|
-
when 1; print item.ljust(15)+": "
|
55
|
-
else; print item
|
56
|
-
end
|
57
|
-
col += 1
|
58
|
-
end
|
59
|
-
print("\n")
|
60
|
-
end
|
61
|
-
|
62
|
-
def list_all
|
63
|
-
print "List all helps\n"
|
64
|
-
local_help_entries.each do |file|
|
65
|
-
file_path=File.join(@local_help_dir,file)
|
66
|
-
title = file.split('.')[0]
|
67
|
-
help = auto_load(file_path)
|
68
|
-
next if help.nil?
|
69
|
-
desc = help[:head][:cont].split("\n")[0]
|
70
|
-
print " #{title}\t: #{desc}\n".blue
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
def edit_help(file)
|
75
|
-
target_help = File.join(@local_help_dir,file)
|
76
|
-
['.yml','.org'].each do |ext|
|
77
|
-
p target_help += ext if local_help_entries.member?(file+ext)
|
78
|
-
end
|
79
|
-
system "emacs #{target_help}"
|
80
|
-
end
|
81
|
-
|
82
|
-
def init_help(file)
|
83
|
-
p target_help=File.join(@local_help_dir,file+'.org')
|
84
|
-
if File::exists?(target_help)
|
85
|
-
puts "File exists. --delete it first to initialize it."
|
86
|
-
exit
|
87
|
-
end
|
88
|
-
p template = File.join(@template_dir,'template_help.org')
|
89
|
-
FileUtils::Verbose.cp(template,target_help)
|
90
|
-
end
|
91
|
-
|
92
|
-
def delete_help(file)
|
93
|
-
file = File.join(@local_help_dir,file+'.org')
|
94
|
-
print "Are you sure to delete "+file.blue+"?[Ynq] ".red
|
95
|
-
case gets.chomp
|
96
|
-
when 'Y'
|
97
|
-
begin
|
98
|
-
FileUtils.rm(file,:verbose=>true)
|
99
|
-
rescue => error
|
100
|
-
puts error.to_s.red
|
101
|
-
end
|
102
|
-
when 'n', 'q' ; exit
|
103
|
-
end
|
104
|
-
end
|
105
|
-
|
106
|
-
private
|
107
|
-
def local_help_entries
|
108
|
-
entries= []
|
109
|
-
Dir.entries(@local_help_dir).each{|file|
|
110
|
-
next unless file.include?('_')
|
111
|
-
next if file[0]=='#' or file[-1]=='~' or file[0]=='.'
|
112
|
-
next if file.match(/(.+)_e\.org/) # OK?
|
113
|
-
next if file.match(/(.+)\.html/)
|
114
|
-
entries << file
|
115
|
-
}
|
116
|
-
return entries
|
117
|
-
end
|
118
|
-
|
119
|
-
def auto_load(file_path)
|
120
|
-
case File.extname(file_path)
|
121
|
-
when '.yml'
|
122
|
-
cont = YAML.load(File.read(file_path))
|
123
|
-
when '.org'
|
124
|
-
cont = OrgToYaml.new(file_path).help_cont
|
125
|
-
else
|
126
|
-
puts "Not handling file types of #{file_path}"
|
127
|
-
cont = nil
|
128
|
-
end
|
129
|
-
cont
|
130
|
-
end
|
131
|
-
|
132
|
-
|
133
|
-
end
|
134
|
-
end
|