読者です 読者をやめる 読者になる 読者になる

commandline.input の挙動

commandline.input が Vim の input と違って、キャンセルしたときにも実行されてしまうようになっていたのを修正した。
http://vimperator.org/trac/gitweb/?p=liberator.git;a=commit;h=f09dc06283bef36e99e315b57acd16879c036410
また、キャンセル時にもコールバックできる様にしておいた。

キャンセル時のコールバックを含む、commandline.input の利用方法は以下のような感じ。

commandline.input(
  'caption',
  function (value) {
    alert('onSubmit: ' + value);
  },
  {
    completer: function (context) {
      context.title = ['value', 'description'];
      context.completions = [
        ['v1', 'c1'],
        /* ... */
      ];
    },
    onChange: function (value) {
      liberator.log('onChange: ' + value);
    },
    onCancel: function (value) {
      alert('onCancel: ' + value);
    },
    default: 'default value',
    promptHighlight: 'Question'
  }
);

もしかしたら、onCancel のプロパティ名とかは変わるかもしれんけど。とりあえず。

promptHighlight

追加

エンバグ

この修正の影響で hints にバグが誕生したので修正
http://vimperator.org/trac/gitweb/?p=liberator.git;a=commit;h=fcdfd5cc7da5f62499e1ac39b2815c721db8bee0
hints は commandline.input をちょっと変な使い方してるな。