忍者ブログ

はすからいくよブログ

いや、ブログだから。 日々のぐだぐだを書き殴っていきますよ。 ホームページ作るの面倒くさいし。

ネットの謎文字コード訂正.mac

私は秀丸を愛用しています。
以下のマクロを作ったので、後日の自分の為、ここに晒しておこうと思います。
(文字コードとか勝手に変えられてしまわないよね?)
謎フォント1.png例えば気になったネット記事を保存しておきたいと思うことがある。今回気になったのはこの記事。↓
https://toyokeizai.net/articles/-/746752?page=1
この記事内容はまぁ置いといて、いつもの通り、PRINT EDIT WE というアドオンを用いて、不用な広告を除外して、目的の記事だけPDFで保存出来ました。
しかし、その記事で検索をかけてもヒットしない場合があります。

謎フォント2.png例えばこの記事を書いた「舟津昌平」という人の「舟」の字は――、

謎フォント3.pngコピペしてテキストデータに表示させると、表示がおかしい。


謎フォント4.pngそれで、「舟」の字でPDF上で検索をかけても、「そんな文字はありません」と言われる


これは要するに、見た目が一緒でも文字コード上では別文字になっているからです。
ブラウザ上ではよろしいように表示されてますから気がつきませんが、保存して資料とし、後日検索してヒットしないのでは、困ります。それになんか、わたし、こういうの許せませんw

と言う訳で、こうした異文字?を置換する秀丸エディタのマクロを作りました。作りは単純ですが、この文字を集めたところを、褒めて欲しいなぁ(^_^)

後日、更に異文字を見つけたらUPDATEしていくつもりです。


さぁそういうわけで、作ったマクロが以下です。↓

