Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap & feedback & updates #40

Open
4 tasks
pechorin opened this issue Mar 9, 2020 · 12 comments
Open
4 tasks

Roadmap & feedback & updates #40

pechorin opened this issue Mar 9, 2020 · 12 comments
Labels
discuss enhancement New feature or request help wanted Extra attention is needed next_release

Comments

@pechorin
Copy link
Owner

pechorin commented Mar 9, 2020

Current roadmap:

  • paths priorities for better search results (some project path are more relevant then overs)
  • [nvim] ability to jump through preview text (and another keyword)

The new big stories:

  • tags support - dropped
  • jumps history graph ui
  • basic refactoring support

Please share your ideas.

The main point for me now is to support better navigation within current session. I think i will try to experiment with displaying latest N search keywords for easy navigation through jumps history.

Also in thinking about refactoring support (basically about renaming only), but any-jump already can handle this case with :AnyJumpLastResults. Hmm, the big area to think.

@pechorin pechorin added help wanted Extra attention is needed discuss enhancement New feature or request next_release labels Mar 9, 2020
@pechorin
Copy link
Owner Author

pechorin commented Mar 9, 2020

@pyrho @markwu @khalidchawtany @watzon please let me know about missing features/staff you will like .)

@watzon
Copy link
Contributor

watzon commented Mar 9, 2020

Mostly I'm excited to get ctags support. I feel like that will make a huge difference.

@pechorin pechorin changed the title Moving towards 1.0 version: roadmap & feedback wanted Roadmap & plugin feedback Mar 12, 2020
@marlun
Copy link

marlun commented Mar 12, 2020

I'm impressed how nice this works without much setup! 👍 In my experience these kind of plugins can often add too many features and become somewhat of a behemoth, I'm more for keeping it lightweight 😄

@pechorin
Copy link
Owner Author

@marlun yeah, where are problem with ui complexity and i think i should care about it specially in context of ctags/refactoring support, think this new features should be pluggable.

@pechorin pechorin changed the title Roadmap & plugin feedback Roadmap & feedback & updates Mar 14, 2020
@pechorin
Copy link
Owner Author

@watzon i do some research on tags support question. i use gutentags for tags generation and this works great for autocompletion. i also noticed what tags file contains the same definitions results as any-jump do via syntax regexp rules. So i see only one reason to do tags support — is for perfomance, because sometimes (specially on large code base) searching for definitions can span to 3 and more seconds. Will think about this.

@pechorin
Copy link
Owner Author

So, tags support is something what we do already, via our regexp rules engine.

@watzon
Copy link
Contributor

watzon commented Mar 14, 2020

There is another reason to support tags. There are already tons of languages that ctags has support for, and it's really easy to write your own .ctags file to add support for another language. If you want to add support for another language here right now you have to make a pull request.

@pechorin
Copy link
Owner Author

Hmm, okay, i looked at ctags support languages list and it's impressive.

@watzon
Copy link
Contributor

watzon commented Mar 14, 2020

Yeah, and super easy to add support for a new language. So I think it's definitely worth doing.

@markwu
Copy link
Contributor

markwu commented Mar 15, 2020

I use ctags, global(gtags), language-server(coc.nvim) and any-jump at the same time, actually I like the simple of any-jump.

  1. I don't need to re-generate tags file atfer I edited the files. I can just hit <leader>j to find all definitions and references on the fly. (altough, it might be slow for very big project)
  2. ctags only support definitions, no references.
  3. global(gtags)/cscope support far fewer languages than ctags, but it supports references with it's native parsing engine. It can support more languages through embed ctags/pygements into global(gtags), but no references.

That's why I am so impressed with any-jump. It just fill the gap between ctags and grep-like tools. I like it.

If you want to support ctags, I will suggest use the strength of ctags, just use it to find definitions as an enhanced engine.

But, keep references with current implementation.

So, any-jump will have three sections when ctags support ready:

  1. definitions from any-jump (through current regexp rules), just find an easy way for user to extend it to find their own staffs.
  2. definitions from ctags (through ctags files) with more kinds(class, function, method, variable ... blah,blah), from tselect command
  3. references from any-jump

One thing ctags can beat any-jump is tags stack, you can use <c-]> jump to it's definition and jump again to another definition. Later, you can use <c-t> to jump back previous files. Vim keep the jumping histories.

I also use ctags for autocompletion(omnicompletion by vim).

If people want more advanced definitions/references search, I will suggest use language server, it is more precise due to their language semantics parser implementation, not only regexp search.

I personally treat any-jump a smart grep tools for languages.

Just my two cents!

@pechorin pechorin pinned this issue Apr 7, 2020
@geodimm
Copy link

geodimm commented Jun 12, 2020

Hi, what a great project!

I'd like to suggest adding optional borders around the floating windows :)

[
  "┌",
  "─",
  "┐",
  "│",
  "┘",
  "─",
  "└",
  "│"
]

Example plugins that have that feature are https://github.com/junegunn/fzf.vim and https://github.com/antoinemadec/coc-fzf

Also, it would be great to be able to set the background colour of the popup.

Thanks!

@kylepollina
Copy link

Hello, love this plugin so far. A feature request I would like to see added would be the ability to move up a directory. Unless that would be handled with ctags/gutentags, my idea would be maybe something is defined in the parent directory, it would be useful to hit a button to 'go up one directory and re-run search'. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss enhancement New feature or request help wanted Extra attention is needed next_release
Projects
None yet
Development

No branches or pull requests

6 participants