 
   override public func mouseDown(with event: NSEvent) {
 //    self.window?.makeFirstResponder(self)
-    self.mouse(event: event, vimName:"LeftMouse")
+    self.mouse(event: event, vimName: "LeftMouse")
   }
 
   override public func mouseUp(with event: NSEvent) {
-    self.mouse(event: event, vimName:"LeftRelease")
+    self.mouse(event: event, vimName: "LeftRelease")
   }
 
   override public func mouseDragged(with event: NSEvent) {
-    self.mouse(event: event, vimName:"LeftDrag")
+    self.mouse(event: event, vimName: "LeftDrag")
   }
 
   override public func scrollWheel(with event: NSEvent) {

        let rowCells = self.grid.cells[row]
        let startIdx = columnRange.lowerBound

        var result = [ RowRun(row: row, range: startIdx...startIdx, attrs: rowCells[startIdx].attrs) ]
        columnRange.forEach { idx in
          if rowCells[idx].attrs == result.last!.attrs {
            let last = result.popLast()!

    let capslock = modifierFlags.contains(.capsLock)
    let shift = modifierFlags.contains(.shift)
    let chars = event.characters!
    let charsIgnoringModifiers = shift || capslock
      ? event.charactersIgnoringModifiers!.lowercased()
      : event.charactersIgnoringModifiers!

    if KeyUtils.isSpecial(key: charsIgnoringModifiers) {
      if let vimModifiers = self.vimModifierFlags(modifierFlags) {
