vim.api.nvim_create_user_command("PrrGoToLine", function()
  local content = vim.api.nvim_buf_get_lines(0, 0, -1, false)
  local line, column = unpack(vim.api.nvim_win_get_cursor(0))

  local target_file = ""
  local target_line = 0

  for i = 1, line do
    local line_content = content[i]
    local file_match = line_content:match "> diff .* b/(.*)"
    if file_match ~= nil then
      target_file = file_match
    end

    local line_match = line_content:match "+(%d+)"
    if line_match ~= nil then
      target_line = line_match
    elseif line_content:match "> (-).*" == nil then
      target_line = target_line + 1
    end
  end

  vim.cmd("e " .. target_file)
  vim.fn.cursor(target_line - 1, column)
end, { bang = true, desc = "Open the current file at the poin in a prr buffer" })

