新規投稿は記事一覧のフォームからお願いします
【mg.-9】は内部ワークにある前回の FEP 制御パラメタで,&j(0) で FEP を オフにしたときに,それ以前の FEP の状態を保存しておく場所です。 mg.-9 に保存された値を見て FEP の制御をマクロで行うことができます。 ちょっと唐突な導入ですが,以前の純 DOS などと環境が異なるというメモです。 …というのも,以前 HP200LX が壊れたあとの携帯端末として GPD Micro PC を 購入したのですが,[全半],[変換],[無変換]等の存在しない英語キーボードで あることはもちろん,ひどく特殊なキー配列でして,しかも LX のような 便利なシフト系キーロック機能がないし,IME の起動キーが Ctrl+'~' に 固定されています。Ctrl は左のみで '~' も左端なので,超絶押しにくい。 スキャンコードを入れ替えてキー配置を入れ替える設定を使えばどうにでも なるような気もしますが,そもそもキーの数が少ないのでそれも支障あり。 どうせ VZ しか使わないからマクロでオン・オフすればいいや…と思ったけど, なんだかちょっとうまくいかない。…というのも,他の端末ではそのような 面倒が一切なかったので,FEP オン・オフのトグルなんてやったことなかった。 以前 Emmett さんが言っていた… ※ FEP OFF の状態からもう一度 &j(0) をやった場合、98 版 だと mg.-9=0 になるのに、DOSV では mg.-9=9 になる。 …に従って &j(0) (mg.-9==9)?&j(10) をやっても変な動作をする。 &j(0) (mg.-9)??&j(10) だと動いたりする。どうもおかしい。 …というわけで,テストマクロで mg.-9 の値を確かめると, オフのときには 0,オンのときには 1 を示した。な〜んだ…… というわけで,VTDOS 環境では IME がオフのときに &j(0) を 実行すると mg.-9 は 0。オンのときは 1。むしろ覚えやすいや。 =t *m 1 @B "IME ON/OFF" &j(0) &m("OFF") (mg.-9)??{ &j(10) &m("ON") } * …というメモでした。チャンチャン。
カーソル位置の数値に税を加算して書き換えるためのマクロです。 Emmettさんの LXcash.def で小遣い帳をつけていまして, 同じレシートでも科目が異なるものがあるときは分けて記録するのですが, 商品ごとに税額が打たれているわけではないので,面倒だったんですね。 起動キーがないのは,テキストを自動で書き換えるマクロであることから, 不用意に単独で起動しないよう他のマクロからコールするようにしたからです。 = consTax.def = by H_ear #if 0 カーソル位置の数値を取得して消費税率を掛けた数値に書き換える 通常実行で軽減税率,シフト実行で重税率(逆の設定可) 小数点以下は切り捨てがデフォルト(四捨五入の設定可) カンマ区切りを半自動認識(3桁から4桁をまたぐ変換のみ対応)(仕様) #endif * mad for vz! 1 "" ?. k1&ks, ;税率の選択 %k ;====^ カスタマイズ項目 a0, ;; シフト実行時の税率 0:重税率 1:軽減税率 %a b0, ;; 四捨五入の設定 0:無効 1:有効 %b ;; c0, ;; 3桁から4桁になる場合のカンマ区切りの有無 0:無 1:有 %c ;====$ ここまで d=",0123456789", (cd==$20 || ct==1)?{ ;数字の直後なら位置を調整 #s &SF(d,cd) ;戻り値はアドレス(先頭カンマ) (r==0 || r==d)?{ #d >q };ジャンプは使いたくないが… } &SF(d,cd) (r)??{ :q &m("数字ではない.") . } mp[, ps[=pa, ;直接pwに取得できるが汎用性を考慮 &01 pw[=p=r, i-, ; ---- get str ---- (-1){ #d &SF(d,cd) (r)??{} } #b (-1){ #s &SF(d,cd) (r)??{ #d } } #G ; ---- get num #J #I ;作業窓で加工・取得 :l #s (cd==',')?{ #g i++, } (lx)?>l;ここもう少しスマートにしたい &n r[, #[ n], ; ---- add tax ---- (k)?k110, ?k108, ;軽減税率と重税率 %k %a &Im(p,0) &Ia(p,n) &Im(p,k) &Id(p,100) m=r, n=p..0, (b)?{ (m>49)?n++, } ;四捨五入の場合 %b (i==0 && n>999)?{ #s #s } ;桁の繰り上がり %c mi[+, (p..1)?{ &?("%,lu",n,p..1) }?{ &?("%,u",n) } mi], :z ; ---- exit ---- pw], ps], mp], &d #] . ;;00: ; ---- look result ---- ; &m("Result: %d %u $%x '%c' $"%16s$"",r,r,r,r,r) 01: ; ---- buffer ---- (5+$)."$(10,0)$[16]" ;;02: ; ---- sub routine --- ;<-- r = ;--> r = * [Variables] a 加算する税率フラグ(シフト実行時分岐用) b 四捨五入の設定フラグ c カンマ区切りの有無フラグ(未使用) d 数値文字列の先頭アドレス i カウンタ(カンマ数)想定する用途と相違あり k シフトキーフラグ→軽減税率/重税率 m mod 剰余(四捨五入有効時使用) n 取得数値→課税後数値 p ロング演算用ポインタアドレス [Buffers] pa as ps [local] as pw / long int.(4bytes) [History] 2023/03/13 0.10 [Notes] もっと無駄なくできるはずだが… 確かに無駄が多いように思うが,昔みたいに頑張って短くしなくても…とも思う。
> コマツでもマイクロショベルという製品群があり,一番小さなもの
> 民生用パワーショベルですか……なんかちょっと使ってみたいです(笑)
> 昔から夢想している土壌改良サービスがありまして。
> しかしコチコチなので,出力の足りない家庭用耕耘機ではなかなか刃が立ちません。
> でも、これってインボイス制度とは独立した話だと思う。
> 多くのナス科植物、芽の先端の1センチもあれば普通に挿し木で発根
> 今まで家族の誰も、ソラニン中毒と思しき症状が出たことはありません。
> 確定申告で控除対象のものがあれば,いくばくか還付されますよね。
> 制度ではなく,日本には税金を食い物にする連中がいるということではないでしょうか。
> うう。それは常識を根底から覆す凄い発見では?
> まぁ,うちでは大きいのから使っていって,2〜3センチのが残っている
> うちの母親、収入は純粋に年金のみなんですが、毎年確定申告しています。
> 欧州では2割3割といった高率の消費税がインボイス制度でそれなりにうまく回っているとのこと。日本の制度とどこがどう違うんだろう。
> 今回、その先端部が5ミリ未満(ただし数センチの地下茎つき)の芋を植えたら15センチくらいのそれなりに立派な地上部が生えてきたわけですよ。
> 品種にもよりますが、馬鈴薯は芋が成熟してから50日前後は休眠期らしい。
> 年金生活者が確定申告なんて普通はしなくてすむ筈なのですが,
> 兄弟が不動産だけで自分が金融資産だけみたいな分配になってしまってバランスがよろしくない
> 来年はインボイス制度の関係で不動産所得等を含む確定申告は市役所で受け付けてもらえなくなる
> インボイスなんて弱い者いじめみたいな税制
> いや,それって種芋って言いますか(笑)
> 取りこぼした小芋から茎が伸びていたりするのをよく見かけますが,要するにこれに類するものですよね。
> 晩秋にひょろひょろしているやつはいつごろ発芽しているのだろうか……。謎は深まる。
> 元が5ミリくらいの種芋から育ったものもあります
>なにやら遠大な話ですね。10年後にVZ実行可能な環境が残っているかどうか。
> >> としきさんも同世代でしたっけ?"
> >四捨五入すれば、まだ60です。
> 僕のイメージでは、としきさんは、55? 鯖を数えたでしょう?
> Vzソースに実際的に手を出すのには、まだ、あと9年半あります。
> そういう約束になっています。
> 2001年8月には、初回渡米をしているはずです。そして、いきなり911。
> これより、としき発見のバグですね。Vzのメモリ管理(テンポラリー
> ファイル管理)だと思ってます。
> 半年の経験では、DOSコマンドラインに下りると、vtdosでは落ちますね。
> 45回くらいは落ちましたね。下りる前にファイルセーブが習慣になっています。
> WinMEなら起きないのに! (^_^メ)