clipb2var

【Tera Term マクロ言語】コマンドリファレンス

clipb2var 機能

[その他のコマンド]

クリップボードのテキストデータをコピーします。

コマンドライン

clipb2var <strvar> [<offset>]

機能説明

クリップボードのテキストデータを <strvar> へ代入します。
<strvar>
文字列を格納する変数名を指定します。
文字列変数の最大長の制限を受けるため、クリップボードのテキストデータが長すぎた場合は 512 バイト目以降が切り捨てられます。
[<offset>]
<offset> を指定すると、offset*511+1 文字目以降の内容が代入されます。
<offset> に 0 以外を指定するためには、事前に <offset> 無し、または <offset> に 0 を指定してclipb2varを実行する必要があります。
<offset> に 0 以外を指定した時に得られるクリップボードの内容は現在のものではなく、最後に <offset> 無し、または <offset> に 0 を指定して clipb2var を実行した時点でのクリップボードの内容となります。
<result>意味
0クリップボードを開けませんでした。
またはテキストデータではありませんでした。
または offset の値が適切ではありませんでした。
1<strvar> への代入に成功しました。
2<strvar> への代入は行われたが、入りきらなかった部分は切り捨てられました。
offset の値を増やして再度 clipb2var コマンドを実行する事で、切り捨てられた部分にアクセスできます。
3クリップボードの内容を記憶しておくためのメモリの確保に失敗しました。
この場合でも先頭から最大 511 バイトは変数に代入されますが、offset を増やして再度 clipb2var コマンドを実行しても切り捨てられた部分にはアクセスできません。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<strvar>文字列クリップボードのテキストデータを格納する変数を指定します。
<offset>整数オフセット量を指定します。

対象バージョン

バージョン 4.46 以降で利用可能です。

戻り値

戻り値として以下の変数が定義されます。
変数名意味
result0クリップボードを開けなかった。
またはテキストデータではなかった。
または offset の値が適切ではなかった。
1<strvar> への代入に成功した。
2<strvar> への代入は行われたが、入りきらなかった部分は切り捨てられた。
offset の値を増やして再度 clipb2var コマンドを実行する事で、切り捨てられた部分にアクセスできる。
3クリップボードの内容を記憶しておくためのメモリの確保に失敗した。
この場合でも先頭から最大 511 バイトは変数に代入される。
offset を増やして再度 clipb2var コマンドを実行しても切り捨てられた部分にはアクセスできない。
<strvar>文字列クリップボードのテキストデータ
<strvar> は、コマンド実行時に指定した任意の文字列です。

関連コマンド

種別:その他Ver機能の簡易説明
02344.46以降テキストデータをクリップボードにコピーする。

使用方法

使用例

・クリップボードのデータを単純コピーする場合
clipb2var data
messagebox data 'clipboard data'
・511バイトを超えるクリップボード文字列を読み込む場合
; 511バイトを超えるクリップボード文字列を読み込む
; +------------------------------------------------------------------+
; |  1024 bytes clipboard text                                       |
; +------------------------------------------------------------------+
; +-------------------------+--------------------------+-------------+
; | (1) 511 bytes           | (2) 511 bytes            | (3) 2 bytes | 
; +-------------------------+--------------------------+-------------+

clipb2var data ; data に (1) が代入され、result に 2 が代入される
messagebox data 'clipboard data 1'

clipb2var data 1 ; data に (2) が代入され、result に 2 が代入される
messagebox data 'clipboard data 2'

clipb2var data 2 ; data に (3) が代入され、result に 1 が代入される
messagebox data 'clipboard data 3'

clipb2var data 3 ; data にはなにも代入されず、result に 0 が代入される
messagebox data 'clipboard data 4'
・クリップボードの内容をファイル(clipboard.txt)に書き出す場合
; クリップボードの内容をファイル(clipboard.txt)に書き出す
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

サンプル

サンプルマクロはありません。

備考

特にありません。