
Duplicate record fields is going to make this a bigger problem. Vim does
support duplicate tags (:tselect and :tjump and related bindings), but
hopefully haskell-ide-engine will one day provide us with semantic tags and
solve this problem once and for all!
On Wed, 23 Oct 2019, 17.49 Matthew Pickering,
Thanks Omer, Sylvain and Sebastian
.
I just configured my editor to use fzf and now I can use the `:GFiles` command to perform fuzzy search on files which is probably better than tags. If anyone else is using NixOS, all I had to do was add the `fzf-vim` plugin to the vim configuration.
Cheers,
Matt
On Wed, Oct 23, 2019 at 2:54 PM Ömer Sinan Ağacan
wrote: I use a file finder (fzf) for jumping to files. Because module names
paths to jump to e.g. StgToCmmUtils.Utils I usually type `<C-p>stgcmmutils` and fzf finds the correct file `compiler/GHC/StgToCmm/Utils.hs`.
When generating tags I omit module names for this reason, it's easy with a good file finder to jump to modules already, no need to generate tags for the modules.
fast-tags commands I use:
- When working on the compiler:
$ fast-tags --no-module-tags driver ghc compiler
- When working on the RTS:
$ fast-tags --no-module-tags driver ghc compiler $ ctags --append -R rts/**/*.c rts/**/*.h includes/**/*.h
- When working on the libraries:
$ fast-tags --no-module-tags driver ghc compiler libraries
Ömer
Sebastian Graf
, 23 Eki 2019 Çar, 16:49 tarihinde şunu yazdı: FWIW, I'm using VSCode's fuzzy file search with Ctrl+P (and vim's
equivalent) rather successfully. Just tried it for Hs/Utils.hs by typing 'hsutils.hs'. It didn't turn up as the first result in VSCode, but it in vim.
Am Mi., 23. Okt. 2019 um 14:27 Uhr schrieb Matthew Pickering <
matthewtpickering@gmail.com>:
I use `fast-tags` which doesn't look at the hierarchy at all and I'm not sure what the improvement would be as the names of the modules would still clash.
If there is some other recommended way to jump to a module then that would also work for me.
Matt
On Wed, Oct 23, 2019 at 12:08 PM Sylvain Henry
wrote:
Hi,
How do you generate your tags file? It seems to be a shortcoming of
generator to not take into account the location of the definition file.
Perhaps `HsUtils` and `StgUtils` would be appropriate to disambiguate`Hs/Utils` and `StgToCmm/Utils`.
We are promoting the module prefixes (`Hs`, `Stg`, `Tc`, etc.) into proper module layers (e.g. `HsUtils` becomes `GHC.Hs.Utils`) so it would be redundant to add the prefixes back. :/
Cheers, Sylvain
On 23/10/2019 12:52, Matthew Pickering wrote:
Hi,
The module rework has broken my workflow.
Now my tags file is useless for jumping for modules as there are multiple "Utils" and "Types" modules. Invariable I am jumping to
follow file the the
wrong one. What do other people do to avoid this?
Can we either revert these changes or give these modules unique names to facilitate that only reliable way of navigating the code base. Perhaps `HsUtils` and `StgUtils` would be appropriate to disambiguate `Hs/Utils` and `StgToCmm/Utils`.
Cheers,
Matt _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs