bonze2 @ ウィキ
http://w.atwiki.jp/bonze2/
bonze2 @ ウィキ
ja
2010-11-09T14:31:49+09:00
1289280709
-
JScript on WSH
https://w.atwiki.jp/bonze2/pages/15.html
-[[JScript/よくあるパターン]]
*emacsでJScriptを編集するための準備
**メジャーモード
.wsfファイルとして作成する場合、XMLとJavaScriptの表記がまざることになる。
***mmm-mode
http://sourceforge.net/projects/mmm-mode/
cd mmm-mode
EMACS=meadow ./configure
make
として,コンパイルをします.
これができなければ, dired で開いて拡張子が el のファイルにmでマークをつけて, Bとしてコンパイルしてもかまいません.
後は,フォルダごと site-lisp へ移動します.
そして,以下の設定を追加します.
;; mmm-mode
(require 'mmm-mode)
(setq mmm-global-mode 'maybe)
;; 色設定.これは,好みで.色をつけたくないなら nil にします.
(set-face-background 'mmm-default-submode-face "navy")
参考:http://www.bookshelf.jp/soft/meadow_13.html#SEC102
***js2-mode
http://code.google.com/p/js2-mode/
-最新ファイルをダウンロード。
-site-lisp にコピー
-ファイル名を js2.el にする
-バイトコンパイル(Diredでマーク(m)してバイトコンパイル(B))
;; js2-mode
(autoload 'js2-mode "js2" nil t)
(add-to-list 'auto-mode-alist '("\\.js$" . js2-mode))
mmm-modeで有効にするには、さらに
(mmm-add-classes
'((wsf
:submode js2-mode
:front "<script[^>]*>\n<!--\n"
:back " ?-->\n</script>")))
(mmm-add-mode-ext-class nil "\\.wsf$" 'wsf)
***javascript-mode
http://www.brgeight.se/
参考:http://d.hatena.ne.jp/m-hiyama/20080627/1214549228
http://stickydiary.blog88.fc2.com/blog-entry-94.html
2010-11-09T14:31:49+09:00
1289280709
-
トップページ
https://w.atwiki.jp/bonze2/pages/1.html
**トップページ
自分用まとめサイト(の予定)
-[[REXX]]
-[[JScript on WSH]]
-[[IMS]]
-[[DB2]]
-[[MQ]]
-[[CICS]]
#calendar(option=link)
- あれれ -- hogehoge (2009-11-18 04:48:48)
- あん -- うん (2009-11-18 04:52:02)
- ふが -- ほげ (2009-11-18 04:53:27)
- bfffdbfdb -- gege (2009-11-18 05:15:00)
- b -- a (2009-11-18 05:31:33)
- d -- c (2009-11-18 05:36:47)
#comment
----
今日のアクセス数
&counter(today)
合計アクセス数
&counter(total)
----
**まずはこちらをご覧ください。
-[[@wikiの基本操作>http://atwiki.jp/guide/category2.html]]
-[[用途別のオススメ機能紹介>http://atwiki.jp/guide/category22.html]]
-[[@wikiの設定/管理>http://atwiki.jp/guide/category6.html]]
**分からないことは?
-[[@wiki ご利用ガイド>http://atwiki.jp/guide/]]
-[[よくある質問>http://atwiki.jp/guide/category1.html]]
-[[無料で会員登録できるSNS内の@wiki助け合いコミュニティ>http://sns.atfb.jp/view_community2.php?no=112]]
-[[@wiki更新情報>http://www1.atwiki.jp/guide/pages/264.html]]
-[[@wikiへのお問合せフォーム>http://atwiki.jp/helpdesk]]
等をご活用ください
2009-12-27T05:39:35+09:00
1261859975
-
REXX
https://w.atwiki.jp/bonze2/pages/13.html
スクリプト言語。IBMメインフレームでも使えるというのが最大の特徴かも。
オブジェクト指向を取り入れたバージョンもあるらしい(ooREXX)が、
ここではそうでないREXX(classic REXX)を扱う。
-[[REXX/文法]]
-[[REXX/変数・配列・連想配列]]
-[[REXX/関数・サブルーチン]]
-[[REXX/レシピ集]]
----
今日のアクセス数
&counter(today)
合計アクセス数
&counter(total)
----
2009-11-11T21:20:40+09:00
1257942040
-
REXX/レシピ集
https://w.atwiki.jp/bonze2/pages/19.html
* ファイルの入力
ファイルからレコードを読むなら、TSOのEXECIOを利用。
"EXECIO 1 DISKR INDD (STEM LINE.)" /* INDD というDDから1レコード読んで、配列 LINE に入れる
SAY LINE.1
使用メモリを気にしないなら、いっぺんに全レコードを読んでしまうこともできる。
"EXECIO * DISKR INDD (STEM LINE.)" /* INDD というDDから全レコードを読んで、配列 LINE に入れる
DO I=1 TO LINE.0 /* 配列の添字 0 の要素はレコード数
SAY LINE.I /* 1レコードずつ順に表示
END
ファイルを1レコードずつ読んで処理をする典型的なコード
DO WHILE 1
"EXECIO 1 DISKR INDD (STEM LINE.)"
IF RC<>0 THEN LEAVE /* ファイルの終わりに達したら DO WHILE ループから抜ける
(do something)
END /* DO WHILE 1 の終わり
*ファイルの出力
LINE.1='HELLO,WORLD'
"EXECIO 1 DISKW OUTDD (STEM LINE.)" /* OUTDD というDDに LINE.1 の内容を1レコード書き込む
複数レコードをいっぺんに出力する場合
LINE.1='//JOBNAME JOB CLASS=A,MSGCLASS=A'
LINE.2='//IEFBR14 EXEC PGM=IEFBR14'
LINE.3='//DD1 DD DSN=DATASET,DISP=(MOD,DELETE),SPACE=(TRK,1),UNIT=SYSDA'
"EXECIO 3 DISKW OUTDD (STEM LINE.)" /* OUTDD というDDに LINE.1〜LINE.3 の内容を書き込む
レコード数を変数で指定する場合
LINE.1='//JOBNAME JOB CLASS=A,MSGCLASS=A'
LINE.2='//IEFBR14 EXEC PGM=IEFBR14'
LINE.3='//DD1 DD DSN=DATASET1,DISP=(MOD,DELETE),SPACE=(TRK,1),UNIT=SYSDA'
(略)
LINE.9='//DD7 DD DSN=DATASET7,DISP=(MOD,DELETE),SPACE=(TRK,1),UNIT=SYSDA'
LINE.0=9 /* 出力するレコード数
"EXECIO * DISKW OUTDD (STEM LINE.)"
*TSOコマンドを発行し、その結果を受け取る
OUTTRAP() で、TSOコマンドのレスポンスを配列に受け取るようにする。
X=OUTTRAP('LINE.')
"LISTDS ('dataset name') MEMBERS" /* 配列 LINE. にLISTDSコマンドのレスポンスが入る
DO I=1 TO LINE.0 /* LINE.0 はコマンドレスポンスの行数
(do something)
END
X=OUTTRAP('OFF')
2009-11-11T21:19:52+09:00
1257941992
-
REXX/関数・サブルーチン
https://w.atwiki.jp/bonze2/pages/18.html
関数とサブルーチンの違いは、結果を呼び出し元に返すかどうかだけ。
|関数|返す|
|サブルーチン|返さない|
関数
J=FUNC(2) /* 関数っぽく呼び出せる
SAY J /* 4
EXIT
FUNC: PROCEDURE
ARG N
RETURN N*N
*変数のスコープ
関数・サブルーチンの中では、変数スコープは完全に独立している。
(逆に言えば、呼び出し元と同じ変数を使用しても影響を与えない)
引数は、値渡し、参照渡しいずれも可能。
**値渡し
-基本は値渡し
-配列を渡すことはできない
I=10
CALL SUB I
SAY I /* 10
EXIT
SUB: PROCEDURE
ARG I
SAY I /* 10
I=50 /* Iを変更
SAY I /* 50
RETURN
**参照渡し
-配列を渡すことも可能
-参照渡しをする変数名が固定されてしまうので、サブルーチンの可搬性が低下し、美しくない
I=10
ARRAY.=0
CALL SUB
SAY I /* 50 10 ではない
SAY ARRAY.2 /* 100 0 ではない
EXIT
SUB: PROCEDURE EXPOSE I ARRAY. /* I と ARRAY. を参照渡しとする(名前はここで決まってしまう)
SAY I /* 10
I=50 /* Iを変更
SAY I /* 50
ARRAY.2=100
RETURN
参照渡しをする変数名を、実行時に指定するようにすることも可能ではある。
この例では、参照渡しする変数の名前を REFERENCE という変数が示す。
でも REFERENCE という名前は、サブルーチンで固定されてしまうので、結局可搬性はあんまりよくない。
I=100
REFERENCE='I'
CALL SUB
SAY I /* 500
K=200
REFERENCE='K'
CALL SUB
SAY K /* 500
EXIT
SUB: PROCEDURE (REFERENCE) /* 参照渡しする変数名を示す変数は REFERENCE という名前にすると決める
REF=WORD(REFERENCE,1) /* REFERENCE の最初のワードが、参照渡しされた変数名
SAY VALUE(REF) /* 最初の呼び出しでは 100、2番目では 200
VALUE(REF,500)
RETURN
2009-11-11T19:17:07+09:00
1257934627
-
JScript/よくあるパターン
https://w.atwiki.jp/bonze2/pages/16.html
*ユーザーからの入力を受け付ける
jscriptやWSHにはユーザーからの入力を受け付ける機能はない。
COMで他のソフトの機能を利用するようにすればよい。
どうもexcelを使うのがとても簡単な様子。
var excel=new ActiveXObject("Excel.Application");
var result=excel.InputBox("何かいれてね","what?");
excel.quit();
2009-10-30T13:12:38+09:00
1256875958
-
REXX/変数・配列・連想配列
https://w.atwiki.jp/bonze2/pages/14.html
-事前定義は不要
-データ型を持たない(基本は文字列だが、コンテキストによって自動的に変換)
-初期値は、変数名そのもの
SAY VAR1 /* VAR1 が出力される
*配列
添字は . (ドット)で区切って指定
ARRAY.1='ABC'
ARRAY.2=1000
添字は変数でも指定可能
I=1
SAY ARRAY.I /* ABC が出力される
外部関数などと配列をやりとりする場合、添字 0 の要素は、配列の要素数を示すことが多い。
*連想配列
配列の添字は、整数だけでなく文字列を指定することも可能。
NAME='HOGE'
ADDRESS.NAME='TOKYO'
NAME='BACH'
ADDRESS.NAME='FRANCE'
:
KEY='BACH'
SAY ADDRESS.KEY /* FRANCE が出力される
ただし、添字をリテラルで指定することはできない。
ADDRESS.'HOGE'='TOKYO' /* これはだめ
連想配列の添字や要素を列挙する方法は提供されていないことに注意。
(他の言語でいうところの foreach など)
2009-10-30T06:03:08+09:00
1256850188
-
メニュー
https://w.atwiki.jp/bonze2/pages/2.html
**メニュー
-[[トップページ]]
----
**リンク
-[[@wiki>>http://atwiki.jp]]
-[[@wikiご利用ガイド>>http://atwiki.jp/guide/]]
// リンクを張るには "[" 2つで文字列を括ります。
// ">" の左側に文字、右側にURLを記述するとリンクになります
**更新履歴
#recent(20)
&link_editmenu(text=ここを編集)
2009-10-30T04:58:55+09:00
1256846335
-
右メニュー
https://w.atwiki.jp/bonze2/pages/3.html
**更新履歴
#recent(20)
&link_editmenu2(text=ここを編集)
2009-10-30T04:37:45+09:00
1256845065
-
プラグイン/ニュース
https://w.atwiki.jp/bonze2/pages/4.html
* ニュース
@wikiのwikiモードでは
#news(興味のある単語)
と入力することで、あるキーワードに関連するニュース一覧を表示することができます
詳しくはこちらをご覧ください。
=>http://atwiki.jp/guide/17_174_ja.html
-----
たとえば、#news(wiki)と入力すると以下のように表示されます。
#news(wiki)
2009-10-30T04:37:45+09:00
1256845065