cafe_buy_duo 0.0.10 → 0.0.13

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cafe_buy_duo.rb +167 -39
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 69f822498d2a7c548092090ebb42cf643ab3f1e17075a1f61a66542abfe76e0c
4
- data.tar.gz: 9bbe8d88f50c23137a97d98fc0021a30454683f0ae605e561541f59aca31383f
3
+ metadata.gz: 5eb3fe7832522e711e10227fd0a1a4f266272fd21c7bf66bd1d6b1643a66e59f
4
+ data.tar.gz: a48720614d40f126b29d7984f95e28d5171b41f4917e517411996375a23b551d
5
5
  SHA512:
6
- metadata.gz: 4995b53d0a52ba782f51def5fa609766f940d06be13ae0afe1b620524bac23c417edbbf5a482d6bce83cd45f5a443b375420d91790ca0431fa73335cd5e07849
7
- data.tar.gz: b6c0dc2a769b615c12d10218bf113c9e80a3d41d45656f0f2238655692b7ea6d6bfcc951df15dcbf887e3ad6abc81bf4ce2a398da3dc1ae84ade67cdaf2c62f7
6
+ metadata.gz: 6674b922841cbaa739d2f3c71dbb7a4e1269540d6bfd30098c7be56637fc2e5b432afed800a765216f152c2140fb8cbf97232d9b6bbd3697c3abfe57b0b3b7e2
7
+ data.tar.gz: 2157c6d4ed2d9877d949ed7bfb8c00d07d2daebe07ba1cbf51af611467ae9b98e06324ffe5ad4ad33f5d87dc9f7deb4a6fec4f89a27d95d702666f0acf47190b
data/lib/cafe_buy_duo.rb CHANGED
@@ -3075,10 +3075,36 @@ class Wordpress
3075
3075
  end
3076
3076
 
3077
3077
  if @data['포스트설정']['인용구변경'].checked?
3078
- @data['포스트설정']['인용구변경단어'].text.to_s.force_encoding('utf-8').split(',').each do |i|
3079
- content = content.split(i.force_encoding('utf-8')).join(""+'<inyonggoo src="">'+@data['포스트설정']['인용구'].sample+'</inyonggoo>'+"")
3078
+ if @data['포스트설정']['인용구문구설정'].checked?
3079
+ # 인용구순서 사용
3080
+ if @data['포스트설정']['인용구순서'].checked?
3081
+ quote_index = 0
3082
+ @data['포스트설정']['인용구변경단어'].text.to_s.force_encoding('utf-8').split(',').each do |i|
3083
+ content = content.gsub(i.force_encoding('utf-8')) {
3084
+ quote = "<inyonggoo src=''>" + @data['포스트설정']['인용구'][quote_index] + "</inyonggoo>"
3085
+ quote_index = (quote_index + 1) % @data['포스트설정']['인용구'].length
3086
+ quote
3087
+ }
3088
+ end
3089
+ elsif @data['포스트설정']['인용구랜덤'].checked?
3090
+ # 인용구랜덤 사용 시
3091
+ @data['포스트설정']['인용구변경단어'].text.to_s.force_encoding('utf-8').split(',').each do |i|
3092
+ # 랜덤으로 인용구를 선택하여 각 단어마다 다른 인용구가 적용되도록 함
3093
+ content = content.gsub(i.force_encoding('utf-8')) {
3094
+ # 랜덤으로 인용구를 선택
3095
+ chosen_quote = @data['포스트설정']['인용구'].sample
3096
+ "<inyonggoo src=''>" + chosen_quote + "</inyonggoo>"
3097
+ }
3098
+ end
3099
+ end
3100
+ elsif @data['포스트설정']['인용구제목사용'].checked?
3101
+ # 제목으로 적용할 경우, 특정 단어가 포함된 위치에 제목 스타일을 적용
3102
+ @data['포스트설정']['인용구변경단어'].text.to_s.force_encoding('utf-8').split(',').each do |i|
3103
+ # i는 '특정단어'입니다. 이 단어가 content에 여러 번 있을 수 있습니다.
3104
+ content = content.split(i.force_encoding('utf-8')).join(""+'<inyonggoo src="">'+title+'</inyonggoo>'+"")
3080
3105
  end
3081
3106
  end
3107
+ end
3082
3108
 
3083
3109
  @data['table'][index][-1] = 80
3084
3110
  @data['table'] << []
@@ -3218,8 +3244,14 @@ class Wordpress
3218
3244
  end
3219
3245
 
3220
3246
 
3221
- if @data['포스트설정']['제목내용설정'].checked?
3222
- title = content.split("\n")[0]
3247
+ if @data['포스트설정']['내용첫줄제목에입력'].checked?
3248
+ title = content.split("\n")[0]
3249
+
3250
+ end
3251
+
3252
+ if @data['포스트설정']['제목을내용첫줄입력'].checked?
3253
+
3254
+ content = "#{title}\n" + content
3223
3255
  end
3224
3256
 
3225
3257
  if @data['포스트설정']['중앙정렬'].checked?
@@ -4122,20 +4154,34 @@ class Wordpress
4122
4154
  stretchy false
4123
4155
  text "내용폴더경로 ex)C:\\내용\\폴더1"
4124
4156
  }
4125
- button('폴더째로 불러오기'){
4126
-
4127
- on_clicked{
4128
- path = @data['이미지설정']['폴더경로2'].text.to_s.force_encoding('utf-8').force_encoding('utf-8')
4129
- Dir.entries(@data['이미지설정']['폴더경로2'].text.to_s.force_encoding('utf-8')).each do |file|
4130
- if file == '.' or file == '..'
4157
+ button('폴더째로 불러오기') {
4158
+ on_clicked {
4159
+ path = @data['이미지설정']['폴더경로2'].text.to_s.force_encoding('utf-8')
4131
4160
 
4132
- else
4133
- file_data = File.open(path+'/'+file,'r', :encoding => 'utf-8').read()
4134
- @data['내용설정']['내용'] << [false, file, file_data]
4161
+ # 경로가 유효한지 확인
4162
+ if Dir.exist?(path)
4163
+ Dir.entries(path).each do |file|
4164
+ if file == '.' or file == '..'
4165
+ next
4166
+ else
4167
+ begin
4168
+ # 파일을 열고 내용을 읽어서 추가
4169
+ file_data = File.open(path + '/' + file, 'r', encoding: 'utf-8').read
4170
+ @data['내용설정']['내용'] << [false, file, file_data]
4171
+ rescue => e
4172
+ # 파일을 열 수 없는 경우, 오류 메시지 출력
4173
+ puts "파일을 열 수 없습니다: #{file}, 오류: #{e.message}"
4174
+ end
4175
+ end
4135
4176
  end
4177
+
4178
+ # 내용 배열에서 마지막 빈 항목 제거
4179
+ @data['내용설정']['내용'] << []
4180
+ @data['내용설정']['내용'].pop
4181
+ else
4182
+ # 경로가 유효하지 않을 경우, 오류 메시지 출력
4183
+ puts "경로가 존재하지 않습니다: #{path}"
4136
4184
  end
4137
- @data['내용설정']['내용'] << []
4138
- @data['내용설정']['내용'].pop
4139
4185
  }
4140
4186
  }
4141
4187
  }
@@ -4220,19 +4266,28 @@ class Wordpress
4220
4266
  stretchy false
4221
4267
  text "사진폴더경로 ex)C:\\사진\\폴더2"
4222
4268
  }
