gvimの表示がおかしいのを直した
tl;dr
vmwareで動かしているlinuxで、gvim利用中ctrl-l(再描画)をしたときに一部表示されないままになることがある。
これはXのビデオドライバの問題で、パッチを当てたドライバを使うと治る。
発端
gvimで編集中、ctrl-lで再描画するとなぜか一部表示されない。
いまいち再現率も微妙で、気持ち悪いまま使っていたが、重い腰を上げて調べ始めた。
すると、対象はemacsだったが似たような事象をまとめているページが見つかった。
Emacs redraw issue in X.org on VMWare and VirtualBox
同一の問題かどうかはXのログに以下の内容が出力されるかどうかで判断できる。
vmwgfx_scanout_update: failed to send dirty (-22, Invalid argument)
画面の表示がおかしくなった瞬間にこのログが1行出るので判断しやすかった。
手元の環境も該当しているようだ。
emacsであれば設定変更等で回避する方法もあるようだが、gvimで相当する操作がわからなかった。
ドライバの問題とのことでパッチを当てれば直るらしい。
これで直るならと試してみることにした。
ドライバの再ビルド
パッチをダウンロードし当てたソースツリーをビルド。
インストールしてからXの再起動をすると見事問題は消え去った。
とりあえず今はこれで満足したが、ちゃんとパッチを当てたドライバのパッケージを作っておきたい。
というか上流ではやくサポートしてくれないかな、まだacceptされていないようだ。
もう少し待っても対応されないようであれば自分用パッケージを作ろうと思う。
kanbanツール探し
先日から気になってきたkanban系ツールを改めて調べてみた。
結論から言うとgithub projectが最も便利ではないかと思っている。
使ってみたのは以下。
- wekan
- mongoとwekanコンテナをdockerで動かせば試せる
- いい具合だが開発停滞か?
- trello
- atlassianによる買収で今後が不明
- taiga.io
- 公式でdockerサポートがない
- 有志による対応はあるが、front/back/dbの3コンテナ必要なのでちょっと面倒
ざっとこんな感じで、結局自分がやりたいことはkanbanなので、
githubの1プロジェクト内にtodo/doing/doneを用意して足りるような気がしている。
しばらくはgithub projectを試して満足できないようであればまた色々試してみようと思う。
vimでabbreviateと反映までの1秒
abbreviateを利用しはじめてみて、入力後escを押すが展開されるまで1秒ほど時間がかかるので設定を変えた。
set ttimeoutlen=0
で解消した。
似た設定にtimeoutlen
があるが、これではなくttieoutlen
を変更する必要がある。
timeoutlen
の場合コマンドモードで複数キー入力受付の時間が短くなってしまうので使い物にならなくなるので注意。
TrelloとWekan
Trelloがatlassianに買われたとのこと。
Atlassian + Trello: changing the way teams work | Atlassian Blogs
今後はどうなるんだろうか。。。
TrelloクローンのWekanも一部使ってみていたが、こちらも最近リリースが停滞しているように見える。
Github projectで似たような機能が実装されているのでこの辺りの熱が冷めているのかなとも思った。
こういうツールはたまに入れ替えて試してみたいので、次の世代で流行りそうなプロジェクト管理ツールを知りたい。
アクセス傾向
ちょっとブログのアクセスについて現状確認してみた。
アクセスは土日と平日で大きな差があり、
平日のほうが土日よりも3倍ぐらい多い。
時間帯も日中のほうが多いので、仕事中に調べ物をしてアクセスするようなパターンが多いのかな。
これまで、書く側の適当な想像としては、
技術に興味がある人が自分の時間で参照するようなパターンを考えていたが、実際はだいぶ違うのかもしれない。
(根拠もない勝手な妄想なので当たるわけもないか。。)
他の技術系ブログがどういった感じなのか少し気になるな。
pcregrep
grepコマンドは正規表現が使えるが、LLでいつも使うようなメタ文字は使えない。
(例えば\d
とか)
pcregrepはpcreのgrepなので、いつも通りの正規表現が使えると教えてもらった。
$ echo 123 | grep '\d' # 何も出力されず、マッチしない $ echo 123 | grep '[0-9]' # ノーマルgrepはこう書く必要がある $ echo 123 | pcregrep '\d' # pcregrepはこれが書ける! 123
知らなかった、オプションもgrepと同じようにサポートしているのでこれは捗る。
2017-02-06 追記:
コメント頂いたので改めて整理しました。