my_help 1.2.2 → 1.2.4

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.
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'として下さい.