----------<キリトリ線>-----------------------------
//ネットニュースのコピペの際、中国フォントなのか、独自のコードを使って表記している文字列データを、日本の当該コードに置き換えるためのマクロ。見つけた分のみ。完ぺきではない;
//見つけたのは⺠⻄⻑⻭⼀⼆⼈⼊⼒⼟⼤⼥⼦⼭⼯⼰⼼⼿⽀⽂⽅⽇⽉⽋⽐⽒⽔⽕⽚⽢⽣⽤⽯⽰⽶⾁⾂⾃⾅⾏⾒⾔⾖⾙⾚⾛⾜⾝⾟⾥⾦⾯⾰⾷⾸⾺⾼⿂⿃⿇⿊⿐⾈⼩⽭⽌⽴;
//これらの文字コードを調べて、検索文字列に代入して全置換をしている。なお、このマクロファイルはUTF-16形式で保存しないと秀丸は理解してくれない。;
replaceall "u2EA0" , "民" , regular, nohilight;
replaceall "u2EC4" , "西" , regular, nohilight;
replaceall "u2ED1" , "長" , regular, nohilight;
replaceall "u2EED" , "歯" , regular, nohilight;
replaceall "u2F00" , "一" , regular, nohilight;
replaceall "u2F06" , "二" , regular, nohilight;
replaceall "u2F08" , "人" , regular, nohilight;
replaceall "u2F0A" , "入" , regular, nohilight;
replaceall "u2F12" , "力" , regular, nohilight;
replaceall "u2F1F" , "土" , regular, nohilight;
replaceall "u2F24" , "大" , regular, nohilight;
replaceall "u2F25" , "女" , regular, nohilight;
replaceall "u2F26" , "子" , regular, nohilight;
replaceall "u2F2D" , "山" , regular, nohilight;
replaceall "u2F2F" , "工" , regular, nohilight;
replaceall "u2F30" , "己" , regular, nohilight;
replaceall "u2F3C" , "心" , regular, nohilight;
replaceall "u2F3F" , "手" , regular, nohilight;
replaceall "u2F40" , "支" , regular, nohilight;
replaceall "u2F42" , "文" , regular, nohilight;
replaceall "u2F45" , "方" , regular, nohilight;
replaceall "u2F47" , "日" , regular, nohilight;
replaceall "u2F49" , "月" , regular, nohilight;
replaceall "u2F4B" , "欠" , regular, nohilight;
replaceall "u2F50" , "比" , regular, nohilight;
replaceall "u2F52" , "氏" , regular, nohilight;
replaceall "u2F54" , "水" , regular, nohilight;
replaceall "u2F55" , "火" , regular, nohilight;
replaceall "u2F5A" , "片" , regular, nohilight;
replaceall "u2F62" , "甘" , regular, nohilight;
replaceall "u2F63" , "生" , regular, nohilight;
replaceall "u2F64" , "用" , regular, nohilight;
replaceall "u2F6F" , "石" , regular, nohilight;
replaceall "u2F70" , "示" , regular, nohilight;
replaceall "u2F76" , "米" , regular, nohilight;
replaceall "u2F81" , "肉" , regular, nohilight;
replaceall "u2F82" , "臣" , regular, nohilight;
replaceall "u2F83" , "自" , regular, nohilight;
replaceall "u2F85" , "臼" , regular, nohilight;
replaceall "u2F8F" , "行" , regular, nohilight;
replaceall "u2F92" , "見" , regular, nohilight;
replaceall "u2F94" , "言" , regular, nohilight;
replaceall "u2F96" , "豆" , regular, nohilight;
replaceall "u2F99" , "貝" , regular, nohilight;
replaceall "u2F9A" , "赤" , regular, nohilight;
replaceall "u2F9B" , "走" , regular, nohilight;
replaceall "u2F9C" , "足" , regular, nohilight;
replaceall "u2F9D" , "身" , regular, nohilight;
replaceall "u2F9F" , "辛" , regular, nohilight;
replaceall "u2FA5" , "里" , regular, nohilight;
replaceall "u2FA6" , "金" , regular, nohilight;
replaceall "u2FAF" , "面" , regular, nohilight;
replaceall "u2FB0" , "革" , regular, nohilight;
replaceall "u2FB7" , "食" , regular, nohilight;
replaceall "u2FB8" , "首" , regular, nohilight;
replaceall "u2FBA" , "馬" , regular, nohilight;
replaceall "u2FBC" , "高" , regular, nohilight;
replaceall "u2FC2" , "魚" , regular, nohilight;
replaceall "u2FC3" , "鳥" , regular, nohilight;
replaceall "u2FC7" , "麻" , regular, nohilight;
replaceall "u2FCA" , "黒" , regular, nohilight;
replaceall "u2FD0" , "鼻" , regular, nohilight;
replaceall "u2F88" , "舟" , regular, nohilight;
replaceall "u2F29" , "小" , regular, nohilight;
replaceall "u2F6D" , "矛" , regular, nohilight;
replaceall "u2F4C" , "止" , regular, nohilight;
replaceall "u2F74" , "立" , regular, nohilight;
----------<キリトリ線>-----------------------------

拍手[0回]

PR

エクセルの条件付き書式、訳がワカラン!!> 曜日を出力。日曜祝日を網掛け 実現!!

会計係から渡された、上司の出勤日を報告するための
月報のフォーマット(書き込み用紙)を改良してました。
会計係の如何にもデキる雰囲気を醸し出す事務嬢が、
「書式が変わりましたからこれでお願いします」
とわざわざUSBメモリ持参で持って来たから、
さぞや凝った作りをしているのだろうな、
とファイルを開いてみたら、エクセルでワープロのように作った表、だった。
毎回、これを曜日と月を手動で書き替えて、印刷して出せ、ということらしい。
もうね、アホかと。
なんかマイクロソフトか何かの資格を取ったと言っていたが、ほんとかなぁ。
というわけで作り始めましたよ。自分が楽をするために。

