日々精進

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

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のオブジェクトを作…