ハナモゲラボ / 試行錯誤の実験人生

日々、PCや各種デバイス、楽器等に翻弄されながら電脳の森をさまよう男の日常と様々な実験をさらりと記しております。

増設 ― Relay G50トランスミッターとEneloop Proの相性問題解決

January 22 2019

自分以外インフルエンザという極限の状態は続いております。
なぜ自分だけ発症しないのか、もしかして特異点(From 仮面ライダー電王)なのかと思いつつありますが、家人からは「ベルリンの壁」と呼ばれつつあります。
・・・・・・いつか崩壊するやないかというのは置いといて、と。

新しい車の為に車庫証明取ったりとかバッタバタしながらも放ったらかしだった事を。

隙間 ― まさかの電池サイズ違いで起こったトランスミッターのトラブル

こいつね。Eneloop Proが無印より太いために電気金具のバネが効かない問題。
今まではアルミホイル丸めて突っ込んでたけども、やっぱりそれでは不安定。

本当は電池ボックス側を削って電池がスムースにピストン出来るようになりゃいいんだけども。
それかローションでも塗って・・・おっとそれはちょっと夜の話題だね。

とりあえず、ガッチリ閉まった状態で隙間をなくせば電源が切れる事はなかろう。

と、こんな感じにハンダを盛り付けまして。
ちょっと無理したらようやく閉まる、ぐらいの高さにしてあげました。
実際にフタを閉じて電源入れて、振ったりバシバシ叩いても見事に電源は切れません。

作業台を広げてたのでそのまま最近、姫路の音楽仲間内だけに開業している「時計電池交換」業務を。

スクリュータイプのフタなので開けるのは簡単でした。
このタイプの開け方はだいたいわかった。
開いてみるまで何の電池かわからない、というこのスリリングな瞬間。

SR621SW・・・・手持ちにない電池でした。

Amazonで発注。どうせこの先もいずれは必要なので5個買いましたよ。

孤立 ― 野戦病院さながらの週末をくぐり抜ける

January 20 2019

インフルエンザで学級閉鎖の長女(発症済み)、引き続き長男も発症(もちろん登園出来ない)、そして嫁さんも発症という状況の中で、たった一人僕はここに立っているよ。

「バカは風邪を引かない」という言葉は「鈍感過ぎる故に風邪を引いても気付かない」というのが元々の意味らしいけど、そんなものを超越した鉄人加減が我ながら少し恨めしい時もある。
いや、これは感謝すべきなのか。
ウィークポイントは春先に変な臭いが鼻の中に充満する、というこれまた原因不明の症状のみというこの身体である。

ローマの詩人ユヴェナリウスは「健全な肉体に健全な精神が宿る」と言ったとかなんとか。
健康と健全は違うぞ、という言葉がどこかから聞こえてきそうではあるが、どっちにしても健全な精神とは程遠い所にあるというのがマイセルフイメージ。
50目前のおっさんになっても、街で胸の大きい女の子を見かけると「ヒュウ」と相手に聞こえない程度の口笛を吹いてしまうぐらいにはヨゴレ&ビビリーである。
思想の自由は日本国憲法で保障はされてはいるが、妄想の自由はあくまでマナー論でしかあるまい。
チョメチョメというワードに懐かしさと共に亡き山城新伍が浮かぶぐらいはまだ連想スピードは保っている。
あれはなんという番組だったっけ、という肝心部分は思い出せないままではあるが。

そんな事をブツブツと考えつつも、我が家の状態はもはや野戦病院。
「病は気から」。そんなワードも浮かぶのでとりあえずはわやくちゃになった部屋の中を片づけ開始。
しんどいプラスそんなとこに寝てたら余計に疲れるだけですわね。

そして、一番最初に発症した長女はすっかり平熱に戻ったのでたいそうヒマらしい。
かといって遊びに行く事はまだ出来ぬ。
矛先はもちろん「たった一人の健康体」であるこっちに向かうのだ。

「ヒマ。なんかして遊ぼう」「いやいや、その。お父さんもせなあかん事がね?」「あかん」
ですよねー。

もう今日は好きなだけYoutube見ていいぜ!っと携帯端末を犬に「ゴー、ポチ!」みたいに投げる父。
初日はこれでなんとか乗り切った。

二日目は平熱に戻った長男が徐々に復活してくる。
「ヒマ。なんかして遊ぼう」「いやいや、その。お父さんもせなあかん事がね?」「なにが?」
もはや会話が成り立たない。

ドラえもんの「日本旅行ゲーム」でバトル。これがなかなか面白いのである。

そんな中で車の乗り換え関連も同時に進めねばならない。
「日曜の14時に伺うという事で。もしその車が売れてしまったら連絡下さいね」
↑この約束をしてもし当日までに電話がなければ、日曜日に普通に出向くわね。

出向いたらその車は昨日売れてしまいまして、と。
その電話で約束した担当者は事務所の中に居てたのに、商談中という事で出てきもしやがらねえ。
「ほ、ほかの支店で全く同じグレードとはいきませんが同じ車があるそうで・・こちらから電話しておきますっ!」と、応対に出てきた兄ちゃんは言うたので、向かってみました。

着いたらその話が通ってなくて「はあ?」みたいな対応をされる。
昔ならきっとここでファイナルアタックライド状態になってましたがトシをとったんですかね。
「ああ、所詮若い奴らがチャラチャラと車屋ごっこやっとんねんな」とフウと一旦ため息をついてから、静かに元の支店に電話入れる。

「おーい。君の言う通りに来てみたけど『知らん』言うてはるで?さてオレはどないしたらええかいね。君らの不手際だけでこんな遠い所まで来てるんやけども」
「ち、ちょっとお待ちください」と保留音。

しばらくしたらさっきとは全く表情が違った満面の笑顔のスタッフが2名も走ってきまして。
なんかそれ見た瞬間、アホらしっと思ってしもたので「もうよろしいわ」と。
きっとここは後々、なんぞええ加減な事がありそやし。
せめてミスした本人からフォローの電話でもあればな、と思ってたけどそれもありませんでしたww

子供らは「ずっと家にいて退屈だったから良い気分転換のドライブになった」と喜んでたのでまあいいかね。

くら寿司で天丼を。

「縁」というのはどっから出来るかわからない。それの元がたとえトラブルであっても。

RainmeterのEnigmaスキンの天気表示を復活させる(2019年度版)

January 18 2019

正月明けて、またもRainmeterのEngimaスキンの天気表示がされなくなってまして。
Engimaも最終更新が2012年って事でもうこれらに対応する様子もないんですが、それでも使い続けたいという人達は世界にいるようで。

今回、またもYahoo!Weatherのフィード配信方法が変わったみたいです。
なのでYahoo!Weatherをやめて、Weather Channelのフィードを使う様にしましょうぞ、という方法が海外フォーラムで紹介されておりました。

さっそく実践を。

1.まずはOption.iniを書き換える。

EngimaにはWeather Code Finderという物がありまして、これで表示させたい地方のコードをセットするのですが、これ自体がすでに機能しなくなっております。

なので、手動でOption.iniを書き換える事にします。

ファイルの場所は\mydocu\Rainmeter\Skins\Enigma\@Resources\User\Options.inc(※Windows10環境です)

これに各種セットした内容が保存されているんですがこれをWeather Channel用に置き換えます。
日本の場合、こちらにすべてのWeather Codeが書かれています。
https://weather.codes/japan/

自分の環境の場合、茨木市なのでJAXX0177です。
Options.incの64行目に以下の記述があったので書き換えました。

;-----------------------
; WORLD

WeatherCode=JAXX0177
WeatherCodeName=Ibaraki-shi
Unit=m

その下にもWorld1WeatherCodeからWorld3WeatherCodeまでありますが、我が家では一つしか使わないので全て書き換えました。
緯度や経度を表すLatやLonという変数もありますが今回は無視で。

そうそう。摂氏表示にするならその下にあるUnitの値をmにしておいて下さい。
華氏ならiです。

2.YahooWeather.incを置き換える

次はYahooWeather.incの中身をごっそりと置き換えます。
ファイルの場所は\mydocu\Rainmeter\Skins\Enigma\@Resources\Measures(※Windows10環境です)

[MeasureYahooWeather]
Measure=Plugin
Plugin=WebParser
Url=https://wxdata.weather.com/wxdata/weather/local/#CurrentCode#?cc=*&unit=#unit#&dayf=6
RegExp="(?siU)<ut>(.*)</ut>.*<ud>(.*)</ud>.*<us>(.*)</us>.*<up>(.*)</up>.*<ur>(.*)</ur>.*<lat>(.*)</lat>.*<lon>(.*)</lon>.*<zone>(.*)</zone>.*<lsup>(.*)</lsup>.*<obst>(.*)</obst>.*<tmp>(.*)</tmp>.*<flik>(.*)</flik>.*<t>(.*)</t>.*<icon>(.*)</icon>.*<r>(.*)</r>.*<d>(.*)</d>.*<s>(.*)</s>.*<gust>(.*)</gust>.*<d>(.*)</d>.*<t>(.*)</t>.*<hmid>(.*)</hmid>.*<vis.(.*)</vis>.*<i>(.*)</i>.*<t>(.*)</t>.*<dewp>(.*)</dewp>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<dayf>.*<day d="0" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<day d="1" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<day d="2" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<day d="3" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<day d="4" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*<day d="5" t="(.*)" dt="(.*)">.*<hi>(.*)</hi>.*<low>(.*)</low>.*<sunr>(.*)</sunr>.*<suns>(.*)</suns>.*<icon>(.*)</icon>.*<t>(.*)</t>.*"
ErrorString="woops"
UpdateRate=1800

;-----------------------
; LOCATION

[MeasureWeatherCity]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=10
RegExpSubstitute=1
Substitute="^(.*), (.*), (.*)$":"\1"

[MeasureWeatherRegion]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=10
RegExpSubstitute=1
Substitute="^(.*), (.*), (.*)$":"\2"

[MeasureWeatherCountry]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=10
RegExpSubstitute=1
Substitute="^(.*), (.*), (.*)$":"\3"

;-----------------------
; UNITS