印刷エリア以外の所に西暦と報告月を入力するセルを設けて、そこを絶対参照で日付を式で生成し書類上の日にちのセルに表示させる。
更に、表示型式で曜日を出力する。日付の入力されたセルで表示形式を"aaa"を与えると簡単にその日付に対応する曜日を得ることが出来る。
出力された曜日が「日」だった時、そのセルを網掛けするよう、条件付き書式を設定する。
別のシートに今年の祝日をコピペしておいて、名前を「旗日」と定義し、
旗日の時には日にちのセルを網掛けする

という概念に問題はないはずなのだが、どうもうまく条件付き書式が作動しない。
相対参照にして書式コピーでコピペしても、式中で相対にしておいたセル番地が意図したように変化しない。
エクセル2003になってから、この辺がとても使いづらくなった。
今日は不退転の覚悟で、原因究明に当たった。
このハードルを越えないと、ずっと悩むことになる。
で――、結局以下のことが分かった。

https://answers.microsoft.com/ja-jp/msoffice/forum/all/excel2010/f9370114-36c9-461d-924f-427d2f436b1f
条件付き書式は範囲の最初のレコードで定義する。ややこしく慣れないな。


以下をエクセルの新シートのA1に貼り付ければ私がやってたことが分かるかも。

---------------------------------------
2024 年 1 月←これを入力する
 出 社 報 告 書 ="("&$C$1&"月分)"
=JIS(IF($C$11,"令和"&TEXT($A$1-2019,"#")&"年12月21日~令和"&TEXT($A$1-2018,"#")&"年1月20日",
"令和"&TEXT($A$1-2018,"#")&"年"&$C$1-1&"月21日~"&$C$1&"月20日")) =JIS("令和"&TEXT($A$1-2018,"#")&"年"&$C$1&"月20日報告")



日 曜 出社印 備     考 泊 日 曜 出社印 備     考 泊
21 =IF($C$11,TEXT(DATE($A$1-1,12,$A8),"aaa"),TEXT(DATE($A$1,$C$1-1,$A8),"aaa")) 6 =TEXT(DATE($A$1,$C$1,$G8),"aaa")
22 =IF($C$11,TEXT(DATE($A$1-1,12,$A9),"aaa"),TEXT(DATE($A$1,$C$1-1,$A9),"aaa")) 7 =TEXT(DATE($A$1,$C$1,$G9),"aaa")
23 =IF($C$11,TEXT(DATE($A$1-1,12,$A10),"aaa"),TEXT(DATE($A$1,$C$1-1,$A10),"aaa")) 8 =TEXT(DATE($A$1,$C$1,$G10),"aaa")
24 =IF($C$11,TEXT(DATE($A$1-1,12,$A11),"aaa"),TEXT(DATE($A$1,$C$1-1,$A11),"aaa")) 9 =TEXT(DATE($A$1,$C$1,$G11),"aaa")
25 =IF($C$11,TEXT(DATE($A$1-1,12,$A12),"aaa"),TEXT(DATE($A$1,$C$1-1,$A12),"aaa")) 10 =TEXT(DATE($A$1,$C$1,$G12),"aaa")
26 =IF($C$11,TEXT(DATE($A$1-1,12,$A13),"aaa"),TEXT(DATE($A$1,$C$1-1,$A13),"aaa")) 11 =TEXT(DATE($A$1,$C$1,$G13),"aaa")
27 =IF($C$11,TEXT(DATE($A$1-1,12,$A14),"aaa"),TEXT(DATE($A$1,$C$1-1,$A14),"aaa")) 12 =TEXT(DATE($A$1,$C$1,$G14),"aaa")
28 =IF($C$11,TEXT(DATE($A$1-1,12,$A15),"aaa"),TEXT(DATE($A$1,$C$1-1,$A15),"aaa")) 13 =TEXT(DATE($A$1,$C$1,$G15),"aaa")
29 =IF($C$11,TEXT(DATE($A$1-1,12,$A16),"aaa"),TEXT(DATE($A$1,$C$1-1,$A16),"aaa")) 14 =TEXT(DATE($A$1,$C$1,$G16),"aaa")
30 =IF($C$11,TEXT(DATE($A$1-1,12,$A17),"aaa"),TEXT(DATE($A$1,$C$1-1,$A17),"aaa")) 15 =TEXT(DATE($A$1,$C$1,$G17),"aaa")
31 =IF($C$11,TEXT(DATE($A$1-1,12,$A18),"aaa"),TEXT(DATE($A$1,$C$1-1,$A18),"aaa")) 16 =TEXT(DATE($A$1,$C$1,$G18),"aaa")
1 =TEXT(DATE($A$1,$C$1,$A19),"aaa") 17 =TEXT(DATE($A$1,$C$1,$G19),"aaa")
2 =TEXT(DATE($A$1,$C$1,$A20),"aaa") 18 =TEXT(DATE($A$1,$C$1,$G20),"aaa")
3 =TEXT(DATE($A$1,$C$1,$A21),"aaa") 19 =TEXT(DATE($A$1,$C$1,$G21),"aaa")
4 =TEXT(DATE($A$1,$C$1,$A22),"aaa") 20 =TEXT(DATE($A$1,$C$1,$G22),"aaa")
5 =TEXT(DATE($A$1,$C$1,$A23),"aaa")


