return {
  "junegunn/fzf.vim",
  dependencies = {
    "junegunn/fzf",
  },
  config = function () 
    local g = vim.g
    local keymap = vim.keymap

    g.fzf_action = {
      ['ctrl-t'] = 'tab split',
      ['ctrl-x'] = 'split',
      ['ctrl-v'] = 'vsplit',
    }

    g.fzf_colors = {
      fg = {'fg', 'Normal'},
      bg = {'bg', 'Normal'},
      hl = {'fg', 'Comment'},
      ['fg+'] = {'fg', 'CursorLine', 'CursorColumn', 'Normal'},
      ['bg+'] = {'bg', 'CursorLine', 'CursorColumn'},
      ['hl+'] = {'fg', 'Statement'},
      info = {'fg', 'PreProc'},
      prompt = {'fg', 'Conditional'},
      pointer = {'fg', 'Exception'},
      marker = {'fg', 'Keyword'},
      spinner = {'fg', 'Label'},
      header = {'fg', 'Comment'},
    }

    g.fzf_history_dir = '~/.local/share/fzf-history'

    keymap.set('n', '<leader>fl', ':Lines ')
    keymap.set('n', '<leader>fb', ':BLines ')
    keymap.set('n', '<leader>ff', ':Files ')
    keymap.set('n', '<leader>fg', ':GFiles ')
    keymap.set('n', '<leader>f?', ':GFiles? ')
    keymap.set('n', '<leader>ft', ':Tags<cr>')
    keymap.set('n', '<leader>fa', ':Ag ')
    keymap.set('n', '<leader>fc', ':Commits ')
  end
}
