TeraTermProject / teraterm

Other
389 stars 31 forks source link

clipb2var does not work in Tera Term 5 #226

Closed sadbeaver closed 1 month ago

sadbeaver commented 1 month ago

clipb2var does no longer work in Tera Term, bug must have been introduced in 5.0 since it does not work there nor in 5.2, however it worked in 4.108.

None of the examples in the tera term help work...

`Example clipb2var data messagebox data 'clipboard data' ; Load the clipboard data over 511 byte ; +------------------------------------------------------------------+ ; | 1024 bytes clipboard text | ; +------------------------------------------------------------------+ ; +-------------------------+--------------------------+-------------+ ; | (1) 511 bytes | (2) 511 bytes | (3) 2 bytes | ; +-------------------------+--------------------------+-------------+

clipb2var data ; (1) stores into the data and the result is 2. messagebox data 'clipboard data 1'

clipb2var data 1 ; (2) stores into the data and the result is 2. messagebox data 'clipboard data 2'

clipb2var data 2 ; (3) stores into the data and the result is 1. messagebox data 'clipboard data 3'

clipb2var data 3 ; the data is empty and the result is 0. messagebox data 'clipboard data 4' ; read a clipboard content and write it to a file. fileopen fp 'clipboard.txt' 0 if result <> 0 end

offset = 0 do clipb2var buff offset if result > 0 filewrite fp buff offset = offset + 1 loop while result = 2

fileclose fp `

nmaya commented 1 month ago

Thank you for your reporting. I confrimed this issue.

@zmatsuo

受け取る文字列変数があふれるかどうかにかかわらず、最も単純なコードで動作しません。

clipb2var data
messagebox data 'data'
zmatsuo commented 1 month ago

最も単純なコードで動作しません。

修正しました。

ブランチ #226_clipb2var_dont_work です。 https://ci.appveyor.com/project/teraterm/github-snapshot/builds/49937107/artifacts

文字変数の区切りがUTF-8の文字区切りにならないことが出てきますが、 Tera Term 4 の時の Shift_JIS のときも同様だなと思います。

文字変数長の上限をなくせれば(#90)解決できそうですよね。

nmaya commented 1 month ago

@zmatsuo 修正を確認しました。ありがとうございます。

offsetありの動作も同様になりました。

; Before run, copy following 1024 byte string to clipboard
;Aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Cc

; (1) expected to store from 'A' to '/'
clipb2var data
messagebox data 'clipboard data 1'

; (2) expected to store from 'B' to '/'
clipb2var data 1
messagebox data 'clipboard data 2'

; (3) expected to store 'Cc'
clipb2var data 2
messagebox data 'clipboard data 3'
zmatsuo commented 1 month ago

ありがとうございます。 クローズします。