2017-01-24

iPhone のアラームを全削除する方法

iPhone のデフォルト・アプリ「時計」に設定した全てのアラームを削除する方法。実は簡単で、Siri に

「すべてのアラームを削除」

と頼む。

Remove all alarms from Siri

確認画面が現れるので、「確定」を選べばいい。これだけ。

あとがき

「時計」アプリの画面からアラームを全削除する手段はない。少くともぼくは見つけられなかった (もし他にも方法があるなら教えて頂けると嬉しいです)。

普段の目覚ましに「時計」アプリのアラームを使っているんだけど、休みとかイベントの時に一回っきりのアラームを追加してしまう。邪魔なので閑な時に消そうと思うんだけど、1 つ 1 つ消すのは面倒で困ってた。で、Siri に頼んだら一発だった。この他にも普通の UI で出来ないことが Siri で出来るかもしれないね!

2017-01-23

精選版 日本国語大辞典 for iOS を買ってみた

2017-01-17 (火)、iOS 向けの「精選版 日本国語大辞典」が発売された。通常価格 7,800 円。2017-01-31 までセール価格 4,800 円。サイズは 319 MB。リリースしたのは物書堂。

日本国語大辞典は国語辞典で唯一の「大辞典」。OED (Oxford English Dictionary) と同じく、語義を頻度順ではなく歴史的成立順に並べている。そのため、今では使われなくなった用法が先頭に現れることも珍しくない。

最新第二版は 2000 年から 2002 年の間に刊行された。全 13 巻、別巻 1 巻。 50 万項目、100 万用例。この第二版の項目・用例に更新をかけ (プチ改訂?)、項目数を 30 万・用例を 30 万にまで「精選」したのが「精選版」(全 3 巻) とのこと。

「物書堂」は辞書アプリをメインに開発している会社。iOS の最新機能をすぐに取り入れるフットワークの良さがある。iPhone 6s から導入された 3D Touch や、iPad Air で使えるようになった Split View なども辞書系アプリとしては一早くサポートしていた (確か、新 OS がリリースされて 3 か月以内には出していたはず)。

あとがき

日本国語大辞典の名前は良く聞くけれど、十数巻もある辞書を買うお金もなければ置く場所もないので高嶺の花と思っていた。精選版とはいえ、日本国語大辞典が 1 万円以下で手に入ると知り、勢いで買ってしまった。辞書マニアには程遠いけど、辞書持ってるのが好きなのよね。面白い。

2017-01-21

iPhone で「コーヒー」の写真を検索してみた

昔の「コーヒー」の写真を探していて、試しに画像検索したら成功した。iPhone にデフォルトで入っている「写真」アプリと、Google が提供している「Googleフォト」アプリでの検索について書いてみる (ぼくはこの他に「Prime Photos」と「Flickr」を入れている。「Prime Photos」に検索機能はなかった。また、「Flickr」は画像に付けたタイトルやタグを検索する機能しかなかった)。

「写真」アプリ

まずは iPhone (iOS) 標準搭載の「写真」アプリ。検索で「コーヒー」と入れたら、候補が 2 つ現れた。「コーヒー」と「コーヒーショップ」。なるほど、「写真」アプリは認識したカテゴリーが分かるようになっているのか。

Untitled

今回は「コーヒー」を選択。

Untitled

「コーヒー」の写真がタイル状に表示された。一覧性があってイイ。

一部、飲み物じゃないものも認識されている。上から一段目・右端の写真はキャニスターに入った「コーヒー豆 (粉末)」だし、上から二段目・左端の写真ではマグカップにコーヒーはまだ入ってない。マグカップの横にある白い筒が Stelton のコーヒー・プレスで、中にコーヒーが入ってるんだけど、コーヒー・プレスを認識したのかしらん (まさかね!)。下から二段目・右から 2 つ目にいたっては大はずれ。Twitter ロゴの入った Bluetooth スピーカーをコーヒーと間違えてる! 遠目に見たら、人でも間違えてしまいそう。面白い。

「Googleフォト」アプリ

iPhone (iOS) に入れた「Googleフォト」アプリを試す。検索で「コーヒー」と入れたら、候補が 2 つ現れた。「コーヒー」と「コーヒーカップ」。「写真」アプリと少しカテゴリーが違う。試しに「コーヒーショップ」を検索したら、検索結果は返って来たけど「コーヒーショップ」を撮った写真はなかった (何故か「カレー」の写真とか「駅弁」の写真がヒットした)。また、「写真」アプリで「コーヒーカップ」を検索したら「カップ,コーヒー」という候補が現れた。

Google Photos - Search

さて、今回は「コーヒー」を選択。

Google Photos - Search coffee

「Googleフォト」アプリでは、日付ごとに写真が列ぶ。「写真」アプリは上に行くほど古い写真なのに対し、「Googleフォト」は下に行くほど古い。列び順が逆なので少し混乱してしまう。コーヒーの写真は 1 日に何枚も撮っていないので、少しスカスカな印象。

2 つのアプリを比べると、「Googleフォト」では 3 月 22 日 (上から 1 つ目) の次に 3 月 4 日の写真が来ている。ところが「写真」アプリでは 3 月 4 日の写真 (上から 3 段目・右端) と 3 月 22 日 (上から 4 段目・右から 2 つ目) の間に 2 枚の「コーヒー」の写真がある。一枚はラテだし、もう一枚はもしかしたらソイコーヒーな気がする。これらを「コーヒー」と認識するかどうかは判断に苦しむ。「写真」アプリはその判定が緩目で、「Googleフォト」アプリは厳し目な気がする。そのかわりなのかどうなのか、「Googleフォト」アプリは Twitter ロゴの Bluetooth スピーカーを「コーヒー」と間違えていなかった。素晴らしい。もちろん、「Googleフォト」も完璧ではない。「写真」アプリが「コーヒー」と認識した (明らかに「コーヒー」な) 写真を見つけることが出来ないこともあったし、新幹線で売っているスジャータの「アイスクリーム (バニラ)」を「コーヒー」は誤認識したりもしていた。

あとがき

今回は「コーヒー」で検索をかけたけど、別の単語では結果が変わってくる。例えば「写真」アプリは「紅茶」で検索できたけど、「Googleフォト」アプリは「一致する結果はありません」と出た。ぼくが「紅茶」をあまり飲まないせいかもしれないけれど。

いずれにせよ、写真に「タイトル」や「タグ」を付けなくても、画像検索が出来るというのはありがたい。これからもっと賢くなるだろうし、期待。

簡単に検索できると分かれば、もっと写真を残す気になりそう!

2017-01-20

プロパティー属性: delegate は weak, block は copy

Objective-C でクラスのプロパティとして delegate を持つ場合に、オーナーシップ属性として weak を付ける (一部の例外を除く) のは知っていたのだけど、ブロックにも weak を付けてハマった。Block の場合は weak ではなく copy を使うのね。

typedef FooBlock *(^FooBlock)(NSString *input);

@interface FooObject : NSObejct
@property (nonatomic, copy) FooBlock block;
@property (nonatomic, weak) id<FooDelegate> delegate;

...
@end

ただし、書き方は分かったけど、使いこなせてはいない。循環参照が怖いなぁ。

ref

2017-01-19

iOS のフォルダーを 3D タッチするとバッチ有アプリ一覧が現れる

iPhone はフォルダーの中に複数のアプリを入れることができる。アプリ・アイコンの右上には通知の数などを表す「バッチ」が表示される。もし、フォルダーの中に入っているアプリに「バッチ」が付いた場合、フォルダーに「バッチ」が表示される。複数のアプリに「バッチ」が付いたら、フォルダーには合計の数が「バッチ」として表示される。

さて、「バッチ」の付いた (フォルダーの中の) アプリに、素早くアクセスしたい時どうするか。便利な方法がある。

それはフォルダーを 3D タッチすること。するとクイック・アクションとして「バッチ」の付いたアプリの一覧が表示される。ここで、指をすべらせて目的にアプリを選べば OK。アプリが起動する。

3D Touch / Folder

スクショは、写真系アプリを集めたフォルダーを、3D タッチしたもの。「Prime Photos」に 85 個、「Flickr」に 7 個、「Googleフォト」に 2 個の「バッチ」が付いている。

フォルダーを開く手間を半歩省ける。通知を確認するのに便利。

2017-01-17

アンプ PRIMARE I30 が壊れたっぽい

2008 年から愛用しているアンプ Primare I30 が壊れたっぽい。

PRIMARE I30

正月の休みが明けて、帰省先から帰って来たところ、左右のスピーカーかジジジーという音が鳴るようになっていた。色々調べて原因を探り、Primare I30 がおかしい、という結論に達した。調査項目は次の通り:

  • プリアンプ Primare I30 のボリュームをミュートにすると、ノイズが消える
  • Primare I30 の入力セレクターを切り替えても、ノイズは消えない
  • Primare I30 への入力ケーブルを全て抜いても、ノイズは消えない
  • 左右のスピーカーから同じノイズが聞こえる
  • パワーアンプはモノラル・パワーアンプを利用している

ノイズが出始めた当初は、冷さで調子がおかしいのかな? と一抹の望みを持って何日か様子を見てみたけれども改善しない。オーディオ・ショップの店員さんや、オーディオ友達らに聞いてみたけれど、故障でしょうという意見以外もらえなかった。

週末もしくは月末に、修理に出してみる。直ってくれると良いのだけど。できればお財布に優しいお値段で。。。

Primare I30 は、ぼくが自分の好みで選んだ初めてのオーディオ機器なので愛着が大きい。とてもショック。

2017-01-16

Apple TV でスクリーン・セーバをすぐに起動する

Apple TV でスクリーン・セーバをすぐに起動したければ、ホーム画面なら

  • MENU ボタンを二回押す

これでスクリーン・セーバが起動する。

Apple Rimote

もし、アプリの中にいる時は「ホーム」ボタンを押してホーム画面に戻り、MENU ボタンを二回押す。

あとがき

Apple TV のスクリーン・セーバは綺麗なので、友達に見せたくなることがある。そんな時に便利。もちろん、自分で見るのもアリ。

2017-01-14

YAMAHA の AV アンプ RX-V481 を購入した

実家で使っていたアンプ Tangent EXEO Amp が壊れてしまった。ここ一年、ディスプレイが表示されない等の不具合が出ていて、年末ついに電源が入らなくなった。もう修理もできないそうな。というわけで、新しくアンプへ買い換えることになった。

買い換え候補に上がったのは、同価格帯 (5〜6 万円) のピュア・アンプ。YAMAHA とか Denon とか。そんな中、実家での利用シーンを聞いてみると TV 番組を見ることが多いという。あと、Google Chromecast で Youtube を見るとか。なら、AV アンプの方が使い勝手良さそう。

結局、AV アンプとピュア・アンプの音質は比べることが出来ず、操作性の良さそうな AV アンプをエイヤッで買った。それが、YAMAHA の AV アンプ RX-V481。

YAMAHA RX-V481

写真は、YAMAHA の GT1000 ラックに入っている RX-V481。

これで我が家のオーディオ構成に次のようになった:

  • CD プレーヤー: Marantz CD6004
  • AV アンプ: YAMAHA RX-V481
  • スピーカー: QUAD 11L

AV アンプには、CD プレーヤーの他に TV、BD レコーダー、Google Chromecast を常時接続している。CD プレーヤーを除いて、全て HDMI 接続。TV は ARC (Audio Return Channel) で音声を AV アンプに渡す。

RX-V481 は 5.1ch 対応。そのうち 4ch を使ってスピーカーをバイアンプ駆動できる。QUAD 11L はバイアンプ対応で、実家には余ったサラウンド用スピーカーもないので、バイアンプで駆動するようにした。

Bluetooth のバージョンは 2.1。2016 年の最新バージョンが 4.2 なので、少し古い。iPad や Android から音を飛ばすと、クオリティーの低さが気になる。Apple Music を聴くなら RX-V481 の AirPlay 機能で音を飛ばす方が良い。ただ、RX-V481 の AirPlay 機能は「音」だけなので注意。「画面」は飛ばない。写真アプリの写真を大画面で見るとか、YouTube の動画を大画面で鑑賞することは出来ない。「画面」付きの AirPlay がしたいなら、Apple TV か Amazon FireTV (FireTV は AirPlay 用アプリがある) を使うしかない。

YouTube や Google Play Music を楽しむなら、Google Chromecast も良い選択肢になる。Bluetooth より音質が良いし、バッテリーを喰わないのが良い。実家では Google Chromecast をメインに使っているので、AirPlay の利用頻度は下がりそう。

あとは Spotify 対応 (Spotify Connect 対応) とうたっていたけど、iPhone から Spotify の音を飛ばすことは出来なかった。ぼくの Spotify アカウントがフリーなのがいけなかったみたい。Spotify Connect にはプレミアム・アカウントが必要とか。

あとがき

音質に関しては Tangent EXEO Amp に比べて一つ下がった印象。操作性は随分良くなった。実家での利用シーンにマッチしている。

今までは TV をつけて、アンプをつけて、TV の音量をミュートにして、アンプの入力を TV に切替えて... とステップを踏む必要があった。というか、そのステップが面倒で、アンプから音を出すことを しない ことが多かった。どんなに良いアンプもスピーカーも、使わなければ意味がない。「操作が面倒」。そんな理由で、アンプとスピーカーが「意味のない」置き物になることが多かった。

AV アンプにしたことで、TV をつけるだけでアンプも起動して入力が切替わり、TV の音量をミュートにする必要もなくなった。「アンプ」の存在をほとんど気にすることなく使えるようになった。この操作性の違いは大きい。

良い買い物をした。

2017-01-13

go fmt でソースコードを整形してみた

Go にはコンパイラーがコード整形ツールを持っている、というので試してみた。

コマンドは go fmt filename.go

こんなコードを...

$ cat main.go
package main

import (
  "fmt"
  )

func main() {
  fmt.Println("Hello, World!")
  }

go fmt にかけてみる。

$ go fmt main.go
$ cat main.go
package main

import (
 "fmt"
)

func main() {
 fmt.Println("Hello, World!")
}

なるほど。なるほど。

Go 言語ではインデントに TAB を使うとのこと。ぼくはスペースを使っていたけど、それも TAB に直ってた。良いね。

2017-01-12

Flickr の embed コードを XML valid にする EmacsLisp

Flickr で生成した embed コードは XML valid じゃないので、Emacs の nXML モードが文句を言う。邪魔なので、修正する elisp を書いた。

(while (search-forward "data-flickr-embed" nil t)
  (beginning-of-line)
  (when (search-forward "></a>" nil t)
    (replace-match "/></a>"))
  (when (search-forward "async" nil t)
    (replace-match "async=\"async\""))
  (forward-line 1))

ブログ書き用のコードなんだけど、こういうのをまとめて自分用 Blog モードを作ろうかなぁ。。。