Skip to content
Snippets Groups Projects
  1. Nov 22, 2014
  2. Nov 21, 2014
  3. Nov 19, 2014
    • Yunchi Luo's avatar
      [vim] Visual mode rewrite · c78d76c8
      Yunchi Luo authored
      I'm rewriting the way that visual mode is written to:
      1. Fix some tricky bugs, like https://github.com/codemirror/CodeMirror/issues/2913, and a couple I uncovered while doing this. (Unit tests updated)
      2. Significantly simplify blockwise visual mode
      
      The core of the changes here is that I'm creating a vim selection model. The selection model consists of
      
      ```
      vim.sel.head
      vim.sel.anchor
      vim.visualMode
      vim.visualLine
      vim.visualBlock
      ```
      
      I'm creating a 2-way binding between the vim and codemirror selection models. All motions now rely only on the vim selection model. Operators and actions still rely on the codemirror selection model, since they operate directly on the text.
      
      Sorry for the gigantic change but I couldn't make it any smaller and still pass all the tests... I'm planning to delete `getSelectedAreaRange`, `getLastSelectedAreaRange`, and `selectBlock` in future changes as they are obsolete now that vim keeps its own selection model.
      
      An added bonus here is that visual line mode now has a cursor that can be moved.
      c78d76c8
  4. Nov 17, 2014
  5. Nov 15, 2014
  6. Nov 12, 2014
  7. Nov 11, 2014
  8. Nov 07, 2014
  9. Nov 06, 2014
  10. Nov 04, 2014
  11. Nov 03, 2014
Loading