my_help 1.2.2 → 1.2.4

Sign up to get free protection for your applications and to get access to all the features.
data/doc/frames.html CHANGED
@@ -2,13 +2,18 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8">
5
- <title>Documentation by YARD 0.9.28</title>
5
+ <title>my_help</title>
6
6
  </head>
7
7
  <script type="text/javascript">
8
- var match = unescape(window.location.hash).match(/^#!(.+)/);
9
- var name = match ? match[1] : 'index.html';
10
- name = name.replace(/^(\w+):\/\//, '').replace(/^\/\//, '');
11
- window.top.location = name;
8
+ var mainUrl = 'index.html';
9
+ try {
10
+ var match = decodeURIComponent(window.location.hash).match(/^#!(.+)/);
11
+ var name = match ? match[1] : mainUrl;
12
+ var url = new URL(name, location.href);
13
+ window.top.location.replace(url.origin === location.origin ? name : mainUrl);
14
+ } catch (e) {
15
+ window.top.location.replace(mainUrl);
16
+ }
12
17
  </script>
13
18
  <noscript>
14
19
  <h1>Oops!</h1>
data/doc/index.html CHANGED
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  File: README
8
8
 
9
- &mdash; Documentation by YARD 0.9.28
9
+ &mdash; my_help
10
10
 
11
11
  </title>
12
12
 
@@ -171,9 +171,9 @@ $ my_help set_editor vim
171
171
  </div></div>
172
172
 
173
173
  <div id="footer">
174
- Generated on Fri Jan 6 13:07:57 2023 by
174
+ Generated on Thu Sep 26 14:20:52 2024 by
175
175
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
176
- 0.9.28 (ruby-3.0.2).
176
+ 0.9.36 (ruby-3.0.2).
177
177
  </div>
178
178
 
179
179
  </div>
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Top Level Namespace
8
8
 
9
- &mdash; Documentation by YARD 0.9.28
9
+ &mdash; my_help
10
10
 
11
11
  </title>
12
12
 
@@ -102,9 +102,9 @@
102
102
  </div>
103
103
 
104
104
  <div id="footer">
105
- Generated on Fri Jan 6 13:07:57 2023 by
105
+ Generated on Thu Sep 26 14:20:52 2024 by
106
106
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
107
- 0.9.28 (ruby-3.0.2).
107
+ 0.9.36 (ruby-3.0.2).
108
108
  </div>
109
109
 
110
110
  </div>
data/lib/my_help/cli.rb CHANGED
@@ -20,16 +20,35 @@ module MyHelp
20
20
  desc "version", "show version"
21
21
 
22
22
  def version
23
- print "my_help #{VERSION}"
23
+ puts "my_help #{VERSION}"
24
24
  end
25
25
 
26
26
  desc "git [pull|push]", "git operations"
27
27
  subcommand "git", Git
28
28
 
29
+ map "-a" => :add_defaults
30
+ desc "add_defaults", "add defaults org files"
31
+ def add_defaults
32
+ puts "Adding defaults org files in .my_help"
33
+ config = get_config
34
+ help_dir = options["help_dir"] || config[:local_help_dir]
35
+ p current_orgs = Dir.glob(File.join(help_dir, "*.org")).
36
+ map!{|f| File.basename(f)}
37
+ new_orgs = Dir.glob(File.join(config[:template_dir],'*.org'))
38
+ new_orgs.each do |new_org|
39
+ p [new_org, current_orgs.include?(File.basename(new_org))]
40
+ unless current_orgs.include?(File.basename(new_org))
41
+ FileUtils.cp(new_org, help_dir, verbose: true)
42
+ end
43
+ end
44
+ end
45
+
46
+ map "-i" => :init
29
47
  desc "init", "initialize my_help environment"
30
48
 
31
49
  def init(*args)
32
50
  config = get_config # for using methods in Config
51
+
33
52
  #config.ask_default
34
53
  init = Init.new(config)
35
54
  raise "Local help dir exist." if init.help_dir_exist?
@@ -54,6 +73,7 @@ module MyHelp
54
73
  puts File.read(conf_file_path)
55
74
  end
56
75
 
76
+ map "-l" => :list
57
77
  desc "list [HELP] [ITEM]", "list helps"
58
78
  # option :help_dir, :type => :string
59
79
  option :layer, :type => :numeric
@@ -67,8 +87,8 @@ module MyHelp
67
87
  layer).list(*args.join(" "))
68
88
  end
69
89
 
90
+ map "-e" => :edit
70
91
  desc "edit [HELP]", "edit help"
71
-
72
92
  def edit(*args)
73
93
  c = get_config
74
94
  help_name = args[0]
@@ -12,7 +12,7 @@ module MyHelp
12
12
  @config = {
13
13
  template_dir: File.expand_path("../templates", __dir__),
14
14
  local_help_dir: local_help_dir,
15
- conf_file: File.join(local_help_dir, ".my_help_conf.yml"),
15
+ conf_file: File.join(conf_path, ".my_help_conf.yml"),
16
16
  editor: ENV["EDITOR"] || "emacs",
17
17
  ext: ".org",
18
18
  verbose: false,
data/lib/my_help/list.rb CHANGED
@@ -8,7 +8,7 @@ module MyHelp
8
8
  def initialize(path = "", ext = ".org", layer = 1)
9
9
  @path = path
10
10
  @ext = ext
11
- p @layer = layer
11
+ @layer = layer
12
12
  end
13
13
 
14
14
  def list(help_options = "", level = 0)
@@ -34,8 +34,10 @@ module MyHelp
34
34
  Dir.glob(files).inject("") do |out, file|
35
35
  # p [out, file]
36
36
  help_info = read_help(file)
37
- out << "%10s: %s\n" % [help_info[:name],
38
- help_info[:items]["head"].split("\n")[0]]
37
+ head = help_info[:items]["head"] ?
38
+ help_info[:items]["head"].split("\n")[0] :
39
+ ''
40
+ out << "%10s: %s\n" % [help_info[:name], head]
39
41
  end
40
42
  end
41
43
 
@@ -39,7 +39,8 @@ module MyHelp
39
39
  end
40
40
 
41
41
  def read_item(line)
42
- line.match(/\* (.+)/)[1]
42
+ m = line.match(/\* (.+)/)
43
+ return m ? m[1] : nil
43
44
  end
44
45
  end
45
46
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MyHelp
4
- VERSION = "1.2.2"
4
+ VERSION = "1.2.4"
5
5
  end
@@ -1,4 +1,5 @@
1
- #+STARTUP: indent nolineimages overview
1
+ #+OPTIONS: ^:{}
2
+ #+STARTUP: indent nolineimages overview num
2
3
  * head
3
4
  - Emacs key bind
4
5
  - special key command
@@ -0,0 +1,76 @@
1
+ #+OPTIONS: ^:{}
2
+ #+STARTUP: indent nolineimages overview num
3
+ * head
4
+ - Emacs key bindの日本語版
5
+ * 初めに
6
+ -特別なコマンド
7
+ - c-f,「ctrl」キーと「f」を同時に押す
8
+  - M-f,「Esc」キーを押した後に「f」を押す
9
+  - c-g,操作を中断する
10
+  - c-x u, 直前に行った操作を取り消す
11
+ * license: cc by Kaede Ogawa & Shigeto R. Nishitani, 2024
12
+ * basic
13
+ ** 初期
14
+ - emacs [FILE]
15
+ ** 終了操作
16
+ - c-x c-c, ファイルを保存して、Emacsを終了する
17
+ - c-z, Emacsを一時停止する, fgで再開する
18
+ ** カーソル移動
19
+ - c-f, カーソルを1文字前に移動
20
+ - c-b, カーソルを1文字後ろに移動
21
+ - c-a, 行の先頭に移動
22
+ - c-e, 行の末尾に移動
23
+ - c-n, 次の行に移動
24
+ - c-p, 前の行に移動
25
+ - c-v, 次のページに移動
26
+ - M-v, 前のページに移動
27
+ - c-l, カーソル行を画面の中央に移動(2回目は画面の上端に、3回目は画面の下端に移動する)
28
+ - M-<, ファイルの先頭に移動
29
+ - M->, ファイルの末尾に移動
30
+ ** 編集操作
31
+ - c-d, カーソルの右側の1文字を削除
32
+ - c-k, カーソル位置から行の末尾までの文字を削除
33
+ - c-y, 直前に削除した文字を貼り付け
34
+ - c-w, 選択された領域を削除
35
+ - 領域選択は、先頭 or 最後尾で c-space した後、最後尾 or 先頭へカーソル移動
36
+ - c-s, 前へ WORD を検索
37
+ - c-r, 後へ WORD を検索
38
+ - M-x query-replace WORD1 <ret> WORD2, 文字列の置換(y or n で可否選択)
39
+ * カーソル移動
40
+ - c-f, カーソルを1文字前に移動
41
+ - c-b, カーソルを1文字後ろに移動
42
+ - c-a, 行の先頭に移動
43
+ - c-e, 行の末尾に移動
44
+ - c-n, 次の行に移動
45
+ - c-p, 前の行に移動
46
+ * ページ移動
47
+ - c-v, 次のページに移動
48
+ - M-v, 前のページに移動
49
+ - c-l, カーソル行を画面の中央に移動(2回目は画面の上端に、3回目は画面の下端に移動する)
50
+ - M-<, ファイルの先頭に移動
51
+ - M->, ファイルの末尾に移動
52
+ * ファイル操作
53
+ - c-x c-f, ファイルを開く
54
+ - c-x c-s, ファイルを保存する
55
+ - c-x c-w, ファイル名を変更して保存する
56
+ * 編集操作
57
+ - c-d, カーソルの右側の1文字を削除
58
+ - c-k, カーソル位置から行の末尾までの文字を削除
59
+ - c-y, 直前に削除した文字を貼り付け
60
+ - c-w, 選択された領域を削除
61
+ - 領域選択は、先頭 or 最後尾で c-space した後、最後尾 or 先頭へカーソル移動
62
+ - c-s, 前へ WORD を検索
63
+ - c-r, 後へ WORD を検索
64
+ - M-x query-replace WORD1 <ret> WORD2, 文字列の置換(y or n で可否選択)
65
+ * ウィンドウ操作
66
+ - c-x 2, 現在のウィンドウを上下に分割
67
+ - c-x 1, 現在のウィンドウ以外の全てのウィンドウを削除し、現在のウィンドウを最大化する
68
+ - c-x 3, 現在のウィンドウを左右に分割
69
+ - c-x o, 現在のウィンドウを削除し、隣接するウィンドウに移動
70
+ * バッファー操作
71
+ - すでに open して Emacs にバッファーされた file
72
+ - c-x b, 指定したバッファーに切り替える
73
+ - c-x c-b, 現在のバッファー一覧を表示
74
+ * 終了操作
75
+ - c-x c-c, ファイルを保存して、Emacsを終了する
76
+ - c-z, Emacsを一時停止する, fgで再開する
@@ -1,9 +1,8 @@
1
- #+STARTUP: indent nolineimages overview
2
- * head
3
- - help_title example
4
- * license
5
- - cc by Shigeto R. Nishitani, 2016-22
1
+ #+OPTIONS: ^:{}
2
+ #+STARTUP: indent nolineimages overview num
3
+ * head: help_title example
4
+ * license: cc by Shigeto R. Nishitani, 2016-24
6
5
  * a_item : item_short_description
7
6
  - content_a
8
7
  * b_item
9
- - content_b
8
+ - content_b
@@ -0,0 +1,24 @@
1
+ #+OPTIONS: ^:{}
2
+ #+STARTUP: indent nolineimages overview num
3
+ * head
4
+ - my_helpの日本語版解説
5
+ * license: cc by Kaede Ogawa , 2024
6
+ * my_helpのインストール
7
+ - file:./my_help_install.org
8
+ * emacsでの編集
9
+ - [[file:./emacs_j.org]]
10
+ * orgを使っているmy_helpのメモの取り方
11
+ - file:./org.org
12
+ * ファイルの参照方法
13
+ - [*2 ファイル名 ]*2 とすることで他ファイルへのリンクを作成
14
+ - c-c c-o,リンク上でコマンドを打つとそのファイルへアクセスできる
15
+ * my_helpのよく使うコマンド
16
+ - my_help new ファイル名, 新しいファイルを作成
17
+ - my_help edit ファイル名, ファイルの編集画面を開く
18
+ - my_help delete ファイル名, ファイルを削除する
19
+ * my_helpでとったメモの参照方法
20
+ - * headの項目は、そのファイルのタイトルのようなものである
21
+ - ターミナル上でmy_help listと打つと、ファイル名の一覧とそのファイルのheadの中身の部分が表示されるようになっている
22
+ - ターミナル上でmy_help list ファイル名 と打つと、そのファイルの項目がすべて表示される
23
+ - my_help list ファイル名 項目名 と打つと、そのファイルの項目の中身を表示できる
24
+
@@ -0,0 +1,25 @@
1
+ #+OPTIONS: ^:{}
2
+ #+STARTUP: indent nolineimages overview num
3
+ * head: orgを用いているmy_helpの使い方
4
+ * license: cc by Kaede Ogawa, 2024
5
+ * 参考資料:
6
+ - https://qiita.com/t4ku/items/315337745c3fa691027c
7
+ - https://www.fabrica-com.co.jp/techblog/column/7928/
8
+ * org
9
+ - emacs上で動作するアウトライナー
10
+ * アウトライナー
11
+ - 文章の見出しを考えるときに使うツール
12
+ - 見出しの下に小見出しを作成し、階層を深くしていくことができる
13
+ - 階層的に記述できるため、タスク管理やメモ帳として便利である
14
+ * TODOを用いたタスク管理
15
+ - 「* TODO タスク」でやるべきことの見出しを記述
16
+ - 「- 小タスク」TODOの下に記述することで小見出しを記述
17
+ - c-c c-t, TODOタスクのTODOをDONEに変更
18
+ - 「-[ ] 小タスク」, 小タスクの前に-[ ]を付けることで小タスクにチェックリストを作ることができる
19
+ - c-c c-c,[ ]小タスクの[ ]にチェックを付ける
20
+ - 「* TODO タスク [/]」でTODOのタスクに[完了タスク数/全てのタスク数]と表示できる
21
+ - c-c ., カレンダーを表示して日付を追加(shift+矢印キーで日付を選択)
22
+ * 階層的なメモの取り方
23
+ - * space, 新しい項目の追加
24
+ - - space, *の項目の中に要素を追加する
25
+ - (shift+tab)*3, *の中身を表示する
@@ -0,0 +1,33 @@
1
+ #+STARTUP: indent nolineimages overview
2
+ * head
3
+ - my_helpのインストール方法と動作環境の設定
4
+ * license: cc by Shigeto R. Nishitani, 2016-23
5
+ * 参考文献:
6
+ - https://qiita.com/fdui/items/6f28eebd60bb052d872a
7
+ * my_helpのインストール
8
+ -ターミナル上で「gem install my_help」と打つ
9
+ -インストール後、ターミナル上で「my_help」と打つ
10
+ Commands:
11
+ my_help delete HELP # delete HELP
12
+ my_help edit HELP # edit HELP
13
+ my_help git [push|pull] # git push or pull
14
+ my_help help [COMMAND] # Describe available commands or one specif.
15
+ my_help list [HELP] [ITEM] # list all helps, specific HELP, or ITEM
16
+ my_help new HELP # make new HELP
17
+ my_help set_editor EDITOR_NAME # set editor to EDITOR_NAME
18
+ my_help setup # set up the test database
19
+ my_help version # show version
20
+
21
+ このように、コマンド一覧が表示されれば、インストールは完了
22
+
23
+ * エディタの選択
24
+ - my_helpを使用するために、エディタの選択をする
25
+ - 「my_help set_editor emacs」と打ち、エディタをemacsにする
26
+
27
+ * my_helpでよく使うコマンド
28
+ - 「my_help new ファイル名」 で新しいメモファイルを作成する
29
+ - 「my_help edit ファイル名」で指定したファイルを開き、編集できる
30
+ - 「my_help list」で自分が作成したファイルのリストを表示する
31
+ - 「my_help list ファイル名」で自分が作成したファイルの中の項目を表示する
32
+ - 「my_help list ファイル名 そのファイルの中にある項目の名前」で項目の中身を表示する
33
+
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: 1.2.2
4
+ version: 1.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shigeto R. Nishiani
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-01-07 00:00:00.000000000 Z
11
+ date: 2024-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -104,13 +104,12 @@ files:
104
104
  - Gemfile.lock
105
105
  - LICENSE.txt
106
106
  - README.org
107
- - README_j.org
107
+ - README_e.org
108
108
  - Rakefile
109
109
  - development_memo.org
110
110
  - doc/MyHelp.html
111
111
  - doc/MyHelp/CLI.html
112
112
  - doc/MyHelp/Config.html
113
- - doc/MyHelp/Control.html
114
113
  - doc/MyHelp/Error.html
115
114
  - doc/MyHelp/GetConfig.html
116
115
  - doc/MyHelp/Git.html
@@ -120,7 +119,6 @@ files:
120
119
  - doc/MyHelp/Modify.html
121
120
  - doc/MyHelp/Org2Hash.html
122
121
  - doc/Org2Yaml.html
123
- - doc/OrgToYaml.html
124
122
  - doc/_index.html
125
123
  - doc/class_list.html
126
124
  - doc/css/common.css
@@ -148,10 +146,13 @@ files:
148
146
  - lib/my_help/org2yml.rb
149
147
  - lib/my_help/version.rb
150
148
  - lib/templates/emacs.org
149
+ - lib/templates/emacs_j.org
151
150
  - lib/templates/example.md
152
151
  - lib/templates/example.org
152
+ - lib/templates/my_help_j.org
153
+ - lib/templates/org_j.org
153
154
  - my_help.gemspec
154
- - tmp.txt
155
+ - my_help_install.org
155
156
  homepage: https://github.com/daddygongon/my_help
156
157
  licenses:
157
158
  - MIT
@@ -171,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
172
  - !ruby/object:Gem::Version
172
173
  version: '0'
173
174
  requirements: []
174
- rubygems_version: 3.2.22
175
+ rubygems_version: 3.5.14
175
176
  signing_key:
176
177
  specification_version: 4
177
178
  summary: user building help
data/README_j.org DELETED
@@ -1,143 +0,0 @@
1
- # my_help
2
- #+AUTHOR: Shigeto R. Nishitani
3
- #+EMAIL: (concat "nishitani@kwansei.ac.jp")
4
- #+LANGUAGE: jp
5
- #+OPTIONS: H:4 toc:t num:2
6
- #+SETUPFILE: /Users/bob/.emacs.d/org-mode/theme-readtheorg.setup
7
- #+STARTUP: indent nolineimages
8
- #+OPTIONS: ^:{}
9
-
10
- * 概要
11
- :PROPERTIES:
12
- :CUSTOM_ID: 概要
13
- :END:
14
-
15
- CUI(CLA)ヘルプのUsage出力を真似て,user独自のhelpを作成・提供するgem.
16
-
17
-
18
- * (my_helpで解決しようとする)問題点
19
- :PROPERTIES:
20
- :CUSTOM_ID: my_helpで解決しようとする問題点
21
- :END:
22
-
23
- CUIやshell, 何かのプログラミング言語などを習得しようとする初心者は,
24
- commandや文法を覚えるのに苦労します.
25
- 少しのkey(とっかかり)があると思い出すんですが,
26
- うろ覚えでは間違えて路頭に迷います.
27
- 問題点は,
28
- + manは基本的に英語
29
- + manualでは重たい
30
- + いつもおなじことをwebで検索して
31
- + 同じとこ見ている
32
- + memoしても,どこへ置いたか忘れる
33
- などです.
34
-
35
- * 特徴
36
- :PROPERTIES:
37
- :CUSTOM_ID: 特徴
38
- :END:
39
-
40
- これらをCLAとして提供しようというのが,このgemの目的です.
41
- 仕様としては,
42
- - userが自分にあったmanを作成
43
- - 雛形を提供
44
- - おなじformat, looks, 操作, 階層構造
45
- - すぐに手が届く
46
- - それらを追加・修正・削除できる
47
-
48
- memoソフトでは,検索が必要となりますが,my_helpは
49
- key(記憶のとっかかり)を提供することが目的です.
50
- RPGでレベル上げとかアイテムを貯めるようにして,
51
- プログラミングでスキルを発展させてください.
52
-
53
- VSCodeやGithub Copilotではcodeの候補を挙げてくれますが,
54
- 物覚えの悪い作者は,人の名前をitem分けして,こそっと使っています.
55
-
56
- * 使用法
57
- :PROPERTIES:
58
- :CUSTOM_ID: 使用法
59
- :END:
60
- ** インストール
61
-
62
- : > gem install my_help
63
- です.
64
-
65
- ** 簡単な使用法
66
- :PROPERTIES:
67
- :CUSTOM_ID: 簡単な使用法
68
- :END:
69
-
70
- まずは,
71
- #+begin_src bash
72
- > my_help
73
- Commands:
74
- my_help delete HELP # delete HELP
75
- my_help edit HELP # edit HELP
76
- my_help help [COMMAND] # Describe available commands or one specific command
77
- my_help list [HELP] [ITEM] # list all helps, specific HELP, or ITEM
78
- my_help new HELP # make new HELP
79
- my_help set_editor EDITOR_NAME # set editor to EDITOR_NAME
80
- my_help setup # set up the test database
81
- my_help version # show version
82
- #+end_src
83
- としてください.このlistにNAMEやITEMを加えて行くとわかると思います.
84
-
85
- #+begin_src bash
86
- > my_help list
87
- > my_help list emacs
88
- > my_help list emacs -f
89
- > my_help list emacs file
90
- #+end_src
91
- として動かしてみてください.
92
-
93
- #+begin_src bash
94
- - emacsのキーバインド
95
- -
96
- 特殊キー操作
97
- - C-f, controlキーを押しながら 'f'
98
- - M-f, escキーを押した後一度離して'f'
99
- - 操作の中断C-g, 操作の取り消し(Undo) C-x u
100
- , head : head
101
- , license : license
102
- -c, cursor : cursor
103
- -e, edit : edit
104
- -s, short_cut : short_cut
105
- -f, file : file
106
- -q, quit : quit
107
- -p, page : page
108
- -w, window : window
109
- -b, buffer : buffer
110
- -m, mode : mode
111
- , query_replace : query_replace
112
- -r, ruby-mode : ruby-mode
113
- -d, dired : ファイラとして使う
114
- #+end_src
115
-
116
- ** my_helpがやっていること
117
- my_helpの個々のヘルプファイルは'~/.my_help'に置かれています.
118
- ヘルプファイルのフォーマットはEmacsのorg-modeです.
119
- これをEditorで叩いて編集したり,
120
- そこから情報を取り出したりしています.
121
- 単にファイル操作を集約しているだけなのですが,
122
- これが面倒で...
123
-
124
-
125
- ** 独自のhelpを作る方法
126
- 独自のhelpを作る方法です.まずは,
127
-
128
- : $ my_help new new_help
129
-
130
- で,new_helpというtemplateが用意されます.
131
- : $ my_help edit new_help
132
- で編集してください. Emacs org形式で,格納されています.
133
-
134
- : $ my_help delete new_help
135
-
136
- すると消されます.
137
- ** editorの変更
138
- : $ my_help set_editor vim
139
- でeditorを変更できます.codeとかは確認していますが,
140
- それ以外で動いたり,動かなかったりを報告してください.
141
-
142
- OS Xで'emacs'とした時にGUI版が立ち上がって嫌だという場合は,
143
- 'emacs -nw'として下さい.