beniya 0.5.0 → 0.5.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 33133a54577671b4c46cb252c7cfc37361b6ec3023ce172b719d8013cbb376a8
4
- data.tar.gz: 474519fcc81a04375103ef96a8c356f7ba00057e42c13b4779ec3dc78c462662
3
+ metadata.gz: 6110d8a673eee02088b1d95fac741e95b4d470cbb5b5bb5826b3e6ac65893890
4
+ data.tar.gz: 9030f59ba585966f29faa34eb2d450cff37f836431368ac5e4b2a0bb011e0cb2
5
5
  SHA512:
6
- metadata.gz: a4150553b51268cc0e8e9c73d4c5fc47907859f3c3669a1dbe7981a37ae23a5ad1463bedcbc3f71a11ec3414589055bde7ea6cd85ff4e17127f91bf017f9fe6b
7
- data.tar.gz: 6b69ee230c39f508a6eb70d210dfc7b8401e4014bd86b2ba083dd32458d6ff514c292d5c679966da74229640999b9f3d57096ca6bbdaf7e6739289166d595151
6
+ metadata.gz: 06a6a371c75c3c36125f26ae556893c32e4e9d0eba25ebd6f14e20e9957408fed671ace6d587f0d98477ad8e5f856373fcb4b0eae9ec3b23e60840f8c8298dbf
7
+ data.tar.gz: cb5d756ba159db9ecc9018b6fb44c9b0f05d8a213668e686653c09963406cde6ccf136993e259fa88d2d0b9528001e456d9e3b9b1a0cf139e4ddc1f6e8baa72f
data/CHANGELOG.md CHANGED
@@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ## [0.5.0] - 2025-01-20
10
+ ## [0.5.0] - 2025-09-20
11
11
 
12
12
  ### Added
13
13
  - **🔖 Bookmark System**: Complete bookmark functionality with persistent storage
@@ -32,7 +32,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
32
32
  - Integration with existing terminal UI components
33
33
  - **Detailed changelog**: [CHANGELOG_v0.5.0.md](./CHANGELOG_v0.5.0.md)
34
34
 
35
- ## [0.4.0] - 2025-01-13
35
+ ## [0.4.0] - 2025-09-13
36
36
 
37
37
  ### Added
38
38
  - **Floating Dialog System**: Modern floating confirmation dialogs for delete operations
@@ -65,7 +65,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
65
65
 
66
66
  For detailed information, see [CHANGELOG_v0.4.0.md](./CHANGELOG_v0.4.0.md)
67
67
 
68
- ## [0.3.0] - 2024-XX-XX
68
+ ## [0.3.0] - 2025-09-06
69
69
 
70
70
  ### Added
71
71
  - Enhanced file operations and management features
@@ -76,7 +76,7 @@ For detailed information, see [CHANGELOG_v0.4.0.md](./CHANGELOG_v0.4.0.md)
76
76
  - Performance improvements
77
77
  - Bug fixes and stability enhancements
78
78
 
79
- ## [0.2.0] - 2024-XX-XX
79
+ ## [0.2.0] - 2025-08-26
80
80
 
81
81
  ### Added
82
82
  - New features and functionality improvements
@@ -86,7 +86,7 @@ For detailed information, see [CHANGELOG_v0.4.0.md](./CHANGELOG_v0.4.0.md)
86
86
  - User interface improvements
87
87
  - Performance optimizations
88
88
 
89
- ## [0.1.0] - 2024-XX-XX
89
+ ## [0.1.0] - 2025-08-17
90
90
 
91
91
  ### Added
92
92
  - Initial release of beniya
@@ -121,4 +121,4 @@ When contributing to beniya:
121
121
  3. Link to detailed release notes for major versions
122
122
  4. Include migration notes for breaking changes
123
123
 
124
- For more information, see [Contributing Guidelines](./README.md#contributing).
124
+ For more information, see [Contributing Guidelines](./README.md#contributing).
data/README.md CHANGED
@@ -91,7 +91,7 @@ beniya --help # ヘルプメッセージを表示
91
91
 
92
92
  | キー | 機能 |
93
93
  | ----------- | ------------------------------------------ |
94
- | `s` | フィルターモード開始・再編集 |
94
+ | `f` | フィルターモード開始・再編集 |
95
95
  | 文字入力 | ファイル名で絞り込み(フィルターモード中) |
96
96
  | `Enter` | フィルター維持で通常モードに戻る |
97
97
  | `ESC` | フィルターをクリアして通常モードに戻る |
@@ -101,7 +101,7 @@ beniya --help # ヘルプメッセージを表示
101
101
 
102
102
  | キー | 機能 |
103
103
  | ---- | ----------------------------------------- |
104
- | `f` | fzfによるファイル名検索(プレビュー付き) |
104
+ | `s` | fzfによるファイル名検索(プレビュー付き) |
105
105
  | `F` | rgaによるファイル内容検索 |
106
106
 
107
107
  #### ブックマーク機能
@@ -169,30 +169,30 @@ beniya起動時のディレクトリが**ベースディレクトリ**として
169
169
 
170
170
  ### フィルター機能の詳細
171
171
 
172
- #### リアルタイムフィルター (`s`)
172
+ #### リアルタイムフィルター (`f`)
173
173
 
174
- - **フィルター開始**: `s`キーを押してフィルターモードに入る
174
+ - **フィルター開始**: `f`キーを押してフィルターモードに入る
175
175
  - **文字入力による絞り込み**: 日本語・英数字・記号に対応
176
176
  - **リアルタイム更新**: 文字を入力するたびに表示が更新される
177
177
  - **フィルター維持**: `Enter`キーでフィルターを保持したまま通常操作に戻る
178
178
  - **フィルタークリア**: `ESC`キーでフィルターをクリアして通常表示に戻る
179
- - **再編集**: フィルター適用中に`s`キーで再編集モード
179
+ - **再編集**: フィルター適用中に`f`キーで再編集モード
180
180
  - **文字削除**: `Backspace`で文字削除、全削除時は自動でフィルタークリア
181
181
 
182
182
  #### 使用例
183
183
 
184
184
  ```
185
- 1. s → フィルターモード開始
185
+ 1. f → フィルターモード開始
186
186
  2. ".rb" → Rubyファイルのみ表示
187
187
  3. Enter → フィルター維持で通常操作
188
188
  4. j/k → フィルター結果内をナビゲーション
189
- 5. s → フィルター再編集
189
+ 5. f → フィルター再編集
190
190
  6. ESC → フィルタークリア
191
191
  ```
192
192
 
193
193
  ### 検索機能の詳細
194
194
 
195
- #### ファイル名検索 (`f`)
195
+ #### ファイル名検索 (`s`)
196
196
 
197
197
  - `fzf`を使用したインタラクティブなファイル名検索
198
198
  - リアルタイムプレビュー表示
data/Rakefile ADDED
@@ -0,0 +1,156 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rake/testtask'
5
+ require_relative 'lib/beniya/version'
6
+
7
+ # Test task
8
+ Rake::TestTask.new(:test) do |t|
9
+ t.libs << 'test'
10
+ t.libs << 'lib'
11
+ t.test_files = FileList['test/test_*.rb']
12
+ end
13
+
14
+ # Default task
15
+ task default: :test
16
+
17
+ # Gem build and push tasks
18
+ namespace :gem do
19
+ desc 'Build the gem file'
20
+ task :build do
21
+ puts "Building beniya v#{Beniya::VERSION}..."
22
+
23
+ # Clean old gem files
24
+ FileUtils.rm_f(Dir.glob('*.gem'))
25
+
26
+ # Build the gem
27
+ result = system('gem build beniya.gemspec')
28
+
29
+ if result
30
+ gem_file = "beniya-#{Beniya::VERSION}.gem"
31
+ puts "✅ Successfully built #{gem_file}"
32
+ else
33
+ puts "❌ Failed to build gem"
34
+ exit 1
35
+ end
36
+ end
37
+
38
+ desc 'Push the gem to RubyGems.org'
39
+ task :push => :build do
40
+ gem_file = "beniya-#{Beniya::VERSION}.gem"
41
+
42
+ unless File.exist?(gem_file)
43
+ puts "❌ Gem file not found: #{gem_file}"
44
+ exit 1
45
+ end
46
+
47
+ puts "Pushing #{gem_file} to RubyGems.org..."
48
+
49
+ result = system("gem push #{gem_file}")
50
+
51
+ if result
52
+ puts "✅ Successfully pushed #{gem_file} to RubyGems.org"
53
+ puts "🎉 beniya v#{Beniya::VERSION} is now available!"
54
+ puts "📦 Install with: gem install beniya"
55
+ else
56
+ puts "❌ Failed to push gem to RubyGems.org"
57
+ exit 1
58
+ end
59
+ end
60
+
61
+ desc 'Check if current version already exists on RubyGems.org'
62
+ task :check_version do
63
+ puts "Checking if version #{Beniya::VERSION} exists on RubyGems.org..."
64
+
65
+ result = system("gem list beniya --remote --exact --all | grep '#{Beniya::VERSION}'", out: File::NULL, err: File::NULL)
66
+
67
+ if result
68
+ puts "⚠️ Version #{Beniya::VERSION} already exists on RubyGems.org"
69
+ puts "💡 Please update the version in lib/beniya/version.rb before publishing"
70
+ exit 1
71
+ else
72
+ puts "✅ Version #{Beniya::VERSION} is available for publishing"
73
+ end
74
+ end
75
+
76
+ desc 'Clean built gem files'
77
+ task :clean do
78
+ puts "Cleaning gem files..."
79
+ removed_files = Dir.glob('*.gem')
80
+ FileUtils.rm_f(removed_files)
81
+
82
+ if removed_files.any?
83
+ puts "🗑️ Removed: #{removed_files.join(', ')}"
84
+ else
85
+ puts "✨ No gem files to clean"
86
+ end
87
+ end
88
+
89
+ desc 'Build and publish gem (with version check)'
90
+ task :publish => [:check_version, :test, :push] do
91
+ puts "🚀 Gem publishing completed successfully!"
92
+ end
93
+ end
94
+
95
+ # Release tasks
96
+ namespace :release do
97
+ desc 'Tag the current version in git'
98
+ task :tag do
99
+ version = "v#{Beniya::VERSION}"
100
+
101
+ puts "Creating git tag #{version}..."
102
+
103
+ # Check if tag already exists
104
+ if system("git tag -l | grep -q '^#{version}$'", out: File::NULL, err: File::NULL)
105
+ puts "⚠️ Tag #{version} already exists"
106
+ exit 1
107
+ end
108
+
109
+ # Create and push tag
110
+ system("git tag #{version}")
111
+ system("git push origin #{version}")
112
+
113
+ puts "✅ Created and pushed tag #{version}"
114
+ end
115
+
116
+ desc 'Prepare release (tag + gem publish)'
117
+ task :prepare => ['gem:publish', :tag] do
118
+ puts "🎉 Release v#{Beniya::VERSION} completed!"
119
+ puts "📋 Don't forget to:"
120
+ puts " - Update CHANGELOG.md"
121
+ puts " - Create GitHub release from tag"
122
+ puts " - Announce the release"
123
+ end
124
+ end
125
+
126
+ # Utility tasks
127
+ desc 'Display current version'
128
+ task :version do
129
+ puts "beniya v#{Beniya::VERSION}"
130
+ end
131
+
132
+ desc 'Run simple test for basic functionality'
133
+ task :simple_test do
134
+ puts "Running simple functionality test..."
135
+ result = system('ruby test/simple_test.rb')
136
+
137
+ if result
138
+ puts "✅ Simple test passed"
139
+ else
140
+ puts "❌ Simple test failed"
141
+ exit 1
142
+ end
143
+ end
144
+
145
+ desc 'Run bookmark tests'
146
+ task :test_bookmark do
147
+ puts "Running bookmark functionality test..."
148
+ result = system('ruby test/test_bookmark_simple.rb')
149
+
150
+ if result
151
+ puts "✅ Bookmark tests passed"
152
+ else
153
+ puts "❌ Bookmark tests failed"
154
+ exit 1
155
+ end
156
+ end
data/lib/beniya/config.rb CHANGED
@@ -43,8 +43,8 @@ module Beniya
43
43
  'ui.operation_prompt' => 'Operation: ',
44
44
 
45
45
  # Help text
46
- 'help.full' => 'j/k:move h:back l:enter o:open g/G:top/bottom r:refresh s:filter f:search F:content a/A:create m/p/x:ops b:bookmark 1-9:goto q:quit',
47
- 'help.short' => 'j/k:move h:back l:enter o:open s:filter b:bookmark 1-9:goto q:quit',
46
+ 'help.full' => 'j/k:move h:back l:enter o:open g/G:top/bottom r:refresh f:filter s:search F:content a/A:create m/p/x:ops b:bookmark 1-9:goto q:quit',
47
+ 'help.short' => 'j/k:move h:back l:enter o:open f:filter s:search b:bookmark 1-9:goto q:quit',
48
48
 
49
49
  # Health check messages
50
50
  'health.title' => 'beniya Health Check',
@@ -111,8 +111,8 @@ module Beniya
111
111
  'ui.operation_prompt' => '操作: ',
112
112
 
113
113
  # Help text
114
- 'help.full' => 'j/k:移動 h:戻る l:入る o:開く g/G:先頭/末尾 r:更新 s:絞込 f:検索 F:内容 a/A:作成 m/p/x:操作 b:ブックマーク 1-9:移動 q:終了',
115
- 'help.short' => 'j/k:移動 h:戻る l:入る o:開く s:絞込 b:ブックマーク 1-9:移動 q:終了',
114
+ 'help.full' => 'j/k:移動 h:戻る l:入る o:開く g/G:先頭/末尾 r:更新 f:絞込 s:検索 F:内容 a/A:作成 m/p/x:操作 b:ブックマーク 1-9:移動 q:終了',
115
+ 'help.short' => 'j/k:移動 h:戻る l:入る o:開く f:絞込 s:検索 b:ブックマーク 1-9:移動 q:終了',
116
116
 
117
117
  # Health check messages
118
118
  'health.title' => 'beniya ヘルスチェック',
@@ -66,7 +66,7 @@ module Beniya
66
66
  open_current_file
67
67
  when 'e' # e - open directory in file explorer
68
68
  open_directory_in_explorer
69
- when 's' # s - filter files
69
+ when 'f' # f - filter files
70
70
  if !@filter_query.empty?
71
71
  # フィルタが設定されている場合は再編集モードに入る
72
72
  @filter_mode = true
@@ -89,7 +89,7 @@ module Beniya
89
89
  exit_request
90
90
  when '/' # /
91
91
  fzf_search
92
- when 'f' # f - file name search with fzf
92
+ when 's' # s - file name search with fzf
93
93
  fzf_search
94
94
  when 'F' # F - file content search with rga
95
95
  rga_search
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Beniya
4
- VERSION = '0.5.0'
4
+ VERSION = '0.5.1'
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beniya
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - masisz
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-09-20 00:00:00.000000000 Z
10
+ date: 2025-09-23 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: io-console
@@ -121,6 +121,7 @@ files:
121
121
  - CHANGELOG_v0.5.0.md
122
122
  - README.md
123
123
  - README_EN.md
124
+ - Rakefile
124
125
  - beniya.gemspec
125
126
  - bin/beniya
126
127
  - config_example.rb