4223
- button('폴더째로불러오기'){
4224
-
4225
- on_clicked{
4226
- path = @data['이미지설정']['폴더경로'].text.to_s.force_encoding('utf-8').force_encoding('utf-8')
4227
- Dir.entries(@data['이미지설정']['폴더경로'].text.to_s.force_encoding('utf-8')).each do |file|
4228
- if file == '.' or file == '..'
4229
-
4230
- else
4231
- @data['이미지설정']['이미지'] << [false, file, path+"\\"+file.force_encoding('utf-8')]
4269
+ button('폴더째로 불러오기') {
4270
+ on_clicked {
4271
+ path = @data['이미지설정']['폴더경로'].text.to_s.force_encoding('utf-8')
4272
+
4273
+ # 경로가 유효한지 확인
4274
+ if Dir.exist?(path)
4275
+ Dir.entries(path).each do |file|
4276
+ if file == '.' or file == '..'
4277
+ next
4278
+ else
4279
+ # 폴더 내의 파일을 이미지 리스트에 추가
4280
+ @data['이미지설정']['이미지'] << [false, file, path + "\\" + file.force_encoding('utf-8')]
4281
+ end
4232
4282
  end
4283
+
4284
+ # 마지막 빈 항목 추가 후 제거 (원래 로직에 맞춰)
4285
+ @data['이미지설정']['이미지'] << []
4286
+ @data['이미지설정']['이미지'].pop
4287
+ else
4288
+ # 경로가 존재하지 않으면 경고 메시지 출력
4289
+ puts "경로가 존재하지 않습니다: #{path}"
4233
4290
  end
4234
- @data['이미지설정']['이미지'] << []
4235
- @data['이미지설정']['이미지'].pop
4236
4291
  }
4237
4292
  }
4238
4293
  }
@@ -4541,21 +4596,29 @@ class Wordpress
4541
4596
  top 5
4542
4597
  left 0
4543
4598
  on_toggled{
4544
- if @data['포스트설정']['제목을랜덤'].checked? == true
4545
- if @data['포스트설정']['제목내용설정'].checked?
4546
- @data['포스트설정']['제목내용설정'].checked = false
4547
- end
4599
+ if @data['포스트설정']['제목을랜덤'].checked?
4600
+ @data['포스트설정']['내용첫줄제목에입력'].checked = false
4601
+ @data['포스트설정']['제목을내용첫줄입력'].checked = false
4548
4602
  end
4549
4603
  }
4550
4604
  }
4551
- @data['포스트설정']['제목내용설정'] = checkbox('내용의 첫 문장을 제목으로 설정'){
4605
+ @data['포스트설정']['내용첫줄제목에입력'] = checkbox('내용의 첫 문장을 제목으로 설정'){
4552
4606
  top 6
4553
4607
  left 0
4554
4608
  on_toggled{
4555
- if @data['포스트설정']['제목내용설정'].checked? == true
4556
- if @data['포스트설정']['제목을랜덤'].checked?
4557
- @data['포스트설정']['제목을랜덤'].checked = false
4558
- end
4609
+ if @data['포스트설정']['내용첫줄제목에입력'].checked?
4610
+ @data['포스트설정']['제목을랜덤'].checked = false
4611
+ @data['포스트설정']['제목을내용첫줄입력'].checked = false
4612
+ end
4613
+ }
4614
+ }
4615
+ @data['포스트설정']['제목을내용첫줄입력'] = checkbox('제목을 내용 첫 줄에 넣기'){
4616
+ top 6
4617
+ left 1
4618
+ on_toggled{
4619
+ if @data['포스트설정']['제목을내용첫줄입력'].checked?
4620
+ @data['포스트설정']['내용첫줄제목에입력'].checked = false
4621
+ @data['포스트설정']['제목을랜덤'].checked = false
4559
4622
  end
4560
4623
  }
4561
4624
  }
@@ -4835,22 +4898,66 @@ class Wordpress
4835
4898
  left 1
4836
4899
  text 'ex) OO시 OO구 OO동 270-68'
4837
4900
  }
