nblog_zon 111.117.899 → 111.119.999

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/nblog_zon.rb +88 -1
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3042209d1cdf1891eb123205e1654e8fb4703412602f4709cdc3458da3e69ca7
4
- data.tar.gz: 2837fed48bec16b723f325bbde547b999a9eaec90d8874e471590e8b23b0db8c
3
+ metadata.gz: 1ea92559030bbf7a4e0766496bcc9aeb51f8f214f9152a0f720c5850f05d7916
4
+ data.tar.gz: 211fce5304e0fa5536f0aa5d02a5bb93f942ec6dee1cdc4481164367f482acd6
5
5
  SHA512:
6
- metadata.gz: 26a4779ec8e13b7cb5b33d09e0f9b8d214d5387e9b176a39c5c5cb30d0835fae3462dbd6c4b7fcbf53ac74ae7449bde58f60f63a52f27295dd70c50fc85d2fb8
7
- data.tar.gz: 40b5e8eb499ab2a48483ccb06c014ee3241d064d969c612592c9b9fa9cc722318ac74eda16cd3623351516ceb497eb1aad114e91888bb0bc9f6f249f1b583750
6
+ metadata.gz: 05a8d6cf07bf01ae65db54c2ef436a71955f4d17ca9e1da4e4ae01115563917d7c71f59888ea7697b8d7c065561115a54afa1c6d842e465d0bcb485ec0d81ec7
7
+ data.tar.gz: 9c71fc7524a3c137c7dbaf1a6b22f4278c64f61e24e022717b490f436591c8e397aa8ffa10e4f837f0850a1b1309676a88473585304817892b2f4f7397416c98
data/lib/nblog_zon.rb CHANGED
@@ -18,7 +18,7 @@ require 'digest'
18
18
  require 'auto_click'
19
19
  require 'rainbow/refinement'
20
20
  require 'httpclient'
21
- require 'win32ole'
21
+ #require 'win32ole'
22
22
  include AutoClickMethods
23
23
  using Rainbow
24
24
  include Glimmer
@@ -1380,6 +1380,32 @@ class Naver
1380
1380
  end
1381
1381
 
1382
1382
 
1383
+ elsif i2.to_s.include?('<clip_number')
1384
+ # <clip_number> 태그에서 값을 추출하여 clip_123 배열에 저장 (중복 제거)
1385
+ clip_123 = i2.to_s.scan(/<clip_number>(\d+)<\/clip_number>/).flatten.uniq
1386
+
1387
+ # 내 클립 버튼 클릭
1388
+ @driver.find_element(:xpath, '//*[@type="button" and @data-name="moment" and @data-log="dot.moment"]').click
1389
+ sleep(2)
1390
+
1391
+ # clip_123에 있는 모든 번호를 사용하여 클립을 선택하고 삽입
1392
+ clip_123.each do |clip_number|
1393
+ # clip_number - 1을 사용하여 data-index에 맞는 클립을 클릭
1394
+ @driver.find_element(:xpath, "//*[@class='se-sidebar-element se-sidebar-element-moment' and @data-index='#{clip_number.to_i - 1}']").click
1395
+ sleep(2)
1396
+ end
1397
+
1398
+ # 클립 창 닫기
1399
+ @driver.find_element(:xpath, '//*[@type="button" and @class="se-sidebar-close-button"]').click
1400
+ sleep(2)
1401
+
1402
+ # 본문 입력 탭 닫기 1
1403
+ @driver.find_element(:xpath, '//*[@type="button" and @data-type="toggle" and @data-name="bold"]').click
1404
+ sleep(1)
1405
+
1406
+ # 본문 입력 탭 닫기 2
1407
+ @driver.find_element(:xpath, '//*[@type="button" and @data-type="toggle" and @data-name="bold"]').click
1408
+ sleep(1)
1383
1409
 
1384
1410
 
1385
1411
  elsif i2.to_s.include?('<inyonggoo')
@@ -3277,6 +3303,51 @@ class Wordpress
3277
3303
  @data['table'] << []
3278
3304
  @data['table'].pop
3279
3305
 
3306
+ ##여기서부터 클립####-------------------------------------------------------------------------------
3307
+ if @data['포스트설정']['클립적용'].checked?
3308
+ clip_word = @data['포스트설정']['클립단어'].text.to_s.force_encoding('utf-8')
3309
+ clip_123 = @data['포스트설정']['클립넘버'].text.to_s.force_encoding('utf-8').split(',')
3310
+
3311
+ # content를 줄 단위로 분리
3312
+ content_lines = content.split("\n")
3313
+ new_lines = []
3314
+
3315
+ content_lines.each do |line|
3316
+ processed = false
3317
+
3318
+ # 1. 클립 단어 패턴 처리: 클립 단어를 <clip_number>로 감싸기
3319
+ if line.include?(clip_word)
3320
+ # 클립 단어를 <clip_number> 태그로 감싸기
3321
+ parts = line.split(clip_word, 2)
3322
+ prefix = parts[0]
3323
+ suffix = parts[1]
3324
+
3325
+ # 클립 넘버를 순차적으로 적용
3326
+ clip_number = clip_123.shift || clip_123.last
3327
+
3328
+ open_tag = prefix[/<p[^>]*?>/i] || ""
3329
+ close_tag = suffix[/<\/p>/i] || ""
3330
+
3331
+ prefix_text = prefix.sub(open_tag, '')
3332
+ suffix_text = suffix.sub(close_tag, '')
3333
+
3334
+ # 새로운 라인으로 변경
3335
+ new_lines << "#{open_tag}#{prefix_text}</p>" unless prefix_text.strip.empty?
3336
+ new_lines << "<clip_number>#{clip_number}</clip_number>"
3337
+ new_lines << "#{open_tag}#{suffix_text}#{close_tag}" unless suffix_text.strip.empty?
3338
+
3339
+ processed = true
3340
+ end
3341
+
3342
+ # 변경이 없었으면 원래 줄 추가
3343
+ new_lines << line unless processed
3344
+ end
3345
+
3346
+ content = new_lines.join("\n")
3347
+ end
3348
+ ######-------------------------------------------------------------------------------
3349
+
3350
+
3280
3351
 
3281
3352
 
3282
3353
  if @data['포스트설정']['단어링크적용'].checked?
@@ -5418,6 +5489,22 @@ class Wordpress
5418
5489
  left 1
5419
5490
  text 'api key 입력 필수!!'
5420
5491
  }
5492
+
5493
+ @data['포스트설정']['클립적용'] = checkbox('클립 내용에 넣기'){
5494
+ top 16+ aa1
5495
+ left 0
5496
+ }
5497
+
5498
+ @data['포스트설정']['클립단어'] = entry(){
5499
+ top 16+ aa1
5500
+ left 1
5501
+ text '특정단어'
5502
+ }
5503
+ @data['포스트설정']['클립넘버'] = entry(){
5504
+ top 16+ aa1
5505
+ left 3
5506
+ text '클립넘버 ex)1,2,3'
5507
+ }
5421
5508
 
5422
5509
  }
5423
5510
  }
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nblog_zon
3
3
  version: !ruby/object:Gem::Version
4
- version: 111.117.899
4
+ version: 111.119.999
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-05-30 00:00:00.000000000 Z
10
+ date: 2025-06-19 00:00:00.000000000 Z
11
11
  dependencies: []
12
12
  description: File to Clipboard gem
13
13
  email: rnjstnswp123@naver.com