プログラミング工房 > HSP > サンプルスクリプト > 

クリップボード内のテキストに行番号を付加する

 スクリプトはダウンロードしてそのまま実行ファイルが作れる形になっていますが、コンパイルにはこちらのクリップボード操作モジュールが必要です。

 実行時には、"linenum.exe 5" 等、コマンドライン引数に行番号の桁数を指定する必要があります。(ショートカットファイルにも指定できます)

>> ダウンロード

/***********************************************************

	クリップボード内のテキストに行番号を付加する

		【2005/09/13 更新】

***********************************************************/

#packopt	name	"linenum"		// 実行ファイル名指定
#packopt	runtime	"hsp3c.hrt"	// 使用ランタイム指定
#packopt	hide	1		// 起動時ウィンドウを表示しない

/* それぞれのDLLのAPIを使用するための定義ファイル(HSP3標準添付) */
#include	"user32.as"
#include	"kernel32.as"
/* クリップボード操作用モジュール */
#include	"gm_clipboard_text.hsp"

	/* コマンドライン引数を利用して、strf命令で使用する書式指定文字列を作成 */
	format = "%0"+dir_cmdline+"d:\t"
	
	/* クリップボード内のテキストを取得。テキストがなければ終了 */
	getcbtext buf
	if buf="" {
		goto *@f
	}
	/* 行ごとにstrf命令で生成した行番号を付加 */
	notesel buf
	repeat notemax
		noteget linestr,cnt
		linestr = strf(format,cnt+1)+linestr
		noteadd linestr,cnt,1
	loop
	/* テキストをクリップボードにセット */
	setcbtext buf

*@
	/* 処理終了の合図に警告音を鳴らす */
	MessageBeep 0
	end