Vimのgrepをhighwayにした

Vimgrepにptを使っていて全く不満はなかったけど気になったので使ってみた。ptより速いらしい。

highway という高速検索ツールを作りました ・ けんごのお屋敷

# .vimrc
set grepprg=hw\ --no-group\ --no-color

体感的に速くなったとわかるし適当にtimeで測っても速かった。凄い。

ただ、シェルで使った時のハイライトがptの方が目立って良さ気な感じ。

Vimプラグイン作った

プラグインというほど大層なものではなく、.vimrcに直接書いてた数行のコードをプラグインとして切り出してみた。下の記事を参考に、GitHubで有名なプラグイン見てみるなどした。

作ったものはこちら

  • vim-remove-trailing-space
    • 行を選択して:RemoveTrailingSpaceを実行すると選択行の各行の末尾の空白文字(タブ、スペース)を削除する
  • vim-wipeout-noncurrent-buffers
    • :WipeoutNoncurrentBuffersを実行するとカレントバッファ以外の全てバッファを削除(:bwipeout!)する

Pythonの開発環境を作った

pyenvをインストール。

git clone https://github.com/yyuu/pyenv.git ~/.pyenv

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

pyenv-virtualenvをインストール。

git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile

.bash_profileを読み込む

source ~/.bash_profile

pyenvでpythonをインストール。

pyenv install 3.4.3

pyenv-virtualenvで独立した環境を作成。

pyenv virtualenv 3.4.3 sample-env

アプリケーションのディテクトリを作成。

mkdir ~/sample-app

アプリケーションで使用する環境を指定。

cd ~/sample-app/
pyenv local sample-env

pipで各種パッケージをインストール。

pip install --upgrade pip
pip install bottle
pip install gunicorn

Hello, world!とか表示しておく。

vim index.py
import bottle

@bottle.route('/')
def index():
    return 'Hello, world!'

# Gunicornを使わない場合
# bottle.run(host='localhost', port=3000)

# Gunicornを使う場合
app = bottle.default_app()

GunicornでWebサーバーを立ち上げる。

gunicorn -b localhost:3000 -w 1 index:app

ついでにApacheでリバースプロキシしとく。

vim /etc/httpd/conf.d/virtual-hosts.conf
NameVirtualHost *:80

<VirtualHost *:80>
    ServerName __default__
    DocumentRoot /var/www/html
    <Location />
        Order allow,deny
        deny from all
    </Location>
</VirtualHost>

# 本当は*じゃなくてサーバーのIPを指定してあげたほうがよさげ

<VirtualHost *:80>
    ServerName sample-app.dev
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</VirtualHost>

ローカルのhostsとかいじってsample-app.devをサーバーに向けてあげればおk

Rictyフォントを生成

RictyGitHubからダウンロード。

git clone https://github.com/yascentur/Ricty.git

Inconsolataを公式サイトからダウンロード。

cd Ricty/
wget http://levien.com/type/myfonts/Inconsolata.otf

Migu 1Mを公式サイトからダウンロード。
OSDNからwgetでダウンロードできないのでSambaRictyフォルダ内に置いた。

オプション(-z: 全角スペースを可視化しない)をつけて生成実行。

./ricty_generator.sh -z Inconsolata.otf migu-1m-regular.ttf migu-1m-bold.ttf

libeventとtmuxのインストール

CentOS 6.4

libeventを公式サイトのDownload–Stable releasesからダウンロード

cd /usr/local/src/
wget https://sourceforge.net/projects/levent/files/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz --no-check-certificate

インストール

tar zxvf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure
make
make install
echo "/usr/local/lib" > /etc/ld.so.conf.d/libevent.conf
ldconfig

tmuxを公式サイトからダウンロード

cd /usr/local/src/
wget http://downloads.sourceforge.net/tmux/tmux-2.0.tar.gz

インストール

tar zxvf tmux-2.0.tar.gz
cd tmux-2.0
./configure
make
make install