日々精進

新しく学んだことを書き留めていきます

Mac

asciidoc editorはAtomが良さそう

mac

asciidocを書くことになったのでeditorを探し中。 http://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ を見たところAtomがメジャーっぽい雰囲気だったので、Atomを採用。 AsciiDoc Preview packageとAsciiDoc packageを入れるとasciidoc edit…

kaleidoscopeをGitTowerやSourceTreeなどから呼び出せない

mac

普段GitTower使ってるんだけど、Diff toolにKaleidoscopeを指定してDiffボタンをクリックしてもKaleidoscopeが起動せず困った。 原因はKaleidoscopeと他のアプリを連携させるにはCommand Line Toolをインストールする必要があるがそれをしていなかったことだ…

macのfinderで隠しファイルを表示する方法

mac

ターミナルで以下を実行すると表示出来る。 defaults write com.apple.finder AppleShowAllFiles -boolean true killall Finder 参考: Macの隠しファイルや隠しフォルダを表示する裏技 / Inforati

Magic Mouseの接続が頻繁に切れる問題を解決する

mac

ちょっとした衝撃でもMagic Mouseの接続が切れるので困っていたが、 以下の対策で直った。 ちょっと厚めの紙を二つ折りにして電池ボックスの電池と電池の間に挟む。 電池ボックスのフタを若干曲げてフタが電池を押さえつけるようにする(この表現で伝わるだ…

finderで表示中のフォルダをターミナルで開くcd toが便利

mac

なかなか便利。 jbtule/cdto インストールは基本上記サイトに書いてある通りでOKだが、.appが複数あるので注意。 iTermを使っている場合はitermフォルダにあるやつを使えばOK。

ファイルを一括リネームするアプリ(Shupapan)が良かった

mac

かなり多機能で、ファイルリネームならこれだけでやりたいことはできそう。 WindowsはFlexible Renamerが良かったけど、Macにもいいリネームアプリがあって有り難いです。 http://sunsky3s.s41.xrea.com/shupapan/index.html

wordをmarkdownに変換する

mac

macなら以下を実行すれば変換出来る。 brew install pandoc textutil -convert html file.doc -stdout | pandoc -f html -t markdown -o file.md 変換結果はかなり崩れていてだめだった。。手で書くしかないか。 参考: Quickly Convert (.rtf|.doc) Files t…

mac(mavericks)にmavenをinstallする

mac

mavericksからはmavenが標準でインストールされなくなったので自分でインストールする。 brew install mavenでインストールできるかと思ったら、できなかった。なぜに。。 インストール手順は以下。 http://maven.apache.org/download.cgi からバイナリをダ…

Yosemiteでbrew updateを実行すると、bad interpreterエラー

mac

Yosemiteでbrew updateを実行すると以下のエラーが出た。 /usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory /usr/local/bin/brew: lin…

ディスクユーティリティの復元を使ってブートドライブをコピーしたドライブから起動出来ない

mac

SSDを換装しようと思い、下記記事の手順でSSDのデータ移行を行ったが起動できなかった。 MacBook Proの内蔵HDDを最新SSDに交換する・リターンズ(2014年春版) (1) ちょっと古いMacBook ProでMavericksを快適に使う しょうがないのでcarbon copy clonerを使っ…

SSD交換しました

mac

MacBookPro2012のSSDを下記製品に交換。 速くて快適です。crucialはいいメーカーだなぁ。 Crucial MX100 2.5インチ内蔵型SSD 256GB SATAIII CT256MX100SSD1出版社/メーカー: Crucial Technology発売日: 2014/06/05メディア: Personal Computersこの商品を含…

brew installを実行すると「Non-HTTP proxy URI」エラー

mac

原因は環境変数のhttps_proxyをhttps://proxynameのように設定していたこと。 httpsの部分をhttpにし、all_proxyにhttp_proxyと同じ値を設定したら直った。 https_proxyなんだから、普通はhttps〜とするべきだと思うが。。 参考: プロキシ環境下でのHomebre…

SSHを通さないProxy環境にあるMacからEC2などの外部サーバにSSHでログインする

Mac

EC2に443ポート経由でログインする場合は以下のようにする。 ・Macで以下を行う ・corkscrewをインストール brew install corkscrew ・~/.ssh/configに以下のようにHostを追加 Host hostname User ec2-user Port 443 Hostname <hostaddress> IdentityFile ~/.ssh/private_</hostaddress>…

英辞郎第八版買いました

mac

今までWeblioを使っていたけど、 オフラインで引ける辞書がほしくて英辞郎第八版買いました。 メリットは以下。 ・Alfredで辞書が引けるようになる ・レスポンスが速い 不満なところは以下。 ・Alfredのリスト表示では日本語訳などがちょっとしか見えない。…

macでsed -rを実行すると「sed: illegal option -- r」

mac

Macだとsed -rはsed -Eにしないといけないらしい。 仕様合わせてほしいなぁ。 参考:Flashes of Panic: sed: illegal option -- r

Macアプリの設定やDBが保存されるパス

mac

以下のパスの下に.sqliteなどができる。 /Users/<usename>/Library/Containers/<bundle identifier></bundle></usename>

NSWindowを閉じようとしたら、確認のアラートを出す方法

mac

手順は以下。NSWindowControllerのサブクラスを作ってそこに実装する ・Window閉じていいよフラグのプロパティを追加する ・self.window.delegate = self;しておく ・windowShouldCloseメソッドの中で、Window閉じていいよフラグがYESならYESを返す。そうで…

NSWindowをtexturedにすると動作がおかしい

mac

具体的には、以下のような挙動になる。 ・ウィンドウのグラデーションが濃すぎる ・タイトルバーを表示出来ない どうもNSWindowにNSTextFieldを配置していると起きるっぽい。 解決策はNSWindowのcontent borderをNoneにすること。 これである程度改善される…

Macのdockアイコンの表示・非表示をruntimeに切り替える

mac

以下でできる。 ・PlistのLSUIElementをYESにする。 ・下記コードを実行するとDockアイコンが表示される。kProcessTransformToForegroundApplicationをBackgroundに変えれば非表示になる。 if (![[NSUserDefaults standardUserDefaults] boolForKey:@"Launch…

NSWindowの表示・非表示イベント

mac

表示イベントはNSWindowControllerの-(void)showWindow:(id)sender 非表示イベントはNSWindowDelegateの-(void)windowWillClose 名前が対称になってないし、メソッドが定義されているTypeが違うのが気になる。 参考:cocoa - How can I track opening and cl…

OSXで「Assertion failure in -[NSTextFieldCell _objectValue:forString:errorDescription:]」エラーが出てアプリが落ちる

mac

NSTextFieldのstringValueにnilを代入していることが原因。 UILabelはnil入れても大丈夫なのにな。。

おすすめMacアプリ

mac

下記記事を見ていくつかMacアプリを新しくインストールした。 新たに殿堂入りすべきだと思うアプリ10選 - Macの手書き説明書 ・nvALT+SimpleNote SimpleNoteというサービスは初めて知ったけどメモを複数端末で共有したいだけなら良さそう。 Evernoteは職場か…

OSXアプリのTab順を設定する

mac

IBでViewを右クリックし、nextKeyViewのOutletを次のTab順のViewに繋げればいい。 参考:cocoa - Tab Order in interface builder? - Stack Overflow

CoreAudioで音楽を鳴らす

mac

意外と簡単にできた。以下のようにAVAudioPlayerを使えばよい。mp3も再生できる。 NSString* path = [[NSBundle mainBundle] pathForResource:@"sound" ofType:@"mp3"]; NSURL* file = [NSURL URLWithString:path]; self.audioPlayer = [[AVAudioPlayer allo…

NSTableViewのセルクリックイベント

mac

セルクリックイベントを捕まえるだけで苦労するのがOSX。修羅の国や。。 以下のNSTableViewDelegateメソッドがクリックイベントの代わりに使えるよという情報があったが、このメソッドは名前の通り選択可能かどうかを返すメソッドなので、すでにselect状態に…

macでmenuを使わずにコピー・ペーストなどのコマンドを実装する

mac

普通はMenuを使ってコピー・ペーストなどのコマンドを実装するが、メニューバーアプリなどでMenuが使えない場合は以下のようにする。 ・NSApplicationのサブクラス(MyApplicationクラスとする)を作る ・PlistのPrincipal classに「MyApplication」を設定 …

NSTableViewのHeader Viewを非表示にする

mac

IB上でTable Header Viewをhiddenにすることはできるが、そうすると Header Viewがあったところに隙間ができてしまう。 これを詰めるには、以下を実行すればよい。 [tableView setHeaderView:nil]; 参考:objective c - Hiding NSTableView header? - Stack …

NSPopoverが表示されない

mac

原因は、showRelativeToRect:に渡すデータが間違っていたこと。 view.boundsを渡さないといけないが、view.frameを渡してしまっていた。 bounds渡すAPIって珍しいから間違えた。。

NSTextFieldでReturn等のkeyDownイベントを検知する

mac

まずdelegateを設定する。 self.inputTextField.delegate = self; 以下のように、delegateメソッドを実装すると、Returnを押した時のイベントを検知出来る。 - (BOOL)control:(NSControl *)control textView:(NSTextView *)textView doCommandBySelector:(SE…

NSTextFieldにフォーカスを当てる

mac

NSViewのサブクラスを作り、そこで以下を実行してもNSTextFieldにフォーカスが当たらず困った。 [self.window makeFirstResponder:self.inputTextField]; // テキスト入力欄にフォーカスを当てる原因はself.windowがnilであること。 Viewのオブジェクトを作…

Macでsandbox内からシステム環境設定画面を開く

mac

システム環境設定画面を開くのには特別な権限はいらないっぽい。 以下のようにすると、システム環境設定の一段下の階層の画面を開ける。 NSURL * url = [NSURL fileURLWithPath:@"/System/Library/PreferencePanes/Speech.prefPane"]; [[NSWorkspace sharedW…

macでphantomjsを実行すると、「CoreText performance note・・・」というメッセージが大量に出る

mac

phantomjsのバージョンを上げると直った。1.9.0→1.9.7にした。コマンドは以下。 brew upgrade phantomjs参考:CoreText Issue on OS X Mavericks. For best performance, only use PostScript names when calling CTFontCreateWithName() · Issue #11418 · a…

menuFOREXをMac App Storeにリリースしました(現在ファイナンス無料カテゴリ4位)

mac

menuFOREXリリースしました。 メニューバーに常駐し、為替レートを表示するアプリです。 ファイナンス無料カテゴリ4位となかなかいい位置につけてます。 良ければダウンロードよろしくお願いいたします。 公式サイト:YENGEE.COM • menuFOREX is Mac app for…

macでwifiのパスワードを確認する方法

mac

キーチェーンに保存されているのを表示すればいい。詳細は下記サイト参照。 Macで一度入力した無線LAN(ネットワーク)のパスワードを表示させる方法

iMacをターゲットディスクモードにしてもデスクトップにHDDのアイコンが出ない

mac

状況は以下。 ・起動しなくなったiMac 2011 Midをターゲットディスクモードにし、データを取り出したい ・データはiMac 2013 Lateで受け取る ・はまったところ ・iMac 2013 LateにはFirewireポートが無い FirewireケーブルにFirewire・Thunderbolt変換コネク…

macのデフォルトのシェルをzshに変更する

mac

iTermでchshを実行してシェルを変更すると、「chsh: no changes made」といわれて変更できなかった。 正しくはシステム環境設定から変更するらしい。手順は以下のサイトに詳しく書いてあった。ありがたやー 参考:lion - Change default shell from bash to …

brew install goを実行すると「Error: Permission denied - /Library/Caches/Homebrew/Formula/go.brewing」

mac

/Library/Caches/Homebrew/の所有者がログインしているユーザでないことが原因。 以下のコマンドを実行すると直る。 sudo chown -R <username> /Library/Caches/Homebrew/</username>

brew install goを実行すると「Error: Cannot write to /usr/local/Cellar」

mac

/usr/localの所有者がログインしているユーザでないことが原因。 以下のコマンドを実行すると直る。 sudo chown -R <username> /usr/local参考:homebrew環境の構築。パッケージ管理ナシ環境はもう限界 - aremokoremo</username>

macでfontdプロセスのCPU使用率が高い問題

mac

fontdプロセスのCPU使用率が高くてmac全体が重くなっていた。 原因はflash player。 システム環境設定>Flash Player>高度な設定>すべて削除...>データを削除 をクリックし、Macを再起動すると直る。 参考:The cpu usage for the "fontd" process was at…

AlfredでJIRAを検索する

mac

preferences>features>web search>search>Add Custom Searchから以下をSearch URLに登録するとAlfredでJIRAを検索できる。 https://jira.atlassian.com/secure/QuickSearch.jspa?searchString={query}JIRAのドメインは適宜変更すること。 Alfredもっと便利に…

macでKeychainからパスワード等を読み出す時に必ずパスワードを聞かれる問題

mac

下記日記の対応を行ったが、やっぱり直らなかった。 2014-05-25 - 日々精進 以下の記事を参考にキーチェーンをリセットしてみた。これで様子を見てみる。 参考:Mac OS X でキーチェーンをリセットする

macでアプリを起動しようとすると、「[インストーラ名]は壊れているため開けません。」エラー

mac

恐らく原因はmac developer programに参加しているコードサインで署名していないアプリを起動しようとしたが、起動出来ないセキュリティ設定になっているため。 以下手順でセキュリティ設定を変更すると実行出来るようになる。 1.Appleメニューから「システ…

macでKeychainからパスワード等を読み出す時に必ずパスワードを聞かれる問題

mac

「ssh-agentがキーチェーン ローカル項目 を使おうとしています」 のようなメッセージが何度も出て困った。 パスワードを保存するにチェックをつけてもだめ。 これは以下の手順で解決出来る。 ・「~/ライブラリ/Keychains/」に移動して ・「A8F5E7B8-CEC1-44…

macのapacheのpublicフォルダのパス

mac

macのapacheのpublicフォルダのパスは以下。 /Library/WebServer/Documents/この下にWebアプリのHTMLを置いたフォルダへのシンボリックリンクを張るとWebアプリの動作確認が楽。

Macアプリをプログラムから再起動する方法

mac

シェルスクリプトを実行して自プロセスをKillしてOpenすればよい。 NSString *killArg1AndOpenArg2Script = @"kill -9 $1 \n open \"$2\""; NSString *ourPID = [NSString stringWithFormat:@"%d", [[NSProcessInfo processInfo] processIdentifier]]; NSStr…

再帰的に文字列を検索・置換するコマンド

mac

再帰的に文字列を検索するコマンド find . -name <filename> -print0 | xargs -0 grep <query> /dev/null再帰的に文字列を置換するコマンド find . -name <filename> -exec sed -i "" 's/<source string>/<replace string>/g' {} \;Macの場合はsed -iの後に""がいる。 参考:Mac OS X のローカルで sed が実行されないケ</replace></source></filename></query></filename>…

macからubuntu14.04LTSにVNC接続する

情報が錯綜していて意外と時間がかかってしまった。 色々と試行錯誤したので下記手順だけでは接続出来るようにならないかも。 ・ターミナルでvino-preferencesを実行する デスクトップ共有の設定ウィンドウが開く ・以下のように設定する ・もしかしたら暗号…

Macアプリをビルドしたら「framework not found SenTestingKit」エラー

mac

エラーメッセージの通り、SenTestingKit frameworkをLink出来ないことが原因。 Build PhasesのLink Binary With LibraryからSenTestingKitを削除すれば直る。 SenTestingKitをLinkするのはTest用Targetのみでよい。 参考:SenTestingKit.frameworkを追加した…

Macアプリをビルドしたら「code object is not signed at all」エラー

mac

XCode4で開発していて、XCode5にバージョンアップすると起きるらしい。 XCodeのバージョンアップにより原因はcode signの仕方が変わったこと。 build settingsのcode signing flagsに--deepを設定すると直る。 参考:osx - Codesign of Dropbox API fails in…

Time Capsuleにアクセス出来なくなった

mac

Finderでアクセスしようとしても、以下のメッセージが出てアクセス出来ない。 「サーバ“○○”への接続で問題が起きました。サーバが存在しないか、現在利用できません。 サーバの名前またはIPアドレス、およびネットワーク接続を確認してから、やり直して下さ…