[MeasureWeatherUnitTemp]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=1

[MeasureWeatherUnitDistance]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=2

[MeasureWeatherUnitPressure]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=4

[MeasureWeatherUnitSpeed]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=3

;-----------------------
; WIND

[MeasureWeatherWindChill]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=12

[MeasureWeatherWindDirection]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=19

[MeasureWeatherWindDirectionCardinal]
Measure=Calc
Formula=FLOOR(((MeasureWeatherWindDirection/11.25)+1.5) < 33 ? ((MeasureWeatherWindDirection/11.25)+1.5) : ((MeasureWeatherWindDirection/11.25)+1.5)-32)
Substitute="10":"EbS","11":"ESE","12":"SEbE","13":"SE","14":"SEbS","15":"SSE","16":"SbE","17":"S","18":"SbW","19":"SSW","20":"SWbS","21":"SW","22":"SWbW","23":"WSW","24":"WbSW","25":"W","26":"WbN","27":"WNW","28":"NWbW","29":"NW","30":"NWbN","31":"NNW","32":"NbW","1":"N","2":"NbE","3":"NNE","4":"NEbN","5":"NE","6":"NEbE","7":"ENE","8":"EbN","9":"E"

[MeasureWeatherWindSpeed]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=17

;-----------------------
; ATMOSPHERE

[MeasureWeatherAtmoHumidity]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=21

[MeasureWeatherAtmoVisibility]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=22

[MeasureWeatherAtmoPressure]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=15

[MeasureWeatherAtmoRising]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=16

;--------------------------------
; SUN

[MeasureWeatherSunrise]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=31

[MeasureWeatherSunset]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=32

;--------------------------------
; REGION

[MeasureWeatherTimeZone]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=8

[MeasureWeatherLatitude]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=6

[MeasureWeatherLongitude]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=7


;--------------------------------
; CURRENT

[MeasureWeatherDesc]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=13

[MeasureWeatherIcon]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=14

[MeasureWeatherTemp]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=11

;-------------------------
; DAY 2

[MeasureWeatherDay2Date]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=36
;Substitute="Sun":"Sunday","Mon":"Monday","Tue":"Tuesday","Wed":"Wednesday","Thu":"Thursday","Fri":"Friday","Sat":"Saturday"

[MeasureWeatherDay2Low]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=39

[MeasureWeatherDay2High]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=38

[MeasureWeatherDay2Average]
Measure=Calc
Formula=ROUND((MeasureWeatherDay2Low+MeasureWeatherDay2High)/2)

[MeasureWeatherDay2Desc]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=43

[MeasureWeatherDay2Icon]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=42

;-------------------------
; DAY 3

[MeasureWeatherDay3Date]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=44
;Substitute="Sun":"Sunday","Mon":"Monday","Tue":"Tuesday","Wed":"Wednesday","Thu":"Thursday","Fri":"Friday","Sat":"Saturday"

[MeasureWeatherDay3Low]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=47

[MeasureWeatherDay3High]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=46

[MeasureWeatherDay3Average]
Measure=Calc
Formula=ROUND((MeasureWeatherDay3Low+MeasureWeatherDay3High)/2)

[MeasureWeatherDay3Desc]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=51

[MeasureWeatherDay3Icon]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=50

;-----------------------
; LOGO
; Weather.com requires that any application which uses their API include the logo and a link to their website. This section will automatically insert those elements into any skin which uses this measure module. Please do not remove these elements if you are redistributing this file with your own skin.

[YahooWeatherLogo]
Meter=IMAGE
MeterStyle=Style#Variant#Icon
Group=EnigmaMouseover
ImageName=#@#Images\MoxaWeather\Logo.png
H=25
W=25
Hidden=1
LeftMouseUpAction=["http://weather.com/"][!Redraw]
ToolTipText=Powered by Weather.com

これを上書き保存します。

3.タイムゾーンの形式を置き換える

次はタイムゾーンの形式を置き換えます。
ファイルの場所は\mydocu\Rainmeter\Skins\Enigma\Taskbar\World\World.inc’(※Windows10環境です)
そして、\mydocu\Rainmeter\Skins\Enigma\Sidebar\World\World.inc’(※Windows10環境です)

[MeasureTimeZone]
Measure=Plugin
Plugin=WebParser
Url=[MeasureYahooWeather]
StringIndex=8

; [MeasureTimeZone]
; Measure=Plugin
; Plugin=WebParser
; UpdateRate=3600
; Url=http://ws.geonames.org/timezone?lat=#CurrentCodeLat#&lng=#CurrentCodeLon#
; RegExp=<gmtOffset>(.*)</gmtOffset>
; StringIndex=1

コメントアウトしてる部分を上の様に置き換えて下さい。
自分はサイドバーに一つだけ天気表示をしているので、これだけで表示が復活しましたが、世界時計と同時にWorld1-3までを表示している場合、さらなる改造が必要なようです。

引き続いての作業が海外のこのフォーラムにおいて行われていますのでぜひ参考に。
今回はこのフォーラムからそのまま全てのコードを引用しております。

https://forum.rainmeter.net/viewtopic.php?f=5&t=30807

« Jan 2019 February 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28