basyura's blog

あしたになったらほんきだす。

AirPods Pro

Apple AirPods Pro

Apple AirPods Pro

  • 発売日: 2019/10/30
  • メディア: エレクトロニクス

apple のサイトで注文して一ヶ月、ようやく届いた。

期待したよりノイズキャンセル感が無いなと思ったけど、外したらこんなにでかい音を聞いてるのかぐらいにびっくりした。 ちょっと音楽を流せば音量を大きくしなくても周りの話し声は気にならない程度になるけど電車内のアナウンスはよく聞こえる。ソフトウェア制御なのかな。音楽流さなくてもノイズが減るのでオフにならないならそのまま騒音削減対策で使えそう。

キングジム デジタル耳せん   MM1000 ホワイト

キングジム デジタル耳せん MM1000 ホワイト

  • 発売日: 2014/03/07
  • メディア: オフィス用品

前に試したことあるけど、AirPods Pro の方が違和感無さそう。ノイズキャンセルだけ特化したの欲しい。

日本語入力状態表示ができない

状況

f:id:basyura:20200212230515p:plain

日本語入力(変換)できるし、IME の ON/OFF もできる。 IME の状態が常に x となっているが、 変換 で ON、無変換 で OFF にしているので、そもそも目で IME の状態を確認することが無い。 単語登録はショートカットキーを当てていたので、単語登録画面を起動して登録することができる。 実害と言えるのは google ime の設定を変えるためのプロパティウインドウを起動できないことぐらい(それも変えることはほぼ無い)。 あとは気持ちが悪いぐらい。

調査

ググってみると ctfmon.exe が引っかかる。これが起動しないことが原因かと調べてみる。 確かに起動していないし exe を叩いても起動したのか分からないぐらいに一瞬で終了する。

キーボードのトラブルシューティングで "テキストサービスフレームワーク(MsCtfMonitor)" が起動していないメッセージが出ていたので タスクスケジューラを起動して「タスクスケジューラライブラリ > Microsoft > Windows > TextServicesFramework」を確認してみるけど起動している。 そのタイミングで心当たりがあったので以前止めたサービスを確認した。

解決

f:id:basyura:20200212230600p:plain

結果、Touch Keyboard and Hadwriting Panel Service を無効にしていたことが原因だった。起動したら解決。

仕事的にタブレットキーボードが表示されてめんどくさいことがあったので意図的にオフにしていた。 裏目にでたっぽい。

iPhone SE のディスプレイ交換

iPhone SE2 (9?) の発売の噂が流れているけどサイズが気に入っているのでディスプレイ交換してきた。つい最近バッテリー交換済み。バッテリーの膨張に関係なくディスプレイが浮いていたものの (落としたりしているから) このまま使って壊れたら買い換えようと思っていたけど、やっぱりちょっとでも長生きして欲しと思い直した。ディスプレイの交換が終わるとめちゃくちゃ綺麗で新品同様の雰囲気があって大満足。バッテリーも交換済みなので激しい衝撃を加えてしまうか基盤的なところがやられなければあと数年使えそう。既に 4 年近く使ってるのに。その前にアップデート対象外が来そう。できるだけ長く使いたい。

iPad Air

iPad Pro 10.5inch を持っているのだけど、もう一つ欲しくて Air を購入。Pro を長らく使っていたので気にしていなかったのだけど、今回の購入も Pro にすれば良かったと後悔した点があった。スピーカーの数が Pro は 4 なのに Air (Pro 以外) は 2 つ。違いが結構あって、Pro は音が広がる感じで聞こえるのだけど、Air は片側から聞こえる感じで (片側にしかないからだけど) チープに聞こえる。明らかに違う。AirPods をつければいいのだけどずっと付けてるわけにもいかない。Air は家族に譲って買い直してもいいのだけど迷う今日この頃。または次が出るまで我慢して下取りに使うか。cpu とかグラフィックがどうとかは気にしていなかったのだけどスピーカーの数は考えたこともなかった。残念。

webpack

速習webpack 速習シリーズ

速習webpack 速習シリーズ

  • 作者:山田祥寛
  • 出版社/メーカー: WINGSプロジェクト
  • 発売日: 2018/04/27
  • メディア: Kindle版

npx webpack のように npx を使うとプロジェクトローカルにインストールしたコマンドを実行できることを覚えた。

webpack.config.js に optimaization の設定を追加すると共通の js を抽出して出力できることを覚えた。

  optimization: {
    splitChunks: {
      name: 'common.js',
      chunks: 'initial',
    }
  },

webpack —mode=production で生成した共通 js のサイズが 500KB を超えている。jquery プラグインとそれに付随する画像に起因してる気がするので追跡調査が必要。bundle しないで単純にとあるファイルをとある箇所に移動したいだけの場合にどうしたらいいのか分からないので Makefile を作ってひとまずしのぐ。

2020

2020 年が始まった。出だしから大きめのシステム稼働があったのでずっと出勤 (結果的に要らなかったと思う)。仕事のストレスと上司ストレスが MAX に達していたようで表面的には "何でも無い" を装って軽く流していたつもりだったのだけど休みに入ったら安心したのかアレよアレよと体調を崩して帯状疱疹発動。年始から連勤してたけどその後は連休になった。とは言ってもタイミングが良いのか悪いのか土日祝日と振替休暇(これを強制される意味がわからん。部のルールなんか知らんし。そっちの都合だろうが。強制力は無いと思うんだが無言の圧力がある。人事に相談したらいいのか?会話するのも嫌だからハイハイで振替にした)で 5 連休 したあと、2日働いてその後に土日を含めて 5 連休。通院したのが早かったおかげか大きな痛みはなくたまにチクチクする程度。病名でググると結構ヤバそうな画像が並ぶのだけど右側の前と後ろにアザが残っているものの見た目ほどの痛さは感じない。椅子に座っていると背中が内側から痛い感じがあって辛いのだけど運動不足によるものなのか姿勢からくるものなのか判断がつかない(前にも何回かあったから)。神経痛が残ることがあると言われているので様子見。2019 年も通してつまんないどうでもいい感じの活動がメインだったので振り返りたくもなく、うすうす上司ともあわねーなと思っていたけどやっぱあわないわが確定したので来年度はどっかに行きたい。

休養中はある程度元気なのもあって Youtube を見続けるのも辛いので webpack と typescript に手を出してみた。収集したログを時系列で見れるようにするツールを go の echo で作っていたので webpack で js、 css、画像がパッケージングされるように修正した。

ちょっと前 (10年以上前) は 1 つの html (jsp) に必要な css と js をゴリ書きしてたし、js は名前空間無視でグローバルに関数書いてたし楽なもんだった。webpack を導入してみようと重い腰を上げてみたのはいいのだけど、まずどうしたらいいのかが分からなかった。とりあえず typescript に置き換えるのはすぐだった。拡張子を js から ts に変えて any つければいい。vim-lsp で typescript のコードを補完したりリネームしたりジャンプしたりホントに便利なったなと浸れたのは一瞬でそこからが長かった。jquery-ui で datepicker を動かすまでもよくわかなかったし、loader の仕組みで css と png を取り込むことが分かるまでも長かった。ほんとにここまでやらないといけないのかと思うぐらいに大変だ。package.json はいいとして、webpack.config.js はググれないと無理。ググっても正しいのかよく分からないけど。そう正解がよくわからない。動けばいいならいいんだけど。

なんだかんだで大変だったものの休暇を理由にまとまった自由時間が取れたことで勉強ができたので良かった。そいえば僕は internet がしたくて会社に入って、internet というか web アプリの開発ができてたことで満足できてたんだなというのを思い出した。気がついたら web っていうか dotnet というかみたいな開発が始まって、開発できてるうちは良かったんだけどどこのだれが作ったんだが作り逃げしたんだか分からないようなロジックを評価したりチューニングしたりする日々に虚しさしか感じない日々を過ごしている。リフレッシュできたので今年度残りのもうちょっと働きますけど来年度はどうしようかな。

次は

  • react + typescript を試したい。
  • だらだら思ったことをそのまま blog に落としていきたい (けど、はてなである必要ある?惰性だよねってのが最近の疑問)

Inkdrop - ログインできなくなった

ログインの有効期間が失効していて(?)ログインできなくなっていた。 go で書いた簡単 proxy ツールを書いて経由するようにしたらログインできた。 そのままだとノートの同期ができなかったので、元の proxy 設定に変えた。

proxy の id がメールアドレスで @ を含んでいるのが関係するのか?

ログインに使った通すだけのプロキシ。

package main

import (
    "log"
    "net/http"

    "github.com/elazarl/goproxy"
)

func main() {
    proxy := goproxy.NewProxyHttpServer()
    proxy.Verbose = true
    proxy.OnRequest().DoFunc(
        func(r *http.Request, ctx *goproxy.ProxyCtx) (*http.Request, *http.Response) {
            return r, nil
        })
    log.Fatal(http.ListenAndServe(":8080", proxy))
}