4838
- @data['포스트설정']['인용구변경'] = checkbox('내용 특정단어를 인용구로 적용'){
4901
+ @data['포스트설정']['인용구변경'] = checkbox('특정단어를 인용구로 적용'){
4839
4902
  top 11
4840
4903
  left 0
4904
+ on_toggled {
4905
+ if @data['포스트설정']['인용구변경'].checked?
4906
+ @data['포스트설정']['인용구제목사용'].enabled = true # '내용투명' 활성화
4907
+ @data['포스트설정']['인용구문구설정'].enabled = true # '내용투명' 활성화
4908
+ else
4909
+ @data['포스트설정']['인용구변경'].checked = false # 체크 해제
4910
+ @data['포스트설정']['인용구제목사용'].enabled = false # 비활성화
4911
+ @data['포스트설정']['인용구문구설정'].enabled = false # 비활성화
4912
+ @data['포스트설정']['인용구순서'].enabled = false # 비활성화
4913
+ @data['포스트설정']['인용구랜덤'].enabled = false # 비활성화
4914
+ end
4915
+ }
4841
4916
  }
4842
4917
  @data['포스트설정']['인용구변경단어'] = entry{
4843
4918
  top 11
4844
4919
  left 1
4845
4920
  text '특정단어'
4846
4921
  }
4847
- label('ㄴ인용구 사용시 들어갈 문구'){
4922
+ @data['포스트설정']['인용구제목사용'] = checkbox('인용구를 제목으로 삽입 설정'){
4848
4923
  top 12
4849
4924
  left 0
4925
+ enabled false # 기본적으로 비활성화
4926
+ on_toggled {
4927
+ if @data['포스트설정']['인용구제목사용'].checked?
4928
+ @data['포스트설정']['인용구문구설정'].checked = false # 체크 해제
4929
+ @data['포스트설정']['인용구문구설정'].enabled = false
4930
+ else
4931
+ @data['포스트설정']['인용구문구설정'].enabled = true
4932
+ end
4933
+ }
4934
+
4935
+ }
4936
+ #label('ㄴ인용구 사용시 들어갈 문구'){
4937
+ @data['포스트설정']['인용구문구설정'] = checkbox('인용구에 들어갈 문구 설정'){
4938
+ top 13
4939
+ left 0
4940
+ enabled false # 기본적으로 비활성화
4941
+
4942
+ on_toggled {
4943
+ if @data['포스트설정']['인용구문구설정'].checked?
4944
+ @data['포스트설정']['인용구제목사용'].checked = false
4945
+ @data['포스트설정']['인용구제목사용'].enabled = false
4946
+ @data['포스트설정']['인용구순서'].enabled = true # '내용투명' 활성화
4947
+ @data['포스트설정']['인용구랜덤'].enabled = true # '내용투명' 활성화
4948
+ else
4949
+ @data['포스트설정']['인용구문구설정'].checked = false # 체크 해제
4950
+ @data['포스트설정']['인용구순서'].enabled = false # 비활성화
4951
+ @data['포스트설정']['인용구랜덤'].enabled = false # 비활성화
4952
+ @data['포스트설정']['인용구제목사용'].enabled = true
4953
+ end
4954
+ }
4955
+
4850
4956
  }
4851
4957
  button('설정 파일 불러오기'){
4852
- top 12
4958
+ top 13
4853
4959
  left 1
4960
+
4854
4961
  on_clicked{
4855
4962
  file = open_file
4856
4963
  if file != nil
@@ -4858,6 +4965,27 @@ class Wordpress
4858
4965
  @data['포스트설정']['인용구'] = file_data.split(',')
4859
4966
  end
4860
4967
  }
4968
+ }
4969
+ @data['포스트설정']['인용구순서'] = checkbox('인용구 순서 사용'){
4970
+ top 14
4971
+ left 0
4972
+ enabled false # 기본적으로 비활성화
4973
+ on_toggled {
4974
+ if @data['포스트설정']['인용구순서'].checked?
4975
+ @data['포스트설정']['인용구랜덤'].checked = false
4976
+ end
4977
+ }
4978
+
4979
+ }
4980
+ @data['포스트설정']['인용구랜덤'] = checkbox('인용구 랜덤 사용'){
4981
+ top 14
4982
+ left 1
4983
+ enabled false # 기본적으로 비활성화
4984
+ on_toggled {
4985
+ if @data['포스트설정']['인용구랜덤'].checked?
4986
+ @data['포스트설정']['인용구순서'].checked = false
4987
+ end
4988
+ }
4861
4989
  }
4862
4990
  }
4863
4991
  }
@@ -5384,7 +5512,7 @@ class Wordpress
5384
5512
  @data['포스트설정']['복사,저장 허용'].checked = true
5385
5513
  @data['포스트설정']['자동출처 사용'].checked = false
5386
5514
  @data['포스트설정']['CCL사용'].checked = false
5387
-
5515
+ @data['포스트설정']['인용구랜덤'].checked = true
5388
5516
 
5389
5517
  }.show
5390
5518
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cafe_buy_duo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-18 00:00:00.000000000 Z
11
+ date: 2025-01-06 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: File to Clipboard gem
14
14
  email: mymin26@naver.com