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

Add ranger contrib to spacemcs? #2523

Closed
punassuming opened this issue Aug 3, 2015 · 15 comments
Closed

Add ranger contrib to spacemcs? #2523

punassuming opened this issue Aug 3, 2015 · 15 comments

Comments

@punassuming
Copy link
Contributor

Currently, I dont add anything to the contrib beyond a binding. What would be needed to convert to a package? Or is it still to niche?

@syl20bnr
Copy link
Owner

syl20bnr commented Aug 3, 2015

Not sure to understand the question, we already have a contribution layer for ranger in spacemacs right ?
Are you asking if it worth it ?
Well, technically the layer is not really useful, the README is very good though but it introduces some duplication with the ranger repository documentation.

If you are OK to remove it, go ahead :-)

@punassuming
Copy link
Contributor Author

I am asking if I can just add to package.el

@syl20bnr
Copy link
Owner

syl20bnr commented Aug 3, 2015

oh ok, sorry I need some sleep :-)

I would like to add it to spacemacs layer but spacemacs users using emacs style may find it not useful. Do you think you can support "emacsy" key bindings in ranger ? Maybe just navigation on nfbp is sufficient.

@punassuming
Copy link
Contributor Author

OK, currently I have emacs mode bound to jk to replicate the real ranger, right now ranger doesn't interfere with anything unless you go into it.

@punassuming
Copy link
Contributor Author

Go to sleep :)

@sooheon
Copy link

sooheon commented Aug 5, 2015

Why not leave it as a layer? At least take out neotree and put it in in its place. Or even better, take out neotree and turn that into a layer as well. Dired is default, and neotree + ranger will be too much duplicate functionality, in my opinion.

Or more simply, what would be the benefits of making it core, not a layer?

@syl20bnr
Copy link
Owner

syl20bnr commented Aug 5, 2015

@sooheon to be honest I see the ranger layer as an improvement over dired but I wonder if it can completely wrap dired to the point to replacing it.
Neotree fills a niche that dired does not cover which is a file tree side bar.

@Ralesi in what measure ranger is compatible with the dired buffer key bindings ? Can we do everything we can do in dired in ranger ?

Another proposition would be to activate ranger in core when the editing style is vim, or we could make it a dotspacemacs variable.

@sooheon
Copy link

sooheon commented Aug 5, 2015

What about including it as one of the example default layers on a fresh install? That way newcomers are exposed to it, without it being forced. I don't mind making it a variable, except that there are too many of those already, and toggling a variable or adding/removing a layer are the same, except I think the layer is the correct layer of abstraction.

If we put it into core, someone like me will just add it to dotspacemacs-excluded-packages (like I've already done with neotree), and as long as it's modular enough that doing so can get rid of any trace of it, I'd be happy.

@syl20bnr
Copy link
Owner

syl20bnr commented Aug 5, 2015

You are right that a layer and a dotspacemacs variable are in the end the same thing. The difference is that a dotspacemacs variable is about core feature and a layer is about optional feature.

Maybe neotree could be moved to a layer called sidebar where we can propose a file tree with neotree and speedbar (the user chooses which one to activate with a layer variable) and other things.

I'm pretty convinced now that we should let ranger in a layer. But I would like to insert it as default in the layer list when vim editing style is chosen.

@sexptherapy
Copy link

Ranger is one of my favorite things in the world. That said, I don't believe the way it is in Emacs is stable or mature enough to be default anywhere. Even themes get it wrong.

Another point is that, IMHO, people coming from Vim expect something like Neotree but not something like ranger. I think ranger as a layer is more than enough, at least for now.

@punassuming
Copy link
Contributor Author

I was never intending to overwrite anything by making it a layer. Currently, the only way dired gets overwritten at all is when you actually run ranger-enable. There are no hooks off of dired or find-file so the intent is that ranger acts as a separate app. The only hook I have is window-configuration-change to automatically disable ranger when you move out of the primary buffer. I implemented a deer function recently, based on the zsh package @vifon has created to contain a lot of the same features of ranger in a single window, but this too should be self contained. This disables preview and parent directories though so it is only for fast file navigation. I agree with @felipe-barros it is still immature in certain aspects, I haven't overwritten dired commands and I haven't implemented proper copy and paste rings, but it has gone a long way in the last 2 weeks. It should remain as a separate app though, in my opinion we should never overwrite dired as the primary form of file management.

I agree with @syl20bnr, there should be a sidebar contrib though for neotree and sr-speedbar, I have been wanting a nice taglist buffer for a while now.

@CestDiego
Copy link
Contributor

@Ralesi wasn't ranger already added?

@TheBB
Copy link
Contributor

TheBB commented Aug 28, 2015

As far as I understood, this discussion is about moving ranger out of its own layer to the spacemacs layer. I might have misunderstood, though. It seems the consensus is that it can wait?

@punassuming
Copy link
Contributor Author

Yes, that was the consensus. Now that I am adding more to the layer, it makes sense to have it as a separate contrib.

@TheBB
Copy link
Contributor

TheBB commented Aug 30, 2015

Okay, thanks. :-)

@TheBB TheBB closed this as completed Aug 30, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants