一括表示

− 野ざらし言 −

[4534] マクロの修正お願いの件

あかべこ(代理:めざら) 2019/04/12(Fri) 13:44
http://www.tanomura.com/?software
あかべこ氏からメールで依頼がありました.
利用案内・追記「VZに関連する相談事について」(http://mezala.la.coocan.jp/noznote.html#vz)の扱いに準じて,掲載させていただきます.

……………………………………………………………………………………………

めざらさんお久しぶりです。Akabeko です。唐突ですが、お願いがあります。

マクロの修正のことです。

「year.def」 という小物マクロが存在します。私これを多年愛用しています。

このマクロは西暦年月日→日本元号年月日に変換してくれます。

tanomura(田野村)さんという方の作品です。

ところが、本年5月1日、元号が「平成」から「令和」へ改元されますから、このマクロを修正しないと実用上支障が出ます。

tanomuraさんにメール打ちまして修正をお願いしましたが、返事がありません。さりとて、私、マクロのユーザーですが、作ったり改造、修正したりする知識がありません。

そこで、めざらさんにお願いする次第です。year.defを添付します。宜しくお願いします。

[4535] Re: マクロの修正お願いの件

あかべこ(代理:めざら) 2019/04/12(Fri) 13:47
[4534]へのコメント
メールに添付されたマクロ
…………………………………………………………………………………………

===== year.def 年表記変換 =====

; 年表記変換マクロ YEAR.DEF
; (VZ Editor version 1.5/1.6 共通)
; (C) T.Tanomura, 1992/9/15, 1994/3/5

【機能】
 年表記を西暦から元号に変換したり、元号から西暦に変換したり、両様
の表記の併記に変換したりします。

【用法】
 年表記の上にカーソルを置いてマクロを起動します。1回目は、変換結
果の出力形式のメニューが出ますので、どれかを選択します。

 試しに、次の最初の年表記(「1888年」)の上にカーソルを置いてマク
ロを起動し、メニューの2番を選択してみてください。その後、マクロを
続けて4回起動してみてください。
  1868(明治元年)
    1912(大正元)年
    1926(昭和元)年
  1989(平成元)年
  明治27(1894)
【補足】
 処理できるのは、1868(明治元)年から2088(平成100)年までです。
 年数の記述は、半角数字「0」〜「9」の組合せか「元」(元年)で行い
ます。全角数字や漢数字で記述されたものは処理できません。
 「年」の文字はあってもなくてもかまいません。
 2回目以後の実行時に変換結果の出力形式を変更したいときは、[SHIFT]
キーを押した状態でマクロを実行してください。メニューが再び表示され
ます。(J-3100、IBM PC でお使いの場合は、マクロ中の「ks&1」という部
分を「ks&3」に書き換えてください。)
 1回目からメニューが出ないようにするには、マクロ中の「y="$(1)",」
という箇所を変更してください。n 番目の出力形式を基本とするには、括
弧内の数値を n+1 にします。例えば、3番目の出力形式にしたければ
「y="$(4)",」とします。このようにした場合も、[SHIFT]キーを押して実
行すればメニューを表示させることができます。
 「■」の付いた行を変更すれば、元年の出力形式と処理後のカーソル位
置についてカスタマイズすることができます。


* M

89 ^\ "年表記変換"
    ? . a[, b[, f[, g[, i[, m[, n[, x[, y[, kx[,
    a-,  ; ■ 元年の出力形式(「a-,」なら「平成元」、「a+,」なら「平成1」)
    b-,  ; ■ 処理後のカーソル移動(「b-,」なら下、「b+,」なら右)
    (cd=='年') ? #s
    x="0123456789元明治大正昭和平成",
    &f(cd,x) (r<0) ? >X
    y="$(1)", (y.0<2 || ks&1) ? { !01 (r<0) ? >Y y.0=r+2, } y=y.0-1,
    &s &>
    &f(cd,x) (f=10<r) ? { g=(r-11)/2+1, >A }
    &n ((n=r)<1868 || 2088<n) ? >X	; 西暦→元号
    (n<1912) ? { g=1, m=n-1867, >B }
    (n<1926) ? { g=2, m=n-1911, >B }
    (n<1989) ? { g=3, m=n-1925, >B }
                 g=4, m=n-1988, >B
:A  &f(cd,x+11) (0<=r) ? { #d >A }	; 元号→西暦
    (cd=='元') ? m+, ? { &n ((m=r)<1) ? >X }
    (g==1 && m<46) ? { n=m+1867, >B }
    (g==2 && m<16) ? { n=m+1911, >B }
    (g==3 && m<65) ? { n=m+1925, >B }
    (g==4 && m<101)? { n=m+1988, >B }
    >X
:B  &> i-,				; 変換結果を出力
:C  &f(cd,x) (0<=r) ? { #g i++, >C }
    #J (i) { #u } #[
    mi[, mi-,
    (y==1) ? { (f) ? &01 ? &02 }
    (y==2) ? { &01 '(' &02 ')' }
    (y==3) ? { &02 '(' &01 ')' }
    (y==4) ? &01
    (y==5) ? &02
    mi],
    (b) ? { r], (cd=='年') ? #d (0) } ? { &x(r]) #x } >Z
:X  &b(5)
:Y  &x(r])
:Z  y], x], n], m], i], g], f], b], a], &d .
0:  &f(cd,x) (0<=r) ? { #s (r) ? . >^ } #d .
1:  &?("%d",n) .
2:  (a || 1<m) ? r="%4s%d", ? r="%4s元", &?(r,x+8+g*4,m) .

* P

1 "【出力形式】",15,5
   "1 西暦<->元号"
   "2 1993(平成5)"
   "3 平成5(1993)"
   "4 1993"
   "5 平成5"

*

[4537] 田野村氏のyear.def 新元号対応版

めざら 2019/04/12(Fri) 14:03
[4535]へのコメント http://mezala.la.coocan.jp/
===== year.def 年表記変換 =====

; 年表記変換マクロ YEAR.DEF
; (VZ Editor version 1.5/1.6 共通)
; (C) T.Tanomura, 1992/9/15, 1994/3/5, 2019/4/12(新元号対応:mezala)

【機能】
 年表記を西暦から元号に変換したり、元号から西暦に変換したり、両様
の表記の併記に変換したりします。

【用法】
 年表記の上にカーソルを置いてマクロを起動します。1回目は、変換結
果の出力形式のメニューが出ますので、どれかを選択します。

 試しに、次の最初の年表記(「1888年」)の上にカーソルを置いてマク
ロを起動し、メニューの2番を選択してみてください。その後、マクロを
続けて4回起動してみてください。
  1868(明治元年)
    1912(大正元)年
    1926(昭和元)年
  1989(平成元)年
  明治27(1894)
【補足】
 処理できるのは、1868(明治元)年から2118(令和100)年までです。
 年数の記述は、半角数字「0」〜「9」の組合せか「元」(元年)で行い
ます。全角数字や漢数字で記述されたものは処理できません。
 「年」の文字はあってもなくてもかまいません。
 2回目以後の実行時に変換結果の出力形式を変更したいときは、[SHIFT]
キーを押した状態でマクロを実行してください。メニューが再び表示され
ます。(J-3100、IBM PC でお使いの場合は、マクロ中の「ks&1」という部
分を「ks&3」に書き換えてください。)
 1回目からメニューが出ないようにするには、マクロ中の「y="$(1)",」
という箇所を変更してください。n 番目の出力形式を基本とするには、括
弧内の数値を n+1 にします。例えば、3番目の出力形式にしたければ
「y="$(4)",」とします。このようにした場合も、[SHIFT]キーを押して実
行すればメニューを表示させることができます。
 「■」の付いた行を変更すれば、元年の出力形式と処理後のカーソル位
置についてカスタマイズすることができます。


* M

89 ^\ "年表記変換"
    ? . a[, b[, f[, g[, i[, m[, n[, x[, y[, kx[,
    a-,  ; ■ 元年の出力形式(「a-,」なら「平成元」、「a+,」なら「平成1」)
    b-,  ; ■ 処理後のカーソル移動(「b-,」なら下、「b+,」なら右)
    (cd=='年') ? #s
    x="0123456789元明治大正昭和平成令和",
    &f(cd,x) (r<0) ? >X
    y="$(1)", (y.0<2 || ks&1) ? { !01 (r<0) ? >Y y.0=r+2, } y=y.0-1,
    &s &>
    &f(cd,x) (f=10<r) ? { g=(r-11)/2+1, >A }
    &n ((n=r)<1868 || 2088<n) ? >X	; 西暦→元号
    (n<1912) ? { g=1, m=n-1867, >B }
    (n<1926) ? { g=2, m=n-1911, >B }
    (n<1989) ? { g=3, m=n-1925, >B }
    (n<2019) ? { g=4, m=n-1988, >B }
                 g=5, m=n-2018, >B
:A  &f(cd,x+11) (0<=r) ? { #d >A }	; 元号→西暦
    (cd=='元') ? m+, ? { &n ((m=r)<1) ? >X }
    (g==1 && m<46) ? { n=m+1867, >B }
    (g==2 && m<16) ? { n=m+1911, >B }
    (g==3 && m<65) ? { n=m+1925, >B }
    (g==4 && m<31) ? { n=m+1988, >B }
    (g==5 && m<101)? { n=m+2018, >B }
    >X
:B  &> i-,				; 変換結果を出力
:C  &f(cd,x) (0<=r) ? { #g i++, >C }
    #J (i) { #u } #[
    mi[, mi-,
    (y==1) ? { (f) ? &01 ? &02 }
    (y==2) ? { &01 '(' &02 ')' }
    (y==3) ? { &02 '(' &01 ')' }
    (y==4) ? &01
    (y==5) ? &02
    mi],
    (b) ? { r], (cd=='年') ? #d (0) } ? { &x(r]) #x } >Z
:X  &b(5)
:Y  &x(r])
:Z  y], x], n], m], i], g], f], b], a], &d .
0:  &f(cd,x) (0<=r) ? { #s (r) ? . >^ } #d .
1:  &?("%d",n) .
2:  (a || 1<m) ? r="%4s%d", ? r="%4s元", &?(r,x+8+g*4,m) .

* P

1 "【出力形式】",15,5
   "1 西暦<->元号"
   "2 1993(平成5)"
   "3 平成5(1993)"
   "4 1993"
   "5 平成5"

*

[4536] Re: マクロの修正お願いの件

めざら 2019/04/12(Fri) 13:55
[4534]へのコメント http://mezala.la.coocan.jp/
あかべこさん こんにちは.

新元号に対応するささやかな拡張を加えました.
できる限り元マクロに変更を加えないという観点で手を入れましたので,対応する年限は令和70年までとなっています.
細部までは見ていないので,実行する過程で不具合が出るかもしれません.
そのときは,またこちらでご相談ください.

マクロは #4537 をご覧ください.

[4538] Re^2: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 15:58
[4536]へのコメント
 めざらさん
 お久しぶりです。
 マクロの勉強はまったくできていないのですが、year.defは、中身をじっと見て(笑)、自力で修正できました(と、思います)。4月1日の午後2時頃できました。いまのところ、順調に動いています。
 あかべこさんも、愛用しているのですね。まだまだ、Vzは現役です。うれしいです。

[4539] Re^3: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 17:25
[4538]へのコメント
 めざらさん

 比較していたのですが、1点だけ。

:A &f(cd,x+11) (0<=r) ? { #d >A } ; 元号→西暦
(cd=='元') ? m+, ? { &n ((m=r)<1) ? >X }
(g==1 && m<46) ? { n=m+1867, >B }
(g==2 && m<16) ? { n=m+1911, >B }
(g==3 && m<65) ? { n=m+1925, >B }
(g==4 && m<101)? { n=m+1988, >B }

    ここは 31 ではないかと思います。

   間違っていましたら、お許しください。

[4540] Re^4: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 17:26
[4539]へのコメント
すいません。

 ↑ 

 が、ずれていました。
 
 101 のところです。

[4542] Re^4: マクロの修正お願いの件

めざら 2019/04/12(Fri) 17:36
[4539]へのコメント http://mezala.la.coocan.jp/
あ,だいじょぶだいじょぶ.動いてるから.(笑)

…ということは,あの辺のコードはスッキリ整理できそうってことか…
でも原型を尊重して手を入れるのはやめておこう.

[4541] Re^3: マクロの修正お願いの件

めざら 2019/04/12(Fri) 17:32
[4538]へのコメント http://mezala.la.coocan.jp/
キャロルさん お久しぶりです.

明治以降の元号は,頭ん中で計算しちゃうので,あまりマクロのメリットはないんじゃないかなと思ったりもしますが,江戸以前の元号の変換ならKITIさんが14世紀の「嘉慶」生まれの人の年齢を算出するマクロを作成されていましたね.

身近に仙人級の長命者がある方には,とても便利! (笑)

[4543] Re^4: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 18:20
[4541]へのコメント
 めざらさん
 KITIさんのマクロは知りませんでした。そういう需要もあるんですね。私はもっぱら明治以降で十分なんですが、歴史のロジックでいっぱいいっぱいになっているときに、頭の中で西暦換算計算できるほど、デュアルな知能を持っていません(笑)。ですからyear.defには、たいへん助けてもらっています。
 問題は、カラダです。めざらさんも、いろいろ体調面でトラブルを抱えておられるようですが、私も年相応にガタが来ています。Vzというすばらしいツールを十分使いこなせていない自分のカラダが、情けないです。

[4544] Re^5: マクロの修正お願いの件

めざら 2019/04/12(Fri) 18:44
[4543]へのコメント http://mezala.la.coocan.jp/
まぁ,需要はあるかどうかわかりませんが,その手のジョークを受容できるかどうか…でマクロの自分にとっての価値が決まるのでしょうね.

KITIさんは,600年ほど遡ったところでさすがに疲れてしまって中断したわけですけれど,それを「凄い!」と見るか「アホくさ」と見るか,あるいは「もう一息ふた息頑張らんと」と見るか,なんですけど,わたしは心根が素直なので「チョーすげー(笑)」と思って記憶にとどめたというわけです.

参考までに以下のリンクからダウンロードしてご覧ください.
http://mezala.la.coocan.jp/vz/history/h_ear/ish/nenrei.lzh

精神的な問題は,生来の面倒くさがりなので,何事も先送りしてしまって,その結果どうにもやる気が起こらないということになっているのが原因です.仕事は,そうはいかないので,とにかく質はともかくスピード重視.溜めません.それが年下の上司たちに見せる自分の背中だと思って,そこだけは頑張ってます.そこだけ.

[4545] Re^6: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 19:21
[4544]へのコメント
 めざらさん
 DLしました。途中で「もう疲れたからやめた」と書かれていますね。おもしろそうです。今、職場です。これから夜の仕事があり、それを終えて帰宅したら、焼酎お湯割りでも飲みながら、このマクロで遊んでみます。単身赴任先なので、孤独を紛らわせることができそうです。

[4546] Re^7: マクロの修正お願いの件

キャロル 2019/04/12(Fri) 23:20
[4545]へのコメント
 めざらさん
 KITIさんのマクロは、年齢早見表と書かれていますが、本当の意図は樹齢早見表だったのではないでしょうか(笑)。樹齢300年の大木は、元号でいうと、いつこの世に生まれたのか調べるというような。どうでしょうねえ。そういうことを推測するのも、楽しいです。

[4547] Re^8: マクロの修正お願いの件

めざら 2019/04/13(Sat) 07:03
[4546]へのコメント http://mezala.la.coocan.jp/
なるほど! 樹齢なら数百年,千年越えもありですね.(笑)

樹齢目的で完成させるという手もあるんだなぁ……
誰かやらないかな(笑)

まぁ,マクロだったら表作成の必要はないので,西暦かマイナス数字を入れたら答えを出せばいいわけですよね.

[4548] Re^4: マクロの修正お願いの件

masa 2019/04/13(Sat) 18:04
[4541]へのコメント http://masaland.cocolog-nifty.com/blog/2019/04/post-c58d.html
めざらさん、ご無沙汰しています。
Akabekoさんから本件のために、めざらさんの連絡先の問い合わせを頂いたのですが、私が連絡を読む前に分かったとのことでほっとしていました。解決したとの連絡で、ここを見にきてみました。

私はすっかり、マクロが読めなくなってしまいました。HP200LXでないと駄目な処理/アプリ(Pocket Quicken とか)があるので現用ですが、持ち歩くことは無くなりました。
そんなことで、西暦ー元号変換/対照は、スマートフォンで動かすアプリを作って対応するという、LXerにあるまじき方向へ進んでいます。
こんなもので対応をしています。
http://masaland.cocolog-nifty.com/blog/2019/04/post-c58d.html

どれかに数字を入力すると、他の欄が全て連動して変わります。凄く活用するわけではないが、あるとちょっと便利という自分用の微妙なアプリですが、、。
そんな方向に進んでいます。

[4549] Re^5: マクロの修正お願いの件

めざら 2019/04/13(Sat) 19:04
[4548]へのコメント http://mezala.la.coocan.jp/
masa さん こんにちは.
アンテナに入っているので,いつもブログは拝見しています.図書館ネタにしか反応できないですけど.(笑)

さて,Python ですね.Python は今「使いたい/覚えたい」言語の総合一番みたいですね.JavaScriptが最も使われてはいるようですが,Pythonを使いたいと考えているプログラマがものすごく増えているとか.

わたしは LISP を覚えたいなぁ…と思っているのですが,ちょっとした使い捨て処理だと,やはりVZマクロが最も手軽なものですから学習は遅々として進みません.

> LXerにあるまじき方向へ進んでいます。

いや,それはまったく正しい方向だと思いますよ.いつも携帯するモノで使えるようにする…これ最高に便利なことですから.(^^)

[4550] Re^6: マクロの修正お願いの件

masa 2019/04/13(Sat) 20:46
[4549]へのコメント http://masaland.cocolog-nifty.com/blog/2019/04/post-c58d.html

> いや,それはまったく正しい方向だと思いますよ.いつも携帯するモノで使えるようにする…これ最高に便利なことですから.(^^)

確かにそうですね。直ぐに使える、いつでも使える、、が重要ですね。
考えてみれば、HP200LXのコンセプトがそうだったんですものね。
良かった、、、。

[4551] Re^7: マクロの修正お願いの件

キャロル 2019/04/13(Sat) 23:51
[4550]へのコメント
 私のモバdos(NEC)は、未だに現役です。一部にひびが入っても、アロンアルファーで復活。新幹線(東京・大阪間)では、niftyで申し込んだWiFiルーターに無料でついてきた中華パッドを使いながら(メール・ラジコ)、文章作成は、モバdos+Vzです。私の能力不足を、しっかり補ってくれるモバdos+Vzです(笑)。

[4552] Re^8: マクロの修正お願いの件

めざら 2019/04/18(Thu) 08:47
[4551]へのコメント http://mezala.la.coocan.jp/
サイズで考えると10年ほど前に Sony が出していた VAIO Type-p あたりが,モバイルギアを代替するものかと思っていたのですが,そちらには興味が向きませんでしたか?

LXの代替になるようなものは恐らく出ないと思うので,最近注目しているのは GDP pocket あたりなのですけどね.価格も LX(当時) より安いくらいですし.

konnoさんは初号機を調達したようですが,使い勝手などは聞こえてこないなぁ….

[4553] Re^9: マクロの修正お願いの件

キャロル 2019/04/19(Fri) 00:42
[4552]へのコメント
 めざらさん
 モバイルギアの便利さ感動し、万一を考え、モバイルギア予備機は計4〜5台(新品・中古)を購入しています。でも、モバイルギアは故障しないんですね。物理的にヒビは入りますが、アロンアルファーで復活します(笑)。私の退職まであと7年、モバイルギア+Vzは、私のツールとして、私を助けてくれることでしょう。問題は、私の体です。キーボードをたたく指が、痛みで腫れ上がり、両目は網膜剥離で手術を受けました(2017年〜2018年)。モバイルギアの終わりよりも、私の人生の終わりのほうが現実的でしょう(涙)。
 
 

[4554] Re^10: マクロの修正お願いの件

めざら 2019/04/19(Fri) 07:21
[4553]へのコメント http://mezala.la.coocan.jp/
予備機が4〜5台ですと!? 念の入れ方が違いますね!
うちのdocoモバは電池の液漏れで逝ってしまいました。会議の時記録などにタッチタイプ可能なの……と考えての購入だったのですが、そういう用途だとそれほど出番はなくて。パナの電池だったのですが、昔は液漏れ多かったですね。

> 人生の終わりのほうが現実的でしょう(涙)。

うちも2台の予備LXありますが、筐体プラの経年劣化が心配されています。

[4555] Re^11: マクロの修正お願いの件

キャロル 2019/04/19(Fri) 20:42
[4554]へのコメント
 そういえば、モデルによって、筐体プラがべたついてきています。キャノンEOS kiss がべたべたになったときは、腹が立ちました。でもモバイルギアの場合は、なんとか、がまんできるかと(笑)。

[4556] モバギのこと

文太 2019/04/21(Sun) 14:38
[4555]へのコメント
キャロルさん、お久です。

http://hitoriblog.com/?p=54273
http://hitoriblog.com/?p=54520

 僕のドコモバ(docomo製)も現役。
 たしかにベトベトになったのもありますが、上のところまでやるかどうか、
どうしようもなく必要に迫られないと、、、。

 自分にむかっても言っているのですが、体を大事にして、ゆっくりのんびり
モバギ・ライフを楽しみましょう!

[4557] Re: モバギのこと

キャロル 2019/04/21(Sun) 23:05
[4556]へのコメント
文太さん
 お久しぶりです。文太さんのモバギも健在なんですね。
 心強く思います。
 お互いに、ゆっくりのんびりやりましょう。
 子ども時代なら「早く、急いで、がんばろう」という理屈もあり得るでしょうけれど、この年齢になると「早く」というのは、あの世からのお迎えを「早く」となってしまいますので、ゆっくり、のんびりがいいです(笑)。

↑ このページの先頭