銀の弾丸、はじめました

Unityとかガジェットとか

Calendars 5で日本の祝日が表示されない問題

iOSアプリ Calendars 5Google Calendarと連携している 日本の祝日 が表示されない.

PCブラウザでGoogle Calendarを開くと表示されているのでアプリの問題.

アプリの設定でアカウントを選択しログアウトする.
各種データは消えるが,Google Calendar上に残っているので問題ない.

再度Calendars 5の初期画面でGoogleアカウントで使用する方を選択しログイン.
自動でカレンダーデータ(日本の祝日も含む)が同期される.

Calendars 5 by Readdle

Calendars 5 by Readdle

  • Readdle Inc.
  • 仕事効率化
  • ¥840

macOS High SierraでHHKB Professional JPを使うのに苦労した話

PFU公式がドライバを更新しない所為で,macOS High SierraでHHKB Professional JP(以下HHKB JISと表記)を使うのにメチャクチャ苦労した話です

不具合状況

  • macOS High Sierra で HHKB JIS の Kanaキーが認識しない

やりたい事

  1. 無変換キー -> BSキー
  2. 変換キー -> 左Enterキー
  3. SandS
  4. かな(Kana)キー -> 英数/かな(トグル)キー(正式名:入力メニューの次のソースを選択)

これらを解決する

Karabiner-elementが使えない

日々更新されmacOS Sierra以降でも使えるようになってきているmacOS定番のキーリマップソフトだが,残念ながら限界がある. 1.と2.の問題は解決したが,3は無理だった(できた人もいる様だがJSONの設定を丸々コピペしてもダメだった.詳細は不明) macOS Sierra で キーバインドをカスタマイズ - Qiita

そして,4に至っては,そもそも「Kanaキー」のイベントが発火しない! Kanaキーを押下しても反応しないのである.

Hammerspoonが使えない

macOS Sierraの時にKarabinerが使えない事で話題になったキーリマップソフト. Luaでコードを書く.キーコンビネーションにも対応できる. SandSを試したが,動作が不安定でダメだった. Hammerspoon で未熟 SandS | 夜コーヒー

HHKB JIS本体のピン設定はちゃんとMAC MODEになっている

PFU公式が使えない

ドライバの原因を疑い何度も入れ直したが「Kanaキー」が認識しない.

macOS High Sierraがリリースされたのが 2017/09/26
しかし,未だにPFU社はmacOS High Sierraに対応していない2018/03/30現在

※ 2018/01/25 に更新した模様 詳細は下に追記

(尚,ユーザーミートアップ をやる余裕はある模様)

(みんなどうしてるんだろ?)

Happy Hacking Keyboard | Macintosh用ドライバダウンロード | PFU

神アプリ,SandS

なんと,ここでまさかのそのまんまの SandS と言うアプリを発見!
神アプリだ!3.の問題がスマートに解決
appを実行して常駐させるだけでSandSが常時使える
(しかし,時々不安定,macOSのセキュリティの関係でパスワード入力時とかに限界があるかmacOSのバグ)

GitHub - ToQoz/SandS: SandS on macOS Sierra

S/Wでの解決は不可能な領域

PFUがドライバを更新しないのでH/W,M/W(F/W含む)で決着を付ける必要がある.
取れる手段は大きくパッと思いつくだけで2つある.

  • HHKBのF/W(中身)を書き換える
  • HHKBとPCの間にパイプを噛ます

前者の方法は書き換え可能基板を某所より購入し,F/Wを焼き込む.
まさにガワだけがHHKBで中身は別モノのキーボードになる.
難易度高いしリスクが大きいしので中々手が出せない.

後者の方法だとHHKBとPCの間のパイプと言うが,そもそもパイプがHHKBのKanaキーを認識しなければ話にならない.

改めて書くが,現状でやりたい事は「Kanaキー」の認識である.
そして,そのKanaキーを,英数/かな(トグル)キーにリマップしたい.

Blutooth連携

HHKBの入力 -> Bluetooth変換 -> macOSが入力値を取得

最近多いこのパターン(商品名は敢えて伏せる)
Bluetooth変換器は常に電源を食うし,スマートではない.
が,試す価値はある.

しかし…

そもそもBlutooth変換器がHHKB JISのKanaキーを当然のように認識しなかった.
HHKBガワの問題なのか?HHKBはKanaキー信号を出していないのか?

かえうち

ここで妙案を思いつく.
HHKB側がKanaキーを出力可能な環境で かえうち を設定し,
かえうちに変換したキーデータをmacOS High Sierraに流す方法だ.

HHKB JIS「Kanaキー押したよ」
↓
かえうち「Kanaキー信号確認した!設定されたKanaキーに紐付くキーを送るね」
↓
macOS High Sierra「Kanaキーが来た!」

つまり…簡単に言うと,

かえうち に Kanaキー を押下した時に Kanaキー を出力させる

( ゚д゚)…

(゚д゚)

かえうち作者も思わず椅子から転げ落ちてしまうレベルに前例がなく非常に頭の悪い使い方だろうが物は試しだ.

それじゃ張り切っていくゼ!

macOS High SierraでHHKB JISのKanaキーを簡単に認識させる方法

必要なモノ

まず,macOS Sierra以下のOSが必要だ.
コイツはHHKB JISのKanaキーを認識するからだ.
macOS High Sierra 1台しかない場合はダウングレードするか,中古のMacを買うしか方法はない.
(Win機でも可能だと思うが試していない)

手順

macOS Sierra以下のmacOSでかえうちを噛まして
HHKB JISのKanaキーを押下した際にKanaキーを出力するよう,かえうちを設定する.

おしまい
(詳しくは,かえうちのマニュアルなどを見て欲しい,
膨大な設定が可能で最強のキーリマッパーだと認識することだろう.無論,何度でも書換(設定)可能だ.)

動作確認

手順通りに設定したかえうちは「Kanaキーを押された時にKanaキーを出力するデバイス」になっている.
こんなクソデバイスがこの世に存在しても良いのだろうか?
「This is a pen.」未満のクソ概念だ.
なにしろコイツは「Pen is a pen.」である.
(かえうち作者様には本当に申し訳ない気持ちである)

HHKB JIS <- かえうち <- macOS High Sierra

と繋ぎ…そして…そっと…確実に…Kanaキーを押す………

キー入力モードが「かな」になった!!!

とうとう,ここでKanaキーが認識したのである.

本当に凄いぞ,かえうち!
キーボード好き,タイパー,自作キーボーダー,キー入力に少しでもこだわりがある人は必ず買った方が良い!

客先で借りてるPCだからカスタマイズができないような環境でも別環境で設定されたかえうちさえあれば
どこでも同じ環境で打鍵できるのは本当にストレスフリーで素晴らしい.

ありがとう,かえうち.

kaeuchi.jp

Kanaキー -> 英数/かな(トグル)キー

「Kanaキーのリマップ方法がわからん」
(;^ω^)…ここまできて,Karabiner-elementがやはり上手く設定できない…

ここである事に気付く.
Kanaキー押下したら英数/かな(トグル)キー機能が働けば良いのだ.

再度,かえうちでKanaキーを F13キー に割り当てる(F13以降でも使ってないキーなら何でも良い)

macOS High Sierra
環境設定 - キーボード - ショートカットから「入力ソース」を選び,
「入力メニューの次のソースを選択」の項目でF13(Kanaキー)を割り当てる.

f:id:japanetfutan:20180330093304p:plain

これで,ようやく,Kanaキー(F13) -> 英数/かな(トグル)キーのリマップが完成.

さいごに

PFUさんは馬の鞍(一生使える品)をうたうならドライバをいい加減更新して欲しいです.
それとももうHHKBは馬の鞍辞めたんですかね?
ドライバ更新を半年以上放置とは如何なものなのか?
HHKBは数枚持っていますが,残念でなりません.

かえうちはいいぞ.

かえうち – すべてのキーボードが あなた専用になる


以下2018/04/11更新

なんと!
2018/01/25 10:00:50PFUは何故かmacOS High Sierraに対応したと言っています.
(対応が遅すぎるし,私の環境では相変わらずKanaキーが認識しないですが?)
Professional JPも対象のようです.

https://www.pfu.fujitsu.com/hhkeyboard/hhkb_support/faq_macos_high_sierra.html

Happy Hacking Keyboard | macOS High Sierra の対応について | PFU

Happy Hacking Keyboard | Happy Hacking Keyboard Professional JP | PFU

また,セキュリティの関係で正しく設定しないと一部のキーが使えないようです

Happy Hacking Keyboard | Happy Hacking Keyboard Professional JP | PFU

私の環境では特にアラートも上がらず,ブロック状態になっている事もありませんでした.

また,コメントでご指摘のあった通り,ドライバのページ(の文字列)が更新されていないだけ?のようです.

f:id:japanetfutan:20180411140503p:plain

Happy Hacking Keyboard | Macintosh用ドライバダウンロード | PFU

上記ページの更新日時は 2018/01/25 09:57:04 となっているので内部的には
macOS High Sierraに対応したとみて間違いないでしょう.

しかしインストーラーを見てみると「for X」「for 8 or 9」と言うディレクトリのみの配置は如何なモノか?
macOSになってXシリーズは終わったと思っていたのですがこれはXシリーズでなくバージョン10シリーズと言うことでしょうか
f:id:japanetfutan:20180411140536p:plain
8と9に対してXはわかりにくいですね

どの道,現状macOS High SierraでHHKB Pro JPをKarabiner-elementと併用するには「かえうち」しかありません

以上2018/04/11更新ここまで


iOS SafariにjQuery Mobileでtextareaに改行込みの値をセットする

普通は

$('#TEXTAREA').val('値');

で,セットできるが,改行込みになるとiOS Safari等で改行されない事がある.

\n\r\n で置換してもダメ

構成

<div id="d">
    <textarea id="ta">hogehoge</textarea>
</div>

ここの hogehogefuga(改行)fuga に変更したい.

JSでの処理
$('#d').empty();
$('#d').html('<textarea id="ta">fuga\r\nfuga</textarea>');
$('#ta').textinput();

これで改行込みでtextareaに(を)セットできる(iOS Safariでも改行されて表示される)

解説

1行目でtextareaを削除し
2行目でfuga(改行)fuga込みでtextareaを新設
3行目でjQuery Mobile用に初期化している


もっと,上手い方法があったような気がするけどググっても見つけられなかった…

過去にも同じ様な事があったのでメモしておく.

Fitbit Ionicについて

Fitbit Ionic

1週間程使ってみたので,ちょっとまとめてみました.

Pebbleユーザーは買いか?

2017/10/10現在,買った方が良いとは言い難い(これでもマシになったので今後もよくなる筈ではあると思う)
ワークアウト,フィットネス,睡眠管理などでPebbleをよく利用する方は買っても良いかも.

現行のFitbitデバイスユーザーは買いか?

買いだと思う.母艦なしでカラー液晶で色々出力されるのは便利.
でも,日本では12月発売開始なのでその時に買った方が良い.
※ 日本の発売日は未定,2018年中に発売延期となった模様

海外から買っても日本の保証は受けられない.
(日本のAmazon転売ヤーから買ってはダメ.買うならアメリカのAmazon

メーカー仕様などで公開されていない部分の詳細

Fitbit IonicとPebbleとの違いを中心に列挙

  • 心拍精度はPebble 2より高く,凸形状でないので手首への負担が少ないのが良い.
  • 通知が電話とSMSとカレンダーのみでとてもじゃないがコレだけでは使い物にならない…と思ったら 流石に対応してきた.アプリ通知(母艦に出る全ての通知)を設定で拾う事ができる. アプリ単位で選択できるので通知不要のアプリはOFFにできる(Pebbleと同じ仕様)

  • WF変更に1分以上掛かる(最初は何故か8時間以上かかったw)

  • アプリが少ない
  • WFが少ない
  • 技適通ってる

    f:id:japanetfutan:20171010173452j:plain
    技適警察も安心して眠れる

  • 画面発色綺麗(PTの画面はもう見れないかもw)

  • 太陽光直下だと見難い(ただし,真っ暗になってしまい全く見えないと言う事はなかった) これは嬉しい誤算だった.

    f:id:japanetfutan:20171010172700j:plain
    左側だけ直射日光

  • 標準ベルトは2サイズあるし中々良い.Pebbleのは…ね… サードパーティ製の対応ベルトはAmazonでも売ってる

  • 日本語表示はデフォルトで機能している.
  • バイブの強さは2種,輝度は3種(4つ目としてオート)
  • W/F更新には18分前後掛かる(母艦必須)
  • タッチレスポンスは思ったより良い.最新のAndroid Wearと同じ感じ.
  • Pebble Timeを少し大きくした程度で大きさは気にならない.薄くて良い.
  • 横長なのでアナログ時計のWFは厳しい(ダサいw)

    f:id:japanetfutan:20171010173705j:plain
    😇

  • Strava が最初から入ってる

  • プリインストールされてるサードパーティアプリは Strava くらいだが,母艦アプリ側で非表示(削除)設定できる (天気アプリがゴミなので消したいけど消せない)

  • Fitbit Ionicのバッテリ残量が25%未満の場合,Wi-Fiに繋げなくなる仕様

天気予報アプリがゴミ

母艦アプリと同期しないと更新されない
(日付が変わると「アプリと同期してください」と表示されるだけ)
何の為にWi-Fi積んでるのか…あるいは勝手に母艦と裏で同期するべきでしょ
しかも1日(その日)のみしか分からない.
これはアプリ作れって事なんだろうな

Music

Fitbit IonicとBluetoothイヤホンをペアリングして母艦不要でFitbit Ionicの音声データを聞く事ができる
が,コイツがまたクソw
Fitbit Ionicへ音声データ(音楽データ)を入れる際にまずPCが必須w
で,PCと母艦(スマフォ)を接続して音楽データを入れる(Fitbitアプリの配下に)
そして母艦とFitbit Ionicで同期して音楽データをFitbit Ionicへ転送とかマジでこんなの面倒過ぎて誰もやらねーよwww

ウォレット(Fitbit Pay)

日本の銀行にも対応するらしい
12月の日本発売と同時サービスインらしい
何処の銀行なのかは不明

Fitbitとしての従来の機能

ワークアウト管理,履歴,コーチング,呼吸法,睡眠管理などをFitbit Ionic単体で色々できるのは強い.
現状のFitbit端末利用者であればすんなり移行でき満足できると思う.
アプリを立ち上げてデータを同期,グラフ表示などの確認は母艦依存となる.

WF,通知まわりについて

  • 時計(WF)は常に表示は不可能(数秒で強制スリープ)
  • 腕の傾き動き(ジャイロ)で数秒表示(AWと同じ感じでワンテンポ遅いのが困る)
  • スリープ状態で画面タップするとWF表示
  • 通知の際もWF表示(下に通知内容表示)(たまに暗いままの時もあるような…)
  • 通知表示をタップで通知内容の詳細が表示
  • WF上から下にスワイプでMusic(又は右上H/Wボタン長押し)
  • WF下から上にスワイプで通知一覧(又は右下H/Wボタン長押し)

    f:id:japanetfutan:20171012135010j:plain
    こんな感じで表示,タップで更に詳細表示

  • WF右から左にスワイプでメニュー(アプリ一覧)

  • WF左から右にスワイプで設定(通知ON/OFFと画面のスリープ自動/手動の設定)

  • 右上H/Wボタン押下でステータス表示

    • 歩数
    • 1時間内の歩数
    • 心拍数
    • 歩いた距離
    • カロリー
    • 階数
    • アクティブ時間


  • 右下H/Wボタン押下でワークアウト系開始メニュー
    • ランニング
    • 自転車
    • 水泳
    • トレッドミル
    • ウェイトリフティング
    • インターバルタイマー
    • ワークアウト

キモいUIについて

慣れなのかもしれないけど…
メニューなどに進む遷移は右から左にスワイプアニメーションなのだが戻る時は左から右にスワイプでなく左のハードボタン(戻るボタン)で戻る仕様になっている
ハードボタンでも左から右スワイプでも戻れるようにして欲しい
(ソフト操作で進められるのにソフト操作逆手順で戻れないUIの気持ちの悪さを是非体験して貰いたいw…ここはPebbleのbackボタン処理をそのまま引きずっているのか?…)

あと,全角スペースが豆腐表示になるっぽいのでどうにかして欲しいところ…

その他雑記

電池の持ちは悪くない.液晶輝度も悪くない.WF周りがクソなのを除いて思っていたよりも全体的に良いと思った.
(アプリ通知がない時は流石に捨てようかと思ったが)
PTなしの生活は最初はつらかったが今ではFitbit Ionicでもまぁいいかな?くらいに(気持ちは)移行できている.
(アプリの数が絶望的なのでPTのが遥かに便利ではあるが)
今後のアプリ公開数,WF周りも含めW/F更新でどう化けるか,期待したい.

Pebbleシリーズが結局買えなかった人にオススメできる唯一の現存する会社のスマートウォッチである事は間違いない.
(AWとAWは除く)

あと,Fitbit日本法人が全くと言っていいほど宣伝してないのが笑うw
Twitterのリプライで個人に2,3人へ向けて12月に出るよとかTweetしただけww
※ 日本の発売は未定,2018年に延期になった模様

(最初は12月に発売するってTweetしてた気がするんだけど…ツイ消ししたっぽい…)

GARMINは日本法人にかなり力を入れてきているので,今後もこの手のウェアラブルバイスは国内でもそれなりに戦場になると思う.
(なる訳ねーかw)

ありがとう,Pebble!やっぱもうこれを超えるスマートウォッチ出る気がしねーわw

アプリ開発

つづく(別のエントリーにて)

macOS起動時キー入力オプション

OS側でDvorak配列になっていても起動時オプションの押しっぱなしキーはQwerty配列になる

またHHKBだとCommandキーでなくCtrlキーになる

その為,Command + R は,Ctrl + O として認識される

Command + R を打ちたい場合,HHKBだとCtrlキー + RQwerty配列のR,DvorakのP)を押す必要がある

HHKBでない場合はCtrl部分の注意は不要

昔からmacOS起動周りのキーボードバグは多いし,直す気ないのだろう…

dvorak.hatenablog.com

Homebrewのupgradeで無視したい

Ignore FORMULAしたい

$ brew pin [無視したいFORMULA]

で,無視リストに登録できる.
解除する場合は,

$ brew unpin [無視解除したいFORMULA]

尚,brew pin で無視していても

$ brew upgrade [無視してるFORMULA]

と,個別指定でupgradeすると,upgradeできてしまうので注意.
あくまで $ brew upgrade で,無視できるだけ.

無視リストは

$ brew list --pinned

で確認できる.

macOSでPython3 + pyenv + Anaconda + OpenCV3環境構築

色々試したけど,最近はこれで落ち着いてる.
環境壊しても,直ぐに直せる(要出典)のが良い.
OpenCVやら仮想環境でエラーとかで悩んだりしなくなった.

homebrewはインストール済みとする

brew.sh

pyenv をインストール

$ brew install pyenv

.bashrc に追記

# pyenv
export PATH="$PYENV_ROOT/bin:$PATH"
export PYENV_ROOT="$HOME/.pyenv"
eval "$(pyenv init -)"

tarminal 再起動,または以下のコマンド

$ source ~/.bash_profile
$ source ~/.bashrc

pyenvで利用できるPython一覧を表示

$ pyenv install -l

Anacondaの最新版を入れる

$ pyenv install anaconda3-4.3.0
$ pyenv rehash

tarminal 再起動

仮想環境の一覧表示

$ pyenv versions

メイン(デフォルト)で使うPythonを設定

$ pyenv global anaconda3-4.3.0
$ pyenv version

$ which python

Anaconda自体をアップデート

$ conda update conda

仮想環境へ出入りする為のaliasを追加 .bashrc

alias activate="source /usr/local/opt/pyenv/versions/anaconda3-4.3.0/bin/activate"
alias deactivate="source deactivate"

pyenv rehash自動化コードを入れる

$ pyenv rehash はpipでインストールなどした場合にpyenvに反映させるようなコマンド.
毎回,打つのが面倒なので自動化するのが pyenv-pip-rehash

$ brew install homebrew/boneyard/pyenv-pip-rehash

OpenCV3 インストール

$ conda install -c https://conda.anaconda.org/menpo opencv3

確認

$ python3
>>> import cv2
>>> cv2.__version__
`3.1.0`
>>>

OpenCV以外にも様々なライブラリがリストにある

Package Repository for menpo :: Anaconda Cloud