ファイルに保存する。(:sav[eas])

早くVimmerになりたい!
ようやく手元に話題の「実践Vim 思考のスピードで編集しよう!」が届きました!

これでVim力をレベルアップをしたいと思います。

この記事は Vim Advent Calendar 2012の278日目の記事です。
277日目は @manga_osyo さんの「Vim で非同期で Clang を使用したコード補完を行う」でした。

今回の記事は至って単純な「ファイルに保存する」についてです。

保存する。(:w[rite])

ググると大体「:w(rite)」しか出てきません。
helpを見るとこんな感じ。

                                                        *:w* *:write*
                                                *E502* *E503* *E504* *E505*
                                                *E512* *E514* *E667* *E796*
:w[rite] [++opt]        バッファ全体をカレントファイルに書き込む。これはファイ
                        ルに対する変更点を保存するときの普通の方法である。
                        オプション 'readonly' がオンであるかファイルに書き込め
                        ない理由が何かあるときには実行に失敗する。

しかし、Vimでは、もう一つあります。
せっかくあるのに、ググっても「:w」しか出てこないと寂しいので、今回紹介します。

保存する。(:sav[eas])

  • help「:h sav」より
                                                        *:sav* *:saveas*
:sav[eas][!] [++opt] {file}
                        カレントファイルをファイル名 {file} として保存し、カレ
                        ントバッファのファイル名を {file} に変える。それまでの
                        カレントファイルの名前はオルタネートファイルの名前にな
                        る。既存のファイルを上書きするには [!] が必要になる。
                        'filetype' が空の場合、保存の前に新しいファイル名に対
                        してファイルタイプ検出が行われる。
                        保存が成功すると 'readonly' がオフになる。
                        {Vi にはない}

どんな場面で使ってるか?

既存ファイルを残しつつ、新規ファイルに保存し、更に編集した場合。

うーん。ちょっと意味が分からないですね。
具体的には、今週の週報「syuhou_20130903.txt」を書かないといけないとします。
先週の週報「syuhou_20130827.txt」があります。
この先週の週報を元に書きなおしたい場合に使ってます。

$> vim syuhou_20130827.txt

Vimmerの方々は、一度Vimを起動すると閉じないと聞いたので、
正確には、

:e syuhou_20130827.txt

ですね。

f:id:kocha2012:20130902233541p:plain

ここで、

:w syuhou_20130903.txt

だと、カレントバッファは「syuhou_20130827.txt」のままです。

f:id:kocha2012:20130902233558p:plain

しかし、

:sav syuhou_20130903.txt

だと、カレントバッファが「syuhou_20130903.txt」になるので、
更なる追記も楽ちんです。

f:id:kocha2012:20130902233614p:plain

とまぁーこんな感じで使ってます。
自分のディレクトリに Vim Girlとの夏の思い出 が無かった・・・
誰かください(T_T)

次回は @manga_osyo さんです。

VAC2012とvim-anzuとvim-airline

VAC2012

VAC(Vim Advent Calender)2012 はまだまだ続いています。
凄いです。Vimmerにクリスマスはなかった。

しかし、Vim Girlがいます。
Vim Girlがいます。(かわいい)

f:id:kocha2012:20130820225646p:plain

毎日素晴らしい記事が投稿されています。
感謝!感謝!

vim-anzu

VAC(Vim Advent Calender)2012 - 261日目
anzu.vim の動作を高速化した。それと Patch 7.3.867 で追加された便利なアレ

なぜかスルーしていた anzu.vim
早速入れてみました。

vim-airline

VAC(Vim Advent Calender)2012 - 263日目
vim-airline に乗り換える5つの理由

私は、vim-powerline (vim-powerlineのほう)を使っていましたが、
この記事で vim-airlineに乗り換えることに決めました。

設定

vim-airline内に vim-anzuの結果を反映させることにしました。

