(11228)
11228:
LXCLND.DEF の祝日変更対応版
投稿者:
konno
2024/04/27(土) 23:07
コメント数 1
STIME のカレンダ表示などを弄っていて、LXCLND.DEF と表示を比べてみたら
2月23日とか12月23日など違っている日がいくつかありました。
STIMEの HOLIDAY.DAT を見てみると
02/23 2020-2099 天皇誕生日 (令和天皇)
12/23 1989-2018 天皇誕生日 (平成天皇)
なるほど、最近変更された祝日に LXCLND.DEF が対応してないのですね。
STIME のバグでなくてほっとしました。(^^;
見たついでに、LXCLND.DEF の祝日テーブルを修正しました。
LXCLND.DEF には HOLIDAY.DAT のデータ形式で参考にさせてもらいましたからね。
LXCLND.DEF 431行目
72: ;---- holiday definition -----------------------------------------
; hh..2 = "1874>1948=11;1967>0=11",
hh..2 = "1874>1948=11;1967>0=11;2020>0=23",
; hh..4 = "1874>1948=3;1928>0=29",
hh..4 = "1874>1948=3;1928>1988=29;1989>2006=29;2007>0=29",
; hh..5 = "1949>0=3;1985>0=4;1949>0=5",
hh..5 = "1949>0=3;1985>2006=4;2007>0=4;1949>0=5",
hh..8 = "2016>0=11",
; hh..10 = "1874>1948=17;1966>1999=10;2000>0=BB",
hh..10 = "1874>1948=17;1966>1999=10;2000>2019=BB;2020>0=BB",
; hh..12 = "1989>0=23",
hh..12 = "1989>2018=23",
該当する HOLIDAY.DAT の祝日は
02/23 2020-2099 天皇誕生日 (令和天皇)
04/29 1948-1988 天皇誕生日 (昭和天皇)
04/29 1989-2006 みどりの日
04/29 2007-2099 昭和の日
05/04 1985-2006 国民の休日
05/04 2007-2099 みどりの日
08/11 2016-2099 山の日
10/10 1966-1999 体育の日
10/BB 2000-2019 体育の日
10/BB 2020-2099 スポーツの日
12/23 1989-2018 天皇誕生日 (平成天皇)
修正した LXCLND.DEF を VZマクロの部屋に置きました。
以下の直リンクでも見ることができます。
#txt:LXCLND.DEF
- No.11228 -
このTreeへ
[リストへもどる]
pre
(11228)
11230:
Re: LXCLND.DEF の祝日変更対応版
投稿者:
めざら
2024/04/29(月) 07:36
参照先:http://mezala.la.coocan.jp/
11228 番 konno さんへのコメント コメント数 1
わたしもオリ・パラ関連特別措置法による移動は無視しました。
四月と五月は敢えて弄りませんでした。祝日名を表示するわけでもないので。
- No.11230 -
このTreeへ
コメント元:11228 へ
[リストへもどる]
soft
(11228)
11231:
Re^2: LXCLND.DEF の祝日変更対応版
投稿者:
konno
2024/04/29(月) 23:16
11230 番 めざら さんへのコメント コメント数 1
> わたしもオリ・パラ関連特別措置法による移動は無視しました。
これは Wikipedia でも参考程度になっていますね。
> 四月と五月は敢えて弄りませんでした。祝日名を表示するわけでもないので。
そうなんですよね、表示は同じなんですが、オリジナルでも分けているところがありましたので。
ところで、今回 LXCLND.DEF で気が付いたところがあります。
中央のカレンダに今日の日付が () に囲われてわかりやすくなっていますが
表示月を移動しても同じ日付に () が付いたままになっていますね。
これはバグという見方もできますが、仕様かもしれないと思いました。
このマクロはスケジュール管理のために月を変えてカレンダを参照しやすくなっています。
その時、今日は何日だっけ?と思うこともありそうなので、その確認になるかなと。
なので、この仕様はこのままにしておきます。
STIME でも現在の日付に色付けしていますが、改編時バグって毎月同じ日付に色がついて
修正に苦労したりして。いや、年取って頭が働かなくなっただけなんですけどね。(^^;
う、そういえば今日は祝日なのに今日の日付が赤になっていない。(>_<)
うーん、直せるかしら・・・(^^;
- No.11231 -
このTreeへ
コメント元:11230 へ
[リストへもどる]
soft
(11228)
11232:
Re^3: LXCLND.DEF の祝日変更対応版
投稿者:
めざら
2024/04/30(火) 08:26
参照先:http://mezala.la.coocan.jp/
11231 番 konno さんへのコメント コメント数 1
> 表示月を移動しても同じ日付に () が付いたままになっていますね。
日付出力のために疑似カーソルを表示しています。
これは当日であるとは限らないです。(当日は[TAB]入力直後の表示)
- No.11232 -
このTreeへ
コメント元:11231 へ
[リストへもどる]
soft
(11228)
11233:
Re^4: LXCLND.DEF の祝日変更対応版
投稿者:
konno
2024/05/01(水) 16:02
11232 番 めざら さんへのコメント コメント数 1
> > 表示月を移動しても同じ日付に () が付いたままになっていますね。
> 日付出力のために疑似カーソルを表示しています。
> これは当日であるとは限らないです。(当日は[TAB]入力直後の表示)
疑似カーソルって、Shift+カーソルキーで () の日を移動出来るんですね。
凄いテクニックです。ソースを見てみました。
LXCLND.DEF 189行目以降
10: ;---- make menu --------------------------------------------------
pr..15 = "$$3($$7", ;right of today
pr..16 = "$$3)$$7", ;left of today
ここが多分メニューの中で () を表示するところでしょうか。
実際のメニュー表示はその下のマシン語かな。
10: ;---- mklxclnd.asm ----
こうなると全く読めないので追及は諦めます。(^^;
- No.11233 -
このTreeへ
コメント元:11232 へ
[リストへもどる]
pre
(11228)
11235:
Re^5: LXCLND.DEF の祝日変更対応版
投稿者:
めざら
2024/05/02(木) 13:17
参照先:http://mezala.la.coocan.jp/
11233 番 konno さんへのコメント コメント数 1
> 疑似カーソルって、Shift+カーソルキーで () の日を移動出来るんですね。
メニュー表示中のコマンドキーを受けるもののうち,以下の四つですね。
(#37) { r=7, &11 }
(#38) { r=7, &12 }
(#a) { r=1, &11 }
(#f) { r=1, &12 }
これらのキーを受け取ったときに「日付」を再設定します。
再設定する値は現在の値に1日(左右)か7日(上下)を増減して再表示します。
再表示のしかたについては,多くのカレンダーマクロで当日の背景色を変えたり
括弧でくくったりするのとまったく同じで,メニューアイテムへの埋込みです。
(括弧の場合は前後の空白に上書きすることになりますが)
メニューアイテムの書換えというのはトンでもなく面倒なわけで,
オリジナルのnomad版ではテキストに書き出すという手法をとっていたため
konnoさんのようにキーを押しっぱなしにしたりする人(^^;はとても使えなかった。
Yushiさんはメモリ(ラインバッファ)上に出力することと機械語化で高速化し,
Emmettさんは機械語化をさらに徹底的に行なって超高速化しています。
メニュー内でカーソルを動かすというのは確かに高度なテクニックですが,
(アセンブラに馴れ親しんでいるkonnoさんには釈迦に説法に違いないのですが)
とにかくひたすら面倒な「低級」テクニックとも言えると思います。
Yushiさんなんか,メニューで十字カーソルですぜ。
そんな面倒なコードをよく書くものだなぁとひたすら感心します。
あ,元に戻って,「日付」というのは保持している値なので,あまり意味はなく,
「当日」を指示されたときだけリセットするというイメージですね。
- No.11235 -
このTreeへ
コメント元:11233 へ
[リストへもどる]
pre
(11228)
11236:
Re^6: LXCLND.DEF の祝日変更対応版
投稿者:
konno
2024/05/03(金) 22:01
11235 番 めざら さんへのコメント
> > 疑似カーソルって、Shift+カーソルキーで () の日を移動出来るんですね。
> メニュー表示中のコマンドキーを受けるもののうち,以下の四つですね。
> (#37) { r=7, &11 }
> (#38) { r=7, &12 }
> (#a) { r=1, &11 }
> (#f) { r=1, &12 }
なるほど、詳細な解説ありがとうございます。
これなら改造も出来そうな気がしてきました。(やらないけど。(^^;)
> メニューアイテムの書換えというのはトンでもなく面倒なわけで,
> オリジナルのnomad版ではテキストに書き出すという手法をとっていたため
> konnoさんのようにキーを押しっぱなしにしたりする人(^^;はとても使えなかった。
い、いやぁ、、、そんなことは・・・ない、と思いますです。(^^;
実際のところ今カレンダ表示をモードによって分岐を変えるので四苦八苦してます。
とんでもないスパゲッティが出来上がりつつあり、ソースでごまかせるのかと。(^^;
> あ,元に戻って,「日付」というのは保持している値なので,あまり意味はなく,
> 「当日」を指示されたときだけリセットするというイメージですね。
これ、勘違いしていました。疑似カーソルの意味がやっとわかりました。
スケジュールとのリンクとか日付出力とかでこの機能が必要だったのですね。
- No.11236 -
このTreeへ
コメント元:11235 へ
[リストへもどる]
pre