mabulog

このブログは、mabuの平凡な日常を淡々と描く物です。 過度な期待はしないでください。 あと、部屋は明るくして、 モニターから3メートルは離れて見やがってください。

homebrew の Apache 自動起動設定

背景 Background

以前『 Installed Apache@MacOSX』の記事でhomebrewでApacheをインストールしましたが、
Apache自動起動せず、デフォルトの Apache が起動しました。
デフォルトの Apache自動起動を停止させ、 homebrew の Apache自動起動させた際の備忘録を残します。

手順 Operation

デフォルトの Apache 自動起動停止

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

homebrew でインストールした Apache 自動起動設定

sudo chown root:wheel /usr/local/opt/httpd/homebrew.mxcl.httpd.plist
sudo ln -s /usr/local/opt/httpd/homebrew.mxcl.httpd.plist /System/Library/LaunchDaemons/homebrew.mxcl.httpd.plist
sudo launchctl load -w /System/Library/LaunchDaemons/homebrew.mxcl.httpd.plist

この段階で Apache自動起動しない場合には plist の起動コマンド部分を書き換えます。

homebrew.mxcl.httpd.plist 設定例

参考サイト Reference

vim-qfstatusline を作ってみた

背景 Background

前回『vim-qfsigns を作った』でSyntaxエラー箇所にsignでマーキングさせました。
今回はステータスバーにSyntaxエラー状況を表示させます。
私はid:itchynyさん作のlightline.vimを使用しているのですが、
syntasticでSyntaxチェックを行いエラーの場合にはステータスバーにエラーの発生している行数を出力できる事を最近知りました。
綺麗で見やすいため、vim-watchdogsにも同様の機能を提供したいと思います。

syntasticlightline.vimを使用している方は下記記事並びにlightline.vimのREADME.mdに一度目を通した方が良いかと思います。

手順 Operation

plugin概要 plugin summary

  • shabadou.vim

    前回同様にid:osyo-mangaさんの作成したpluginをfolkし、新規に作成したpluginを起動できるように設定をちょこっと修正しました。
    (2014/06/15:追記)本体に取り込まれました。

  • vim-qfstatusline

    新規に作成したpluginです。
    現状の仕様としてはvim-quickrunをトリガーにvim-qfstatuslineがステタースバー側で用意している関数を実行し、
    ステータスバー側から再度vim-qfstatuslineの関数を実効し文字列を取得する形にしました。
    これはsyntasticlightline.vimの連携方法を意識して、vim-qfstatuslineを組み込んでもlightline.vimに影響しないよう考慮したためです。

vimrc設定 vimrc setting

vim-qfstatusline 設定例

感想 Impressions

Syntaxエラーを見やすくする事はこの2つのpluginで実現できました。
まだ、ドキュメントと動作に納得いっていない部分があるため、これから徐々に作成したいと思います。
(2014/06/15:追記)
ドキュメントも作成したので多くの人に利用して頂ける事を切に願います。

Norton AntiVirus エラー対応@Mac

定期的にエラーが発生するため、対処方法を備忘録として残します。
チャットでサポートに問い合わせた所、再インストールして下さいと指示されました(2回中2回)。
定期的にエラーが発生するという事は解決していないという事でしょう。
定期的にAntiVirusが無効になるAntiVirusソフトはAntiVirusソフトとしての役割を果たしているのかははなはだ疑問が残ります。

なお、以下の作業を行う場合には自己責任でお願いします。

メモ memo

Norton AntiVirus for Mac のアンインストール

cd /tmp
wget ftp://ftp.symantec.com/misc/tools/mactools/RemoveSymantecMacFiles.zip
unzip RemoveSymantecMacFiles.zip
RemoveSymantecMacFiles/RemoveSymantecMacFiles.command

再起動後、ゴミファイルを検索し除去します。

sudo find / -name '*symantec*'
sudo find /private -name '*symantec*' -exec rm -rf {} \;

必要なファイルが含まれている、消さなくても問題無い、わからない場合にはファイルの削除を実行しない事をオススメします。

Norton AntiVirus for Mac をインストール

最新版のAntiVirus for Macをダウンロードします。

cd /tmp
wget http://www.norton.com/latestnavmac
wget `cat latestnavmac|grep dmg -m 1|awk '{print $4}'|sed 's/?OpenDocument&src=latestnavmac">//g'|sed 's/URL=//g'|tr -d '\r\n'`
hdiutil mount NortonAntiVirus.EnglishESD.dmg
open -a /Volumes/Norton\ AntiVirus\ CD/Norton\ AntiVirus\ Installer.app

その他のアプリをご利用の方はアカウントに登録されていないノートン製品をダウンロードする方法でダウンロード出来ます。

プロダクトキーは以下のページで参照できます。

感想 Impressions

AndroidWindowsではNortonでこのようなケースはなかったような気がすので、
私のMacが無効になる条件を満たしていて定期的に無効化させてしまっているでしょうね。

vim-qfsigns を作った

背景 Background

先週行われた第100回 vimrc読書会vim-watchdogsというpluginの存在を知りました。
(ROM専だったため、ひっそり読んでた模様。)
vimproc.vimvim-quickrunを利用し非同期にsyntaxチェックを行えます。
また、拡張性が保たれているため、defaultセットにない言語でも柔軟に変更がきく
優れたpluginです。(たとえば、swiftなんかも理屈的には対応可能なはず、
switf側でsyntaxチェックの機能提供が必要ですが...。)
もともとsyntasticを利用していたのですが、思想的にvim-watchdogsが良さ気なので、
乗り換えました。syntasticは手軽にインストールする分には申し分ないので、
気分で好きな方を使えば良いかと思います。
使っていて感じた事は、highlightよりもsignの方がジャンプ出来たり、番号の横にエラーマーク表示してくれたり便利なので、signを表示するようにしようと思い調査したところ、 quickfixsigns_vimが使えそうだ...が、
使い方が分からない。ドキュメント読んでもよく分からない。
わからないなら、作ればよいという事で作る事にしました。

手順 Operation

vim-watchdogsのインストール自体は
作者であるid:osyo-mangaさんのサイトが大変参考になりました。

新たにpluginを追加する方法として以下で対応できそうな事がわかりました。

かなりわかりやすい(かなり)

plugin概要 plugin summary

vimrc設定 vimrc setting

vim-qfsigns 設定例

感想 Impressions

知らない事が多く、マナーの悪い作法をしている可能性があります。
優しいVimmerはpluginを見て頂いて何行目の何処が悪いかおっしゃって頂けると、
初心者のわたし的には助かります。
(2014/06/15:追記)
hookロジックをpluginに最初から実装する事でplugin間の依存度が減るので、次からはhookロジックもplugin内に実装するように視野を広めて開発したいと思います。
メモ:Pull Request issues

vim-refで複数ファイルタイプを扱う方法

お知らせ Infomation

vim-ref以外にもtaglist等、複数ファイルタイプに対応していないpluginが多数存在して、
開発に影響が出てしまったので、御蔵行きにしました。
ただ、考え方的には複数ファイルタイプは間違っていないため、
少しづつ解決して行きたいと思います。

続きを読む

Installed Wireshark

背景 Background

LingrAPIのレスポンス情報を確認したく、Windowsでもお馴染みのWiresharkをインストールします。
...と思ったら、インストール中暇だったので、本当にドキュメントないか調べた所GoogleDocにありました。

目標 Goal

環境 Environment

手順 Operation

  • インストール
brew search wireshark
brew info wireshark
brew info glib
brew info gnutls
brew info libtasn1
brew info nettle
brew info guile
brew info libtool
brew info libunistring
brew info p11-kit
brew info libgcrypt
brew info libgpg-error
brew info geoip
brew info automake
brew info geoipupdate
brew info c-ares
brew info qt
brew info d-bus
brew info mysql
brew info cmake
brew info gtk+
brew info glib
brew info gdk-pixbuf
brew info pango
brew info atk
brew info cairo
brew info gobject-introspection
brew info jasper
brew info harfbuzz
brew info icu4c
 
brew install geoip --with-geoipupdate
brew install gnutls --with-guile --with-p11-kit
brew install mysql --enable-memcached
brew install qt --developer --with-d-bus --with-mysql --with-qt3support
brew install gtk+ --with-jasper
brew install wireshark --with-c-ares --with-gtk+ --with-headers --with-lua --with-pcre --with-qt --without-geoip
  • 起動確認
$ which wireshark
/usr/local/bin/wireshark
$ /usr/local/bin/wireshark

LimeChat + Lingr で快適チャットの実現

目標 Goal

環境 Environment

手順 Operation

  • LimeChatをインストールします

  • LimeChatにアクセスするためのGatewayサーバの準備

    ざっくり調べた限りでは、Ruby, Perl, Goが有名かと思われます。
    私はRubyVimのPluginであるNeoBundele管理下におく形にしました。
    ソース管理上ではNeoBundleFetchとしてありますが、
    初回ダウンロード時には":NeoBundele"でインストールする必要があります。

LimeChat at .vimrc

  • GatewayLimeChat連携

    Gatewayサーバを起動した後にLimeChatを起動するのは手間なため、
    1回のコマンドで完結するように以下のようなaliasを設定しました。
    Gateweyサーバは誤って実行を停止する事がないように
    killコマンドで停止する仕様としました。
    (追記 2014/09/28)
    私のaliasの設定がGrowlに対応しました。
    下の例ではVim部屋のログがGrowlで拾われるようになります。

alias LINGR="open -a LimeChat;nohup ruby $HOME/.vim/bundle/lingr-irc/lig.rb > /dev/null 2>&1 & tail -F /temp/#vim/`date +%Y-%m-%d`_Lingr.txt|perl -e 'system \"growlnotify\", \"-m\",  \$_ while(<STDIN>);' &"
  • LimeChatの設定

    Server > Add Server...を押下し、各GitHubに記載されていた情報を打ち込んでいきます。

f:id:kazuomabuo:20140510205849p:plain

f:id:kazuomabuo:20140510210059p:plain

LimeChat > Preferences... > Logを押下し、ログ出力先を指定します。私は、/tempとしてあります。

f:id:kazuomabuo:20140928083657p:plain

感想 impression

ブラウザでLingrのタブをキープしないといけない問題からは開放されるのが良い感じ。
まだ使いこなせていませんが、Growlとも連携出来るようなのでカスタマイズしていきますかね。
(追記 2014/09/28)
Growlに対応しました。残りはアイコン表示のみ。