1. Macbook を持って行く時、帰ってきた時にやる事が多いので、1発でできるスクリプトにまとめる

    2012/03/08 by hrk | Mac OS X Tips

    Macbook (Air) を外に持って行く事がちょくちょくあるのですが、その際にやらないといけない事、やった方がいい事がわりと多かったので、スクリプトでまとめてできる様にしました。

    まずやりたい事と、そのために実行するコマンドを解説して、最後にそれらをスクリプトにまとめて簡単に実行できる様にする方法を解説します。今回、スクリプトに慣れてない人もそれなりにわかりそうな感じで書いてみました。

    Macbook を外に持って行く時にやる事

    やる事と、そのために実行するコマンドの一覧です。

    Dropbox, Bitcasa を終了させる

    どうせネット接続が切れるので終了させます。多分電池の節約になります。AppleScriptを使って終了させます。他に終了させたい物がある人は同様に行ってください。

    osascript -e 'tell application "Dropbox" to quit'
    osascript -e 'tell application "Bitcasa" to quit'
    外付けHDDを切り離す(必須)

    いきなりUSBハブを抜くと怒られるので、diskutilコマンドで切り離します。複数代繋いでいる場合、台数分これを実行します。

    diskutil unmount "外付けHDDの名前"
    AirMac = 無線LAN をオフにする

    電池を節約できます。

    networksetup -setairportpower en0 off

    コマンド内の ‘en0’ という部分は AirMac に割り当てられているデバイス名です。ターミナルで networksetup -listallhardwareports を実行するとネットワークデバイスの一覧が表示されますので、 ‘Hardware Port: Wi-Fi’ 等と表示されている項目の ‘Device:’ 欄に表示されるデバイス名に置き換えてください。

    Bluetooth をオフにする

    電池を節約できます。これをやるために、事前に blueutil というソフトをインストールしてください。

    blueutil off

    ※また 無線LAN(AirMac) や Bluetoth をオンにしたまま外出すると、外出先でパソコンを開いた際に、 MACアドレス, 自宅無線LANのSSID, Bluetoothデバイス名 等が無線で発信されます。これを誰かが記録して「勝手に他人の行動履歴を作る」事もできてしまいます。プライバシーを気にする方は、不要な 無線LAN, Bluetooth はオフにしましょう。(Bluetoothに関しては 新しい機器のペアリング時を除き「検出可能にする」をオフに設定する対策 も有効な様です)

    Macbook を自宅に持ち帰ったらやる事

    上記の逆を行います。Dropboxの起動時にはネットワークが繋がっていた方がよい…などあるので、順番も逆にしています。

    Bluetooth をオンにする

    blueutil on

    Bluetoothデバイスを普段使ってない方は常時オフでいいです。

    AirMac = 無線LAN をオンにする

    networksetup -setairportpower en0 on

    en0 の部分は先ほど説明した通りです。

    外付けHDDを接続する

    普通はUSB接続すれば勝手に接続されるので、これは不要なのですが、なんとなく書いてあります。

    diskutil mount "外付けHDDの名前"
    Dropbox, Bitcasa を起動する

    open -a 'Dropbox'
    open -a 'Bitcasa'

    これらのコマンドをスクリプトにまとめる

    上記のコマンドをスクリプトにまとめます。 CotEditor 等で新しいファイルを作って以下の内容を入力後、それぞれ “外出時設定.command” “帰宅時設定.command” という名前でホームフォルダに保存します。

    外出時設定.command

    #!/bin/bash
    
    osascript -e 'tell application "Dropbox" to quit'
    osascript -e 'tell application "Bitcasa" to quit'
    diskutil unmount "Beef"
    diskutil unmount "Pork3"
    networksetup -setairportpower en0 off
    blueutil off
    

    帰宅時設定.command

    #!/bin/bash
    
    blueutil on
    networksetup -setairportpower en0 on
    diskutil mount "Beef"
    diskutil mount "Pork3"
    open -a 'Dropbox'
    open -a 'Bitcasa'
    

    HDDの名前や AirMac のデバイス名は私の物になっているので、各自書き換えてください。 #!/bin/bash という行は必ず1行目になっていないとダメですよ。

    書いたスクリプトを実行できる様にする

    ターミナルを起動して、以下のコマンドを実行すると、先ほど作ったスクリプトファイルをダブルクリックで実行できる様になります。

    chmod a+x 外出時設定.command
    chmod a+x 帰宅時設定.command

    完成した2つのファイルをアクセスしやすい場所に置いて、必要な時にすぐに実行できる様にします。デスクトップに置いてダブルクリックしても、Dockに入れてクリックしても動作します。僕は Dock に入れてある「いろんなアプリケーションのショートカットを入れた、ランチャー風のフォルダ」の中に入れています。



  2. [Mac OS X]ダウンロードして来たファイルの “インターネットからダウンロードされました” 警告を消す

    2011/10/27 by hrk | Mac OS X Tips

    一度に沢山ダウンロードしたファイルをまとめて開く場合、いちいち “インターネットからダウンロードされました” 警告ダイアログが出ると面倒くさいので、これを消します。

    但し、セキュリティを低下させない為にも、警告機能自体は無効にするべきではありません。指定したファイルについてだけ、まとめて警告をでない状態(=「ダウンロードしたファイル」では無い状態)にします。

    Terminal から、以下のコマンドで警告なし状態にできます。

    xattr -d com.apple.quarantine <ファイル指定>

    [詳細]

    “ダウンロードしたファイル” という属性は EA (Extended Attributes, 以下 拡張属性) に設定されていて、これは ls -l@ オプションで確認できます。

    ls -l@ <ファイル指定>
    
    -rw-r--r--@ 1 user  staff  12345678  9 25 03:06 hoge.wmv
            com.apple.quarantine           42

    com.apple.quarantine と表示されているものが、「ダウンロードしたファイル」を示す拡張属性です。
    xattr コマンドは拡張属性を操作するコマンドであり、 -d オプションでこれを削除する事ができます。



  3. アナログレコードから録音したファイルの[ノーマライズ+分割+mp3化+iTunesに追加]スクリプト公開

    2011/04/25 by hrk | Mac OS X Tips, Music, 作った

    アナログレコードから録音したファイルの切り出しを手軽にやりたい問題、コマンドラインツールの Sox 使ってバッチ化すると楽かな… lame 圧縮と iTunes 取り込みまでバッチにできるし…(@hrk 2011-04-20 18:13)

    とつぶやいてたのを作って公開しました↓
    divide-lame-iTunes
    アナログレコードから取り込んだ音源を、ラク〜に分割してmp3化できます。

    特徴

    • レコード, カセットテープ, ライブ録音等のファイルから、 ノーマライズ, 分割, 端点のフェード, mp3圧縮, ID3タグ書込, iTunesへ追加 処理ができます。
    • “分割指定ファイル” に分割位置や曲名等を書いたら、あとはおまかせのバッチ実行。
    • “分割指定ファイル” は Discog のページからトラックリストを貼り付けて、最低限の編集で作成できる様になっています。

    使用方法等はREADMEファイルをご覧下さい。

    動作環境について

    Mac用ですが、ターミナルで、sox, lame, cpanのMP3::Tag とかいろいろ自分でインストールしないといけません。「iTunesに追加」以外の機能はLinuxでも動きます。Windowsの場合も perl, sox, lame, cpanのMP3::Tag をインストールすれば動作しますし、「iTunesに追加」のとこはopenコマンドをstartコマンドとかに書き換えたらいい気がするので、パッチ送って下さい。



  4. 古いクラリスワークス4の書類を変換したい

    2010/02/24 by hrk | Mac OS X Tips

    ※解決できたので末尾に追記してます。

    問題:古い Mac (Performa) で作ったクラリスワークス4書類が70ファイルくらいあり、これらを PDF 等、後々まで閲覧・印刷可能な形に変換したい。(編集はできなくて良い)

    iWork試用版をインストールし、変換を試みる
     ↓
    iWorkで開けるのはAppleWorks書類までで、クラリスワークス4書類は開けない
     ↓
    iBookG3の付属DiskからAppleWorksを発見インストール、クラリスワークス4書類をAppleWorks書類に変換する
     ↓
    変換したAppleWorks書類を再度iWorkで開くが、iWorkは縦書きに未対応のため、変換できない書類がたくさんある
     ↓
    AppleWorksから プリント コマンドで直接PDF化を試みる
     ↓
    AppleWorksが Snow Leopard の用紙設定/プリントダイアログに未対応のため、殆どの書類が印刷(PDF化)できない(白紙になる)
     ↓
    VMWare Fusion に昔の OS をインストールしてPDF化できるのか?
     ↓
    VMWare Fusion は PowerPC のエミュレーションはできないので無理!
     ↓
    実家に帰れば古いOS搭載の古いMacがあるのだが…←イマココ

    Apple製ハード/ソフトで作っちゃった書類のどうしようもなさ/八方塞がり感は異常。 Microsoft Office だと結構古い書類も余裕なのに!

    追記(2011-07-14)

    AppleWorksが Snow Leopard の用紙設定/プリントダイアログに未対応のため、殆どの書類が印刷(PDF化)できない(白紙になる) という問題ですが、AppleWorks 6.2.9 のアップデータを適用する事でプリントダイアログを開く事ができる様になりました。(超基本を見落としてましたね)

    というわけで以下の手順で、 クラリスワークス4 の書類を Snow Leopard 等が入ってる新しめのMacでPDF化する事ができました。

    古いディスクからAppleWorksのインストーラを探し出してインストール
     ↓
    AppleWorks 6.2.9 のアップデータを適用
     ↓
    書類をAppleWorksで開き、 プリント コマンドからPDF化する
     ↓
    ズレたり、変な余白とかができてたら Illustrator で編集する



  5. Macのキーリピートをシステム設定での設定よりも速くする

    2010/02/17 by hrk | Mac OS X Tips

    twitterの「東窪公志やユニクロ」でおなじみの東窪君の真似して、僕はかつて職場の Windows PC のキーリピートを滅茶苦茶速くしていました。カーソルの移動やスクロールが高速化して、楽しく便利なのですね。その時は kbdacc という美しいアイコンがウリのソフトを使っていたのですが、これと同じ事をMacでやるためのソフトが見つからない…

    で、どうやら、Terminalから入力する defaults コマンドである程度(システム環境設定から設定できる以上に)速められるらしいです…

    キーリピートの速さ 現在の設定を表示
    defaults read NSGlobalDomain KeyRepeat
    キーリピート開始までの早さ 現在の設定を表示
    defaults read NSGlobalDomain InitialKeyRepeat

    キーリピートの速さ 1 に設定する(小さい程速い)
    defaults write NSGlobalDomain KeyRepeat -int 1
    キーリピート開始までの早さ 10 に設定する(小さい程早い)
    defaults write NSGlobalDomain InitialKeyRepeat -int 10

    あ、設定後は、一度ログアウトしないと反映されないみたいです。今時…

    とりあえず僕は 0 と 10 に設定してます。
    なんかあんまり 0 と 1 の違いが無い様な気が…



  6. アプリケーション内のウインドウ切替共通ショートカット

    by hrk | Mac OS X Tips

    Mac OS X の使用中、アプリケーション同士は Comannd+Tab で切り替えられるけど、アプリケーション内のウインドウもキーボードで切り替えたい!と思っていたんですが(特にCotEditor使用時)これはアプリケーション側でなくOS側に用意されている機能でした。

    (10.9の場合[更新しました])

    1. システム環境設定 から キーボード > (タブ)ショートカット > (左のリストから)キーボード を選択する
    2. 「次のウインドウを操作対象にする」の欄に、お好みのショートカットを割り当てる
    3. 全Cocoaアプリケーションで、ウインドウの切替が同じショートカットでできる様に!!♡♡しかも、 shiftを押しながらだと逆方向に切替できます(→なので、shiftを含まないショートカットを設定すべし!)

    僕は option+Tab にしました。 Command+Tab と並んでてわかりやすい。
    ちなみにアプリケーションのショートカットとバッティングする場合、アプリケーション側が優先されるみたいでした。

    同じグループの「一番手前または次のウインドウを操作対象にする」はアプリケーションの違いを無視して、全てのアプリケーションウインドウを順番に切り替えられるショートカットです。これも便利!