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

feature-request/discussion: tmux-like window interface. pane for script selection. etc. #33

Closed
jlmitch5 opened this issue Oct 11, 2019 · 10 comments
Labels

Comments

@jlmitch5
Copy link
Contributor

I think it could be really cool to have an additional pane when running druid for script selection upload. Some of the functionality I am envisioning:

  • move the repl to a pane, and add another with a file tree pointing to a specific location (maybe a druid/scripts folder, which we could encourage people to use as the place to store their scripts in the readme)
  • macro to switch focus between the panes
  • some way to navigate the file-tree with the arrow keys and some sort of macro for uploading "currently highlighted" script

See here for some idea of the "pane-windowing" I am thinking about. https://github.com/yaronn/blessed-contrib

Note I am not familiar with best-practices or libs as they relate to terminal display. I imagine there would need to be considerations for:

  • platform differences for terminals (like bash/zsh), terminal clients (like iterm2 or the mac terminal app), and OSs (mac, linux, etc.)
  • different color settings/configurations people have setup their terminal to have
  • different terminal sizes. It'd be cool if there was something that could handle these in a way similar to responsive web design.

I figure I'd get the ball rolling about this discussion. Curious what the creators of druid think, as well as the community at large (maybe someone has experience building cool terminal apps like this and has some insight?)

@simonvanderveldt
Copy link
Member

Just to be sure I understand ;)

move the repl to a pane

Which part do you mean exactly?

and add another with a file tree pointing to a specific location (maybe a druid/scripts folder, which we could encourage people to use as the place to store their scripts in the readme)

Would you expect this to always be open?
And what would you want to use it for? Just for uploading? Or would you also want to be able to view and/or even edit the script?

macro to switch focus between the panes

I guess you mean a keyboard shortcut?

@jlmitch5
Copy link
Contributor Author

Which part do you mean exactly?

Something kind of like this:

Screen Shot 2019-10-11 at 7 29 45 PM

Would you expect this to always be open?

Could expand/collapse.

And what would you want to use it for? Just for uploading? Or would you also want to be able to view and/or even edit the script?

Having the ability to view/edit the script could be cool, but I imagine edit would only accessible to those who know/want to use vim/emacs/nano/whatever cli-based text editor we'd decide to wrap. I would not personally use that, as I prefer to do coding in a gui-based editor.

@csboling
Copy link
Contributor

csboling commented Oct 12, 2019

For a more sophisticated graphical IDE experience, it may be easier to write a VSCode/emacs/whatever extension to talk to Crow rather than trying to implement or embed a full featured editor inside Druid. A simple alternate view where you can browse local scripts and fetch from Bowery seems nice though.

@tehn
Copy link
Member

tehn commented Oct 12, 2019

i'm having a hard time imagining why we'd ever need a persistent pane with a file list, since uploading is a singular action. i think it makes sense to have a helper function that gives a file navigator to select a file--- but i feel druid should stay pretty simple.

definitely don't want to build an editor. we did this with norns! it's a huge project. split-screen terminal with users editor of choice is quite ideal.

@jlmitch5
Copy link
Contributor Author

Some sort of helper could be cool, that you run as a separate thing.

What I’m envisioning here is a thing that makes it easy to swap between a lot of different scripts in a users lib, like scrolling through and selecting apps from Norns.

@tehn
Copy link
Member

tehn commented Oct 12, 2019 via email

@csboling
Copy link
Contributor

definitely don't want to build an editor. we did this with norns!

And Teletype! ⌨️ ❤️

@simonvanderveldt
Copy link
Member

simonvanderveldt commented Oct 12, 2019

What I’m envisioning here is a thing that makes it easy to swap between a lot of different scripts in a users lib, like scrolling through and selecting apps from Norns.

The changes to the cli proposed in #30 already allow one to do this from the terminal directly, and since the shell already does file browsing I'm not sure there's much benefit to adding another file browser to druid?

@trentgill
Copy link
Collaborator

I agree with @simonvanderveldt. I'd vote for extending druid so it works alongside other unix-y applications. It would be a program in a tmux session, rather than recreating a subset of tmux inside itself.

I don't know what that means implementation wise though :/

@jlmitch5
Copy link
Contributor Author

Seeing the new interface with the cli (and using crow more frequently), I've gotten used to (and have no issues with) the way things work. I'm gonna close this issue, but if anyone has any ideas around this, we can reopen.

Thanks for the feedback and discussion about the idea, everyone!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants