Tuesday, April 22, 2025

Re: What do you use for (fuzzy) file search?

On Sun, 20 Apr 2025 23:51:21 -0700 (PDT)
Romain Lafourcade <romainlafourcade@gmail.com> wrote:

> My setup comprises...
>
> - a bunch of intuitive mappings:
>
> " global find
> nnoremap ,f :find *
> nnoremap ,s :sfind *
> nnoremap ,v :vert sfind *
> nnoremap ,t :tabfind *
>
> " find in directory of current buffer
> nnoremap ,F :find <C-R>=fnameescape(expand('%:p:h')).'/*'<CR>
> nnoremap ,S :sfind <C-R>=fnameescape(expand('%:p:h')).'/*'<CR>
> nnoremap ,V :vert sfind <C-R>=fnameescape(expand('%:p:h')).'/*'<CR>
> nnoremap ,T :tabfind <C-R>=fnameescape(expand('%:p:h')).'/*'<CR>
>
> - the wildmenu set how I like it:
>
> set wildmenu
> set wildignore+=*.swp,*.bak
> set wildignore+=*/.git/**/*,*/.hg/**/*,*/.svn/**/*
> set wildignore+=*/min/*,*/vendor/*,bundle.*
> set wildignore+=*/coverage/*
> set wildignore+=*/java/*,*/target/*,*/out/*
> set wildignore+=tags,cscope.*
> set wildignore+=*.tar.*
> set wildignorecase
>
> - and a generic &path that works for me and evolves all the time, as
> I work with new frameworks and such:
>
> set path-=/usr/include
> " covers nuxt, next, astro, and most JS frameworks
> set path+=app/**,assets/**
> set path+=components/**,composables/**,content/**
> set path+=layouts/**,lib/**
> set path+=middleware/**,modules/**
> set path+=pages/**,plugins/**,public/**
> set
> path+=server/**,src/**,ssl/**,static/**,store/**,styles/**,storyblok/**
> set path+=test/**,types/** set path+=utils/**
>
> See this gist if you are interested by that &path
> business:
> https://gist.github.com/romainl/7e2b425a1706cd85f04a0bd8b3898805

Thank you Romain for the detailed answer. This is exactly what I was
looking for! I will implement your approach and tweak it to my like, if
needed. The idea of a high-granularity &path is great. Thanks again!

On Mon, 21 Apr 2025 15:05:15 +0000
Igbanam Ogbuluijah <xigbanam@gmail.com> wrote:

> While this is comprehensive ÔÇö thanks for sharing this ÔÇö I get this
> same behaviour with less configuration using FZF

Igbanam, I believe one can do either: if you want to get the plugin way,
you use FZF. Otherwise, you use Romain's approach. Both are fine in my
view. After all, that's why we are using vim: to tailor it to our needs
(and small obsessions).

Roberto

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/20250422193501.00000715%40gmail.com.

No comments: