Vim7.4をビルドしてみた(20131219追記)
Ubuntu12.04 LTEのソフトウェアマネージャでインストールしたGVimは7.3(201205ビルド)なので、 若干古いのと、2013年8月にVim7.4がリリースされているので、ビルドして見ることにした。 と言っても、以下のサイト様の手順どおり。
http://vim-jp.org/docs/build_linux.html
ハマりどころは一切なく、さっくり起動しました。とりえあず。 以前のGVimは画面のReDrawがとても遅い気がしていて、ISDN時代の画像読み込みの アレみたいな感じだったんだけど(w)、7.4で改善されてる…ような…気がする。
(20131219追記) リモート接続で通信経路が細い場合だと遅くて、VSplitしているとさらに顕著、みたいな 話題があるみたいなんですが、私の場合はGVim+VMWareなんで、どうもそうではなさそうで。 結局スクロール時に描画がもっさりするのは7.4でも直っていない。 他のエディタ(gedit)とかだとそこそこヌルヌル動くのになぁ…。 仕方が無いので、最近はターミナル上からvi使ってます。
Vimでgolangのシンタックスハイライト
ということで、.vimrcには以下のように設定する。To use all the Vim plugins, add these lines to your $HOME/.vimrc. " Some Linux distributions set filetype in /etc/vimrc. " Clear filetype flags before changing runtimepath to force Vim to reload them.
filetype off filetype plugin indent off set runtimepath+=$GOROOT/misc/vim filetype plugin indent on syntax on
Vimの環境構築
Ubuntu12.04での環境構築
最近になってやっとLinuxを開発に使うことが増えてきたので、 環境構築の記録をメモしていこうと思います。
ディストリビューションはDebian7かUbuntu12.04のどちらかにしようと思って、 とりあえずこのページはUbuntuの設定。
Linux初心者ですので、これからちょくちょく変更したり説明が間違ってたり するかもしれませんのでご注意あそばせ。
まずOSを入れたら、必要なツールを入れていきます。 Ubuntuソフトウェアセンターからインストール。
- ブラウザ。chromeみたいなもの。
・mozc
- GUIのSVNクライアント。TortoiseSVNには遠く及ばないが、とりあえず…
・git
・tig
- CUIでgitのログが見れる
- gvim
・byobu
- tmuxの皮。ターミナルのセッション管理とか、マルチウィンドウチックに
・ipython
- 最近goやってるので
・zsh
- すんばらしいシェル。まだ設定を試行錯誤中。
=== これから ===
Vimの環境構築をする
zshの設定をする
Linuxで気持ちいい開発をできるように色々設定していく
text/templateで配列の配列をもつ構造体の配列をもつ構造体を表示したい場合
golangで text/template を使用して文字を出力する場合で 渡すオブジェクトに、オブジェクトの配列(スライス)が含まれていて、 かつそのオブジェクト内にも配列(スライス)が含まれていた場合の表示方法。
文字で書くとわけわかめだがこんなの。
type piyo struct { Array [4][4]int } type hoge struct { piyos [4]piyo }
hoge.piyos[0].Array[0][0] にアクセスする場合の テンプレート側の書き方は、templateにhogeを渡したとして、
{{with index .piyos 0}}{{index .Array 0 0}}{{end}}
です。
HTML出力にtemplateを使用する場合は html/template を使いましょう。
なんというか、言語内は素晴らしく直感的なのに、 なんでこういうところがあまり直感的に見えないフォーマットなんだろう…。
参考