/\/\/\/\/\/\/\/\/\/\/\

名前定義「旗日」←別のシートにコピペ

1月1日 月 元日
1月8日 月 成人の日
2月11日 日 建国記念の日
2月12日 月 休日
2月23日 金 天皇誕生日
3月20日 水 春分の日
4月29日 月 昭和の日
5月3日 金 憲法記念日
5月4日 土 みどりの日
5月5日 日 こどもの日
5月6日 月 休日
7月15日 月 海の日
8月11日 日 山の日
8月12日 月 休日
9月16日 月 敬老の日
9月22日 日 秋分の日
9月23日 月 休日
10月14日 月 スポーツの日
11月3日 日 文化の日
11月4日 月 休日
11月23日 土 勤労感謝の日
/\/\/\/\/\/\/\/\/\/\/\
条件書式の設定
セルA8:B19に
=VLOOKUP(DATE($A$1,$C$1-1,A8),旗日,1,FALSE)=DATE($A$1,$C$1-1,A8)
※定義された「旗日」データとカレントセルが合致したら、というトリガーで 網掛け

セルA20:B23に
=VLOOKUP(DATE($A$1,$C$1,A19),旗日,1,FALSE)=DATE($A$1,$C$1,A19)
※上記と一緒だが、A20以前は前月なので月から1を引いているが、ここからは今月なので-1をしない。

セルA8:B23に
=B8="日"
※曜日表記が「日」だったら、網掛けをしろ

右半分の説明は省略。自分で考えよう。

拍手[0回]

solid explorer でFTP接続。こんなお作法かよ!

solid explorer でFTP接続。こんなお作法かよ!

スマホ(android)でファイル管理をするにはES File Explorer とか X-plore とかありますが、
今私はsolid explorer を使ってます。
で、今日は、FTP接続をする方法が分からず1時間ぐらい悩んだ末、解決しましたので、
ここにお知らせしておきますね。
まず、設定の入り口はこんな所! (こんなのありかよ!)
どこでも良いですスマホの中のフォルダを開きます。
例としてココでは音楽フォルダを開きました。
右下に黄色い+のボタンアイコンがあります。これをポチッとな。

00.jpg

すると「新しいクラウド接続」というメニューが出て来るのでタップ。
01.jpg

接続タイプ? ジャンル? を聞かれます。今私はロリポップに繋げたいので、FTPを選びます。
02.jpg

あポチッとな。
06.jpg
接続タイプを聞かれます。ここはFTPですね。
07.jpg

サーバーの詳細を聞かれます。
ロリポップならこんな感じです→https://lolipop.jp/manual/hp/ftp-set/
08.jpg

認証を聞かれます。ユーザー名とパスワードで進入します。
05.jpg

04.jpg

高度な設定? なにそれ?
09.jpg

文字セットを決めたり、出来るらしいけど、私は高度な設定はしてません。
03.jpg

拍手[0回]

securebootencodeuefi.exe

パソコンで作業中に、勝手に起動したCUIなこのプログラムuefi2.png

securebootencodeuefi.exeとは一体何だ?


検索してみると、今年2023年1月の記事で
https://answers.microsoft.com/ja-jp/windows/forum/all/windows11%E3%81%A7cwindowssystem32securebootencode/4f48936d-961b-44c6-9315-2d977db0362f
が見つかる。

原因不明だそうだ。
何か最近ネットが遅い気がするし、裏で何か動いてるんじゃないかと不安。

拍手[0回]

Alexaくんは人間っぽい。

どこかに書いたと思ったのだが、見つからなかったので重複を恐れず書いておこう。

Alexaくん(声が女性だから「Alexaさん」?)は意外と良い。
最近okgoogle君は呼びかけてから反応するまでに時間が掛かるので、敬遠している。
とはいえ、賢さはokgoogle君の方が格段に上なのでAlexa君とケースによって使い分けている。

Echo Show 8 (エコーショー8) 第2世代 - HDスマートディスプレイ with Alexa、13メガピクセルカメラ付き、チャコール

新品価格
¥14,980から
(2022/12/7 04:53時点)


最近気が付いたのは、ひそひそ声、ささやき声でAlexaに話しかけると、ひそひそ声で応答してくれること。
これはホントに人間っぽい。

お慰みに私の老母にプレゼントしてやろうかと、先日のセールでもう一台ECHOSHOW5を買ったが、
義兄宅にはWi-Fiが十分に飛んでなく母の住む離れにまで届かないこと、認知症が始まっているので、Alexaの課金する問い掛けにOKを出しかねず危ないから、と進呈を辞退された。

確かに、Alexa、~の曲掛けて! と命じて、該当の曲がないと、アマゾンミュージック アンリミテッド月額480円が辞退するまで毎月課金されるが、登録しますか? と問いかけてくるのだ。
この時間違って「はい」とでも答えたなら、きっと安易にアマゾンミュージック アンリミテッドに登録されて毎月480円の課金が始まるのだろう、恐ろしや恐ろしや。

まぁでも、「何か昔話をして!」とか「おやすみ」とか「漢字で~はどう書くの?」とか「ラジヲ付けて」とか「平成18年は西暦何年?」とか、ちょっとしたことを調べるのに、大変役に立っています。

AIが学習をしているのかもしれない。

息子が滅茶苦茶な質問を繰り返していた時、ちょっと私の反応にしっくりこないようになった。
PC版のAlexaをインストールしてみると、音声検索をした履歴が見れる。それも居間のECHOSHOW5にした奴や、食卓のFire-TVにした奴など我が家のAlexa全般の履歴である。
息子がどんな質問をしたのか文字にして分かるというのはちょっと驚きだ。
これがどこぞのサーバーに流れている。
もっと人間ぽくなって、人生相談などをしたら、Amazon社の担当部署に、我が家の内情が筒抜けになってしまう。
さすがに私もカメラ-は殺してある。こんなので居間の風景が常に見られてたら嫌だからね。

米国では「~だよねAlexa?」という問い掛けに応ずる仕様を開発したらしいが、
お蔵入りになったそうだ。これはつまり、Alexaという直前の文脈から、質問を理解する仕組みであって、Alexa と呼びかけて起動するのではなく、常時会話を聞いている、ということに他ならないからだ。

便利とプライバシーは永遠に両立できないのかもしれない。

私は赤の他人の家政婦に留守宅の掃除を頼む人の気が知れない。けども割り切れば楽で良いのかも知れない。
でも自分のプライバシーはダダ漏れの覚悟はせねばなるまい?

拍手[0回]