code: func (v *View) realPosition(vx, vy int) (x, y int, err error) {
  	vx = v.ox + vx
  	vy = v.oy + vy
  
  	if vx < 0 || vy < 0 {
  		return 0, 0, errors.New("invalid point")
  	}
  
  	if len(v.viewLines) == 0 {
  		return vx, vy, nil
  	}
  
  	if vy < len(v.viewLines) {
  		vline := v.viewLines[vy]
  		x = vline.linesX + vx
  		y = vline.linesY
  	} else {
  		vline := v.viewLines[len(v.viewLines)-1]
  		x = vx
  		y = vline.linesY + vy - len(v.viewLines) + 1
  	}
  
  	return x, y, nil
  }
docs: // realPosition returns the position in the internal buffer corresponding to the
  // point (x, y) of the view.