40歳からのキャリアチェンジ

20代はエンジニア・PM、30代はWeb系エンジニア向けのキャリアアドバイザー。40代の今はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連あたり

:help text-objectを見ながら勉強。

Vimの魅力にだんだんハマってきたかもというエントリに引き続きvimの勉強を。

:help text-objectを引いて他にどんなものがあるのかを確認したのですが、素朴な疑問で、iwとかasとした場合のwはwordの省略形だから覚え易いけど、そもそも"i"とか"a"って何の略なんだろうかと思っていたら、
aw: a word
iw: inner word
とのことで、iがinnerの略っていうのはわかったけど、もう1つのa wordと、不定冠詞(っていうんだっけ?)のaのような感じで、なんかわかったようなわからないようなちょっと腑に落ちない感じで、英語圏の人からすると別に違和感なくしっくりくるんだろうなぁ。

まぁそんなことはどうでも良く、例えばこんな感じのjavascriptのソースがあった場合に、{}単位で選択する場合には、カーソル位置が{}の中にあってノーマルモードの状態だったらva}という感じでコマンドを入力すると、意図した通りに選択出来ました。

Euclid = function(a, b){
  this.value1 = a;
  this.value2 = b;
};
Euclid.prototype = {
  do: function(){
    var a = this.value1;
    var b = this.value2;
    while(a!=b){
      if (a > b) {
	a = a-b;
      } else {
	b = b-a;
      }
    }
  return a;
  },
  do_calc: function(){
    var a = this.value1;
    var b = this.value2;
    var c = null;
    do {
      c = a % b;
      a = b;
      b = c;
    } while(c != 0);
    return a;
  }
};

もしも、{}を含めない形であれば、vi}とすればOKみたい。