Mac OS X

Mac OS Xについて

UTF-8のBOMの確認、追加、削除

SQLiteからエクスポートしたUTF-8のCSVファイルをExcelで読み込むと文字化けするのでこれまではShift-JISに変換していたがもしかしたら何らかの方法で読み込めるのではないかと思い、検索するとBOMを付加すればよいことが分かった。なお、確認した環境はmacOS 10.15.3 Catalinaです。

確認方法

fileコマンドを使う。対象ファイルを行こうhogehoge.csvとします。

file hogehoge.csv
hogehoge.csv: UTF-8 Unicode text <-- BOMなし
hogehoge.csv: UTF-8 Unicode (with BOM) text <-- BOMあり

BOMの追加

nkfコマンド

nkfコマンドを利用する。nkfコマンドはmacOS標準のコマンドではないので何らかの方法でインストールする。私はbrewでインストールしてある。

追加のオプションは–oc=UTF-8-BOM、対象ファイルを上書きするにはオプション–overwriteを追加する。

ocオプションは出力のエンコードの指定

nkf --overwrite --oc=UTF-8-BOM hogehoge.csv

emacsを利用する場合

普段Emacsを使っているのでこちらも調べた。出力ファイルのエンコードを指定すればよい。

  1. 該当ファイルを開く
  2. Ctrl+X,Return,F
  3. 次のいずれかのエンコードを指定する
    1. utf-8-with-signature
    2. utf-8-with-signature-dos
    3. utf-8-with-signature-mac
    4. utf-8-with-signature-unix
  4. ファイルを保存する

BOMの削除

nkfコマンド

nkfコマンドの–oc=UTF-8を使う。

nkf --overwite --oc=UTF-8 hogehoge.csv

emacsを理由する場合

普段Emacsを使っているのでこちらも調べた。出力ファイルのエンコードを指定すればよい。

  1. 該当ファイルを開く
  2. Ctrl+X,Return,F
  3. 次のいずれかのエンコードを指定する
    1. utf-8
    2. utf-8-dos
    3. utf-8-mac
    4. utf-8-unix
  4. ファイルを保存する

参考にしたページ

下記のページを参考にしました。ありがとうございます。

Apple Remote Desktopで複数台マシンに一斉ログインする

 

Apple Remote Desktopを使ってLAN内の複数あるMacに一斉にログインする方法を検索し、見つけたがうまく動作しなかった。状況を確認すると入力モードが「ひらがな」になっていることが原因と分かった。そこでキーボード入力をローマ字に変えた後に、検索して見つけたコードを実行すれば良いことが分かった。

次のスクリプトをUNIXコマンド送信を使って全リモートマシン上で実行すればLAN上の全マシンを一斉に指定ユーザでログインできるようになる。なお、各リモートマシンには同一のユーザが同一のパスワードで登録されていることが前提である。

スクリプト 

osascript <<EOF
tell application "System Events"
key down {cotrol}
key down {shift}
keystroke ";"
key up {control}
key up {shift}
keystroke "username"
keystroke tab
keystroke "password"
keystroke return
end tell
EOF

iPhone附属のヘッドフォンをMacBook Airに接続するとマイクとしても使える

MacBook Airにはヘッドフォン端子はあるがマイク端子はない。この端子にiPhoneに附属するヘッドフォンマイクを接続するとヘッドフォンと外部マイクとして認識され、使用できる。

ヘッドフォンマイクが外部マイクとして認識される。

ヘッドフォンマイクが外部マイクとして認識される。

OS Xのメニューバーアイコンを移動させる方法

OS Xのメニューバーアイコンは動かせないものと思っていましたがcommandキーを押しながらドラッグすれば好きな場所に動かせることを知りました。

ただし、動かせるのはシステム標準のものだけでEvernoteなどのサードパーティ製アプリケーションのアイコンは動かせません。

メニューバーアイコンを移動の様子(ビデオ)。

参考URL:Macのメニューバーが混み合ったらBartenderにおまかせ

 

iMovieの「メディアが見つかり見つかりません」への対処

iMovieで編集しているビデオにiTunesにある音声を録音したオーディオを挿入して使っているときにオーディオトラックに警告のマークが表示され、音声が再生されなくなった。

警告

クリップのトリム編集を選択すると図のように「メディアが見つかりません」というダイアログが表示される。

メディアが見つかりません

iTunes内にはオーディオファイルがあるのでこれを参照していないことが分かる。

そこでiMovieを終了後、iMovieプロジェクトのフォルダ内にある対象プロジェクトのパッケージ(プロジェクト名.rcproject)を内容を確認してみるとiTunesからドラッグ&ドロップした他のオーディオ画あることが分かったので見つからないと言われたファイルをこのパッケージ内にコピーし、iMovieを起動すると上記の警告は消え、オーディオが正しく再生された。

別ドライブにプロジェクト等を移動していたのが一因なのかもしれない。

sudo -sでrootになれるんだ

今までLinuxやMacのターミナルでrootになるのにsu -使っていたけれどsudo -sでもrootになれる事を初めて知った。不勉強でした。

Linuxではプロンプトが#に変わるのにOS Xだと$のままですね。私だけ?

iBook Author ver.2でLaTeXの数式を使う

先日アップデートされたiBook Author新しいバージョン(version 2)ではLaTeXとMathMLの数式を使えるようになった。どう入力するのかすぐには分からなかったがメニューの挿入から方程式を選べばいい。ただし、日本語を含む式はそのままでは無効な方程式となってしまう。少し面倒だが日本語の部分は\text{}に入れれば数式中に日本語を含められる。

これで更に用途が広がった。

メトリック=(\frac{10^7}{最小帯域幅}+累積遅延)\times 256
     ↓
\text{メトリック}=(\frac{10^7}{\text{最小帯域幅}}+\text{累積遅延})\times 256

最初、iBooks Author内にLaTeXの環境が組み込まれているのかとバンドル内を探してみたがそれらしき物は見つからず、検索した結果アップル本家のサポートページにある説明の文書を見つけた。BlahtexというLaTeX数式をMathMLに変換するプログラムを使っている事が分かった。