ラベル Mac の投稿を表示しています。 すべての投稿を表示
ラベル Mac の投稿を表示しています。 すべての投稿を表示

2015年10月28日水曜日

iPhone/Macの連絡先をAndroidに移す

iPhone5のスリープボタンがほとんど効かなくなった。調べたら iPhone 5 スリープ/スリープ解除ボタン交換プログラムの対象のようで、アップルに電話したらピックアップ&デリバリーで修理してくれるとのこと。

修理に5日程度かかるそうなので、auに代用機を借りることにした。貸してくれたのは Android の SHL25 という機種。Google Map が入っているからカーナビにも使ってる iPhone の代わりにはなる。が、電話帳データは一時的にでも入れないと一週間かなり不便する。

自分は iCloud で電話帳データを Mac と iPhone で共有している。このデータをAndroid携帯に入れたい。いろんな手があるようだが、紆余曲折の結果、こうしたよ、という話。参考にされるなら自己責任で…

結論から言うと、
  1. Mac の連絡先アプリから「すべての連絡先」をvCard形式でファイルに書き出す。(カードの欄で⌘-Aすれば全部選択できる)
  2. そのファイルの文字コードをUTF-8からShift_JISに変換する。a.vcf というファイルを作ったとする。
  3. Dropbox に一時的に入れる
  4. 入れたフォルダのリンクを共有のために生成
  5. 長いので bit.ly で短縮
  6. Android 側でブラウザを使ってそのリンク先にアクセス
  7. ファイルをローカルに直接ダウンロード
  8. 電話帳アプリで開いて読み込む(一括登録、登録先は本体、追加登録を選択)
…とした。ただ、Mac の連絡先アプリではフルネームが「名 氏」になってるようで(自分の設定のせい?)名前表示が「太郎 山田」みたいになってしまうが、一時的だから直さなかった。必要ならステップ1と2の間で vCard のデータをいじるとかで対処できる。

追記(2015年10月29日):ネット経由でなく、AndroidスマホをUSBケーブルで Mac につなぐ方法でもできた。Android File Transfer を使う(長いから以下 AFT と書く)。これは本家のアプリみたいなので大丈夫そうと思った。
  1. Mac の連絡先アプリからすべての連絡先をvCard形式でファイルに書き出す
  2. そのファイルの文字コードをUTF-8からShift_JISに変換する。そのファイルを a.vcf とする。
  3. Mac に AFT をインストールする
  4. スマホの画面ロックを解除してUSBケーブルで Mac につなぐ。AFT が自動的に動く(動かない場合は手で動かす)
  5. AFT のウィンドウの Download フォルダに  a.vcf をドラッグ&ドロップする
  6. スマホで電話帳アプリを開く
  7. メニューから「設定・管理」>「ストレージからインポート」を選ぶ。セキュリティキーを入力するとファイル一覧が表示され、その中に a.vcf がある。
  8. それをタップして、一括登録を選び、登録先を本体にしてOK、確認で「追加登録」を選ぶ
  9. AFT で a.vcf を Android のストレージから削除する
なお、ストレージに直接USB経由で書き込んだ場合には、ダウンロードアプリが表示するファイル一覧にそのファイルは現れないようだ。(追記終わり)

以下、うまくいかなかった/使わなかったやり方。
  • auショップでは「フレンズノートというアプリを使えばできる」と言われた。iPhoneアプリのフレンズノートで一度auのサーバにアップロードして、同じフレンズノート(Androidスマホに最初から入ってた)でダウンロードしろ、ということだったようだが、iOSアプリのフレンズノートをダウンロードして動かすと、サーバにアップロードするにはデータお預かりアプリなるものを使えと出てくる。このデータお預かりアプリなるものの評判がすこぶる悪い(データが消えるとか)ので使うのをやめた。
  • とにかくvCard形式のデータを Android のストレージに入れればできるようで、ファイルをPCと共有できるソフトも探した。ESファイルエクスプローラーというのが無料であったが、どうもセキュリティが怪しいようで、これも避けた。
アプリはセキュリティが問題になるから、できるだけ基本的な手段で済ますのが吉だと再認識した。

2013年12月26日木曜日

Brother カラーレーザープリンター HL-3170CDW

インクジェットのコスパの悪さにとうとう我慢できなくなったところで、良さそうなレーザープリンターを見つけたので買った。導入と印刷サンプル、使ってみての第一印象などを。


勤めてた頃はキヤノン、沖、富士ゼロックスのレーザーを使ってきて、家では EPSON のインクジェットを使ってきた。ブラザーは初めて。自営なので SOHO 向きのやつを選んでみた。

開梱。17.7kg あるので箱から出すのは二人がかりの方が腰を痛めなくていいけど、ひとりでもできないことはなかった。本体の開く部分を止めてあるテープをいくつか剥がす。そして4つのトナーを一度外して、運送用のプラスチックをそれぞれ外して、トナーを元に戻す。

これがプラスチックの残骸。横を開くようにして外した。


ネットワークのセットアップは簡単。うちは無線で LAN を構築している。プリンタ本体の液晶画面とボタンを使って SSID を選び、WPA パスワードを入力する。キーボードはないけど、ボタン長押しで文字の選択肢が変わる速度が速く、あまりストレスにならなかった。そしてすぐにつながった。つながると SSID などを記した紙が一枚印刷される。

コンピュータの方にドライバソフトをインストールする。ディスクがついてきたけど、うちは Mac OS X 10.9 で、ディスクを入れてインストーラを起動すると「対応してないのでサイトからダウンロードしてインストールせよ」というようなメッセージが出た。ブラザーのサイトのサポート>ソフトウェアダウンロード>レーザープリンター JUSTIO>カラーレーザー HL-3170CW あたりから入れればOK。

カラーの印刷品質を確認するために、写真を印刷してみた。これが元の写真。


これを iPhoto から「普通紙に写真をプリント」、品質は最高として印刷して、ScanSnap iX500 で解像度エクセレントでスキャンしたのがこれ。


(どちらも画像サイズは適当に変更してある。クリックで横1600ピクセルのオリジナル画像を表示)

印刷には縦筋(給排紙方向に対しては横筋)が見えるが、期待以上にきれいに印刷された。まあうちは写真の印刷は基本的にしないけど。

次に AirPrint を試す。うちのモバイルデバイスは iPhone 5 と iPad 2012、どちらも iOS 7 にしてある。Safari のメニューからプリントを選び、プリンタを選択しようとするが、検出に失敗する。(「AirPrintプリンタが見つかりません」と表示される)

プリンタ本体の AirPrint の設定を確認する。システム環境設定からプリンタとスキャナを選び、Brother HL-3170CDW を選んで「オプションとサプライ…」>「プリンタの Web ページを表示」をクリックするとウェブブラウザが開いてプリンタ本体にアクセスする。ネットワーク>プロトコル>AirPrint にデフォルトでチェックが入っているので、動いているはずだ。

ここでもう一度 iPhone からプリントを試すと、今度はプリンタが見えるようになった。そして印刷できた。

ところがしばらくしたらまたプリンタが見えなくなった。いろいろ試した結果:

  • 一度見えるようになるとしばらくは見えている
  • なぜか見えなくなるときがある
  • 見えなくなったときに、プリンタ本体にウェブアクセスしてネットワーク設定のあたりを開くとまた見えるようになる
  • それをしなくても、また見えるようになることもある
  • プリンタ本体がディープスリープ、スリープ、インサツデキマスのどの状態でも挙動に変わりがない
  • iPhone でも iPad でも変わらないので、プリンタ側の問題っぽい

というわけで、よくわからない(汗)

最後に置き場所。机の上に置くには大きいし(H465xW410xD240)、床に直置きでは埃で壊れそう。いいプリンタ台はないかと探したら、机の下に収納するものを見つけた。


W480xD400xH75でよさそうな大きさ。耐荷重35.5kgは十分。

キャスター4つを付属のスパナでねじ込むだけの組立て式。裏はこんな感じ。キャスターはそれぞれちゃんと回って向きが変わります。


スパナが薄く小さいのでちょっと使いにくかったけど、5〜10分でできた。


プリンタ17.7kg+プリンタ台3.6kg=21.3kgをキャスター4つ(接地面8つ)で支えている。まあ床に傷はつかないだろう。キャスターの大きさはこのくらい。


乗せてみました。ぴったり!



iPhone の広角レンズで撮ったから横に少し余裕があるのが分からないな。公称サイズ通りにこうなってます。


机の下に入れた。


これでしばらく使ってみます。AirPrint の件は今後の課題。



追記(同日):ファームウェアのバージョンが Main 1.13, Sub1 1.01 で、Main の方がひとつ古かった。ブラザーのサイトからダウンロードして Main 1.14 に更新したのでこれで様子を見ます。

追記(12/27):ファームウェア更新後も AirPrint で同じ症状が出ています。やはり今後の課題か。

(最終更新:2014/08/31)

2013年12月15日日曜日

メモ:Inkscape で OS X の(見かけ上)サイズゼロのフォントを使う

Mac の Inkscape は X11 のアプリケーションで、X から見えるフォントしか使えないようだ。自分の ~/Library/Fonts/ にあるフォントファイルで、UNIX 的ファイルサイズがゼロのもの(リソースフォークなるところに実際のデータが入っているもの)は X11 からは使えないみたい。これを Inkscape で使いたいと思った。

まず FontForge をインストールする。このとき GUI 付きで作る。Homebrew では「brew install fontforge --with-x」とする。その後、指示に従って「brew linkapps」とすると、/Applications/ に FontForge.app ができる。

X11 が動いている状態で、Finder で FontForge.app をダブルクリックして開く。そして目的のフォントファイルを指定して開く。

ファイル>フォントを出力... を選ぶ。保存形式として TrueType を選ぶ。ファイル名は適当に。そのままで多分大丈夫(すでにある名前でなければ)。保存する。何かいろいろ警告が出るが、とにかく保存する。(←これ、後で問題が出るかも知れない。どうすればいいかわからない。)

Font Book を開くと、フォントが重複しているはずなので、新しく入れた方を使用停止する。マウスポインタを上に置くか、右クリックして Finder に表示を選べば、どのフォントがどのファイルに対応するか分かる。右クリックから使用停止できる。

X11 を一度落とす。

X11 を立ち上げ(← Inkscape を起動すると同時に立ち上がる場合には不要)、Inkscape を立ち上げると、フォントが使えるようになっている。

2013年12月3日火曜日

メモ:com.apple.quarantine 拡張属性

調べきれてないけど回避策を見つけたのでメモ。

Mavericks に変えたせいか、今まで使ってたスクリプトが動かなくなった。こんな感じ:
$ cat hello
#!/bin/sh
echo hello
$ ./hello
-bash: ./hello: /bin/sh: bad interpreter: Operation not permitted
$
以下の場合にこれが起きるようだ。
  • 実行ファイルに com.apple.quarantine 拡張属性がついていて、その最初の値の下から3ビット目(0x4)がオンであるか、
  • そのファイルが内在するスパースバンドル(マウントされている)の *.sparsebundle/token に com.apple.quarantine 拡張属性がついていて、0x4がオンである
後者は、.dmg の場合は分からない。

確認法。ls -l@ でそのファイルを見て、「com.apple.quarantine 数字」という表示が出るかを見る。
$ ls -l@ hello
-rwxr-xr-x@ 1 mkazuto  staff  21 12  2 18:00 hello*
        com.apple.quarantine    27
quarantine-test-local$
「数字」(ここでは27)は拡張属性の大きさ(バイト数)。中身を見るには xattr -l する:
$ xattr -l hello
com.apple.quarantine: 0006;xxxxxxxx;アプリ名;
$
セミコロンでいくつかの情報が区切られている。最初の値は16進数のようで、この値の0x4がオンだと冒頭のエラーが出る。ここでは0x0006なので0x4がオンだからエラーになる。2つ目の値は16進数で何かのIDぽい。3つ目の文字列は、このファイルを(たぶん作成すると同時に)検疫隔離 (quarantine) したアプリケーションのようだ。エラーが出たときに /var/log/system.log を見ると、
Dec  3 10:10:09 rMBP kernel[0]: exec of /Users/mkazuto/hello denied since it was quarantined by アプリ名 and created without user consent, qtn-flags was 0x00000006
のようなメッセージが残っている。

対処法。xattr -d を使って com.apple.quarantine 拡張属性を取り除けば、一応動く。
$ xattr -d com.apple.quarantine hello
あとは0x4ビットだけを落とすという手もある。
$ xattr -w com.apple.quarantine '2;xxxxxxxx;アプリ名;' hello
スパースバンドルの token ファイルの拡張属性はマウント時に確認されるようだ。変更を有効にするにはマウントし直す必要がある。

いずれにせよ、この拡張属性の意味を正確には知らないので、これで大丈夫かは不明。Chrome や Safari を使ってネットから落としたファイルを見ると、0001とか0002とか0006とか0041とかいろんな値がついている。

実行ファイルに直接 com.apple.quarantine 拡張属性がついてる場合の情報はネットに多かったが、スパースバンドル内にある実行ファイルの実行可否がスパースバンドルの token ファイルの拡張属性に影響されると気づくのに時間がかかった。

2013年6月9日日曜日

FreeMind のアップデート

FreeMind で昔(0.8時代)作ったファイルを0.9.0で開こうとしたら

Error while parsing file:freemind.main.XMLParseException: XML Parse Exception during parsing of a map element at line 1: Expected: =

とエラーが出て開けなかった。(OS X 10.8.3)

でも unstable な1.0.0RC4を使ったら無事開くことができた。よかった。

長期保存の必要がありそうな書類はフォーマットを考えて選択しないとな。ソフトのバージョンが上がるたびに、それまでの書類をいちいち変換するわけにはいかない。

そう言えば職場で、以前に文豪(ワープロ)で作った書類が開けなくて大変に困ったことがあったっけ。

表計算ソフトのファイルは、CSVをいつも書き出しといた方がいいのかも。そう考えると、ワープロでは LaTeX が最強か。

2013年5月22日水曜日

Mac で Jenkins の文字化け

OS X (10.8.3) で Jenkins (1.515) をターミナルから普通に
$ java -jar jenkins.war
で動かしたら、ブラウザ (Chrome) で見るコンソール出力の一部で日本語(UTF-8 で出力したはずのもの)が文字化けした。
$ java -Dfile.encoding=UTF-8 -jar jenkins.war
で起動するといいようだ。

というメモ。

2013年2月15日金曜日

メモ:パブーの PDF メールアドレス埋込み

パブーにアップロードした自作 PDF が読者によってダウンロードできないとか、サイズが巨大になるとかいう問題があった。メールアドレス埋込み設定をしなければ大丈夫らしい。その原因、というか回避策が見つかったので書いておく。

特定の PDF 形式だとダメらしい。dvipdfmx で生成したもので問題が出ていた。その PDF ファイルを、一度 OS X のプレビューで開き、別名で保存すると、内容は(多分)一緒だが形式が変わる。その形式だとパブーに登録しても問題なくダウンロードできる。

つまり、dvipdfmx の出す PDF ではダメで、プレビューの出す PDF なら大丈夫。多分、Acrobat とかでも大丈夫なんだろう。

2012年8月31日金曜日

Apple TV にアナログ音声機器をつなぐ

まとまった情報が見つからなかったので、メモを兼ねて。

Apple TV は、簡単に言うと、テレビをネットに繋ぐセットトップボックスです。独立した音声出力があるので、アナログアンプのある仕事場で AirPlay で音を鳴らすために買ってみました。AirPlay は、iTunes や、iPhone / iPod / iPad から音楽を Apple TV で鳴らす機能。それで鳴るまでの紆余曲折です。

Apple TV の音声出力は光デジタルなので、それを RCA のアナログステレオ出力に変換しなきゃいけない。アマゾンで見たら DCT-3 というのが良さそうだったので買った。

コンパクトな AC アダプタがついてる。

Apple TV 付属のケーブルは電源ケーブルだけなので、光オーディオケーブルも買った。長さはあまり必要ないのでとりあえず1mで。

Apple TV が届いて取扱説明書を見てみると、最初にテレビをつないで設定が必要らしい。USB の口はあるが、出荷時の状態に復元するためのもののようだ。無線でも設定できなそう。というか、無線ネットワークにセキュリティがかかってるんだから、考えてみれば当たり前だ。パスワードとか入れられなければ繋がるわけない。

Apple TV の映像(+画面)出力は HDMI。うちのテレビ Sharp AQUOS LC-32GD4 は8年くらい前のもので HDMI 端子がない。でも幸い DVI-I 入力はあるので、HDMI - DVI-I 変換ケーブルを買って繋いだ。

PLANEX のもあったけど、こっちの方が3mあってお得感がある。AmazonBasics というシリーズは知らなかった。HDMI 入力があるテレビとかで設定するならこんなのがある。やたら安い気が。

このケーブルと、RCA-ミニステレオプラグケーブルを使って、Apple TV とテレビを繋いだ。ちゃんと絵も音も出て、設定もできた。無線ネットワークの設定には文字入力が必要だが、それは付属のリモコンを使って画面上で(ゲームの自キャラ名設定みたいに)入れる。AirPlay には、無線ネットワークとは無関係のパスワード(Apple TV と iPod とかの間で交わされる合言葉みたいなもの)を設定する必要がある。バレても勝手に音楽が鳴らされるくらいの影響しかなさそうなので、簡単なものを設定した。

さて、設定した Apple TV をテレビから外し、電源ケーブルを抜いて(電源スイッチはない)仕事場へ持って行き、アンプに繋ぐ。繋ぎ方は、アンプRCAステレオ端子―変換器RCAステレオ端子、変換器光オーディオ端子―Apple TV 光オーディオ端子。あとは変換器と Apple TV の電源をコンセントに差す。

Apple TV の状態は、前面の白色 LED で分かる。点滅は起動中、点灯が正常動作中みたい。点灯したら、アンプのスイッチを入れて、iTunes なら右下のテレビだかスピーカだかの印がついたボタンで Apple TV を選ぶ。iPhone とかならミュージックアプリで再生してからスピーカーを選ぶ。さっきの合言葉を入れると、めでたく鳴った。

2009年9月29日火曜日

Mac OS X の Mail.app でメッセージ振り分けの設定をした(覚え)

OS は Leopard。やりたかったことは、
  • 未処理のメッセージは特定のメールボックスで見る。
  • 処理済のメッセージはそのメッセージに応じたメールボックスに移す。
だけだったのだが、意外と苦労した。

Mail.app の振り分け機能では、好きなときに好きなルールのまとまりを適用するようなことはできない。さらに、あるルールの動作の結果が他のルールの動作に影響を与えることができない(例えば、あるルールでメッセージの状態を変え、他のルールでそれに基づいて処理を行なうことはできない)ように設計されているようだ。つまりフィルタは受信箱に入る時に適用されることだけを想定しているように見える。

だから上に書いたようなことをするには、先に(メールを受信した瞬間に)振り分けを行なうしかない。すると未処理メッセージを上のように読むには、スマートメールボックスを使うことになる。つまり、
  • ルールで振り分けをする
  • 未開封となっているメッセージをスマートメールボックスで読む
というやり方になる。これはきっと Mail.app の設計者も意図しているところだと思う。

でもこのやり方では、一度スマートメールボックスで開封して、誤ってそのスマートメールボックスから離れてしまうと、開封したメッセージは振り分け先のメールボックスから探し出さなければいけない。これは危険だ。

そこで、フラグを使って以下のようにして解決した。
  • 受信箱に入るメッセージには無条件にフラグを立てる
  • ルールで振り分けをする
  • フラグが付いたメッセージをスマートメールボックスで読む
  • 処理が済んだら手でフラグを落とす(削除や明示的な移動もできる)
  • 受信箱に残っている(振り分けるルールがない) メッセージを手で移動するなり消すなりする
とりあえずこれでうまくいっているように見えるが、いろいろ試していたせいか、メールボックスの再構築や Mail.app の再起動をしないとメッセージの状態が安定しない(移動できないとか、重複して表示されるとか)ことがあるみたい。でも前から Mail.app が不安定でよく落ちているから、この設定のせいではないのかも。