" -------------------------------------------------------------------
" vim-anzu関連 {{{
"
" キーマップ設定
" nmap n <Plug>(anzu-n)
" nmap N <Plug>(anzu-N)
nmap n nzz<Plug>(anzu-update-search-status)
nmap N Nzz<Plug>(anzu-update-search-status)
nmap * <Plug>(anzu-star)
nmap # <Plug>(anzu-sharp)
" ESC2回押しで検索ハイライトを消去
nmap <silent> <ESC><ESC> :<C-u>nohlsearch<CR><Plug>(anzu-clear-search-status)
" format = (該当数/全体数)
let g:anzu_status_format = "(%i/%l)"
"}}}

" -------------------------------------------------------------------
" vim-airline関連 {{{
"
" vim-anzuの表示を statuslineに
let g:airline_section_c = '%F %{anzu#search_status()}'
" whitespace無効
let g:airline#extensions#whitespace#enabled = 0
"}}}

こんな感じです。

f:id:kocha2012:20130820225701p:plain

unite-tig更新(折り畳み表示)

はじめての unite source(unite-tig)

自分のuniteソース処女作なので、Vim魂が高まった時に色々やってます。

  • diff表示部分に fold表示を追加しました。(defaultは展開済です)
    以下の様な画面になります。

f:id:kocha2012:20130816230918p:plain

ショートカットカットキーとして t を割り当てたので、
t で折り畳み表示のON/OFFが可能です。(+folding時)

常に折り畳んだ状態を表示させるには、

let g:unite_tig_default_fold = 1

改善項目(できたらいいな)

どう実装すればいいのかイマイチ分かってない・・・><

  • 折り畳み時の表示形式
  • git grep機能
  • git status機能

ModelSim-Altera Starter Edition 13.0(10.1d)インストール

アルテラ、Quartus II 開発ソフトウェア v13.0 をリリース

ということで、Ubuntu 12.04 LTS(32bit)に ModelSim-ASE 13.0(10.1d)をインストールしました。
※現在だと 13.0sp1(10.1d)が最新です。

ダウンロード

今回よりダウンロードが変わったみたいですね。
私はダウンロード・マネージャーを使ってダウンロードしました。
私は Macですが大丈夫でした。
ファイル名:ModelSimSetup-13.0.0.156.run

インストール

インストール方法も変わりました。

$> ModelSimSetup-13.0.0.156.run

で、GUIが立ち上がりますのであとはポチポチと。

実行

$> make vlib work
vlog sample.sv
Model Technology ModelSim ALTERA vlog 10.1d Compiler 2012.11 Nov 2 2012
-- Compiling module testbench

今回から、リンクを張っていた作業が要らなくなってました!

$> ln -s linux linux_rh60

かなりダウンロード含めて便利になりましたね。

TweetList(3.5.4) で動作が重くなったので、再インストールしたら解消された!!!

モバイル機器で Twitter見る時には、 TweetList(無料版) を使っているのですが、
ついこないだ「3.5.4」というバージョンがリリースされました。

アップデート後に起きた現象

アップデート後の動作として、

  1. TimeLineの表示が異常に遅い(3分程度かかる)
  2. ツイート内のURLを展開しようとすると、落ちる(クラッシュ)する。
  3. リストを表示しようとすると、落ちる(クラッシュ)する。

といった症状が出始めました。
「3.5.3」の頃から落ち始めたことはありましたが、ここまでひどくはなかった。
もう、TweetListからの卒業かと思いました。

使っている端末は以下でした。

アプリを削除し、再インストール

TweetList 3.2.0の頃から削除せず、アップデートのみでした。
そのため、今回初めてアプリを削除したということになります。

再インストール後は、なんと!!!
TimeLineの表示は素早くなり、現時点では落ちることも無くなってます。

今までアップデートで更新していた残骸?が何か影響していた?
ともあれ、私は再インストールしたら解決しました\(^o^)/
これからも愛用していけそうです♪

TweetListについて

まとめにこんなのあります。

私が使っていて良かった点を挙げます。

  • Tweet Marker で他アプリとも同期が取れる
  • リストを見やすい。
  • ギャップの読込が選択出来る(私は「上のギャップ」に設定)
  • WiFi接続をOFFにしても落ちない
    (WiFi接続を切ってそのままにしとくと落ちるアプリがありました。)

とまぁこんな感じです。
.oO(有料版が ¥850になってる(´・ω・`))