cdepillabout / termonad

Terminal emulator configurable in Haskell.
https://hackage.haskell.org/package/termonad
BSD 3-Clause "New" or "Revised" License
401 stars 49 forks source link

Split every tab in two panes #206

Open gelisam opened 3 years ago

gelisam commented 3 years ago

My goal with this PR is to eventually implement a split-panes feature:

Furthermore, I would like to make that implementation customizable. As a step towards that goal, in this draft PR every tab is always split vertically into two panes; one terminal on the left, and one terminal on the right.

cdepillabout commented 3 years ago

Thanks for creating this PR. Give me a couple days to find the time to do a good review.

cdepillabout commented 2 years ago

Hey, just wanted to let you know that I haven't forgotten about this. I still plan on giving this a good review at some point! I'm not sure when I'll find the time to get to this (since I think this is a really good addition and I want to give adequate time to answer your questions), but hopefully sometime in December. Sorry to keep you waiting on this.

gelisam commented 2 years ago

Hmm, I shared what I have so far (the version with exactly 2 panes per tab) so that you could redirect my efforts in the right direction if needed, but if you're too busy to review it, maybe it would make more sense for me to finish the work (allowing an arbitrary number of panes per tab), so that you only have to do one review and not two?

cdepillabout commented 2 years ago

maybe it would make more sense for me to finish the work (allowing an arbitrary number of panes per tab), so that you only have to do one review and not two?

Yes, going ahead and writing the code for allowing an arbitrary number of panes per tab does sound reasonable!

craigem commented 2 years ago

I was waiting on the arbitrary number of panes too, from a user-testing perspective.

cdepillabout commented 2 years ago

@gelisam This PR looks like a really good start! I'm really happy with your code here.

I've sent you a request to become a maintainer for Termonad. Please feel free to use your judgement and continue on with this PR as you see best. Don't feel like you need to wait for my approval to make decisions about how to implement anything. After you get everything working, feel free to merge in without waiting for me.

I don't want you to feel blocked by my (slow) reviews. If I do end up wanting to change something after you've already merged this PR in, I'm completely fine with either opening an issue, or sending a follow-up PR myself changing something.

Feel free to make this change as well:

diff --git a/README.md b/README.md
index b907df8..3cc3544 100644
--- a/README.md
+++ b/README.md
@@ -519,3 +519,4 @@ would like to add, please submit an issue or PR.
 ## Maintainers

 - [cdepillabout](https://github.com/cdepillabout)
+- [gelisam](https://github.com/gelisam)

(If you absolutely don't want to be a maintainer for Termonad, I can try be faster with my reviews as well.)

gelisam commented 2 years ago

Thanks! I don't promise to be a very active co-maintainer, as I already maintain too many projects, but precisely for that reason, I appreciate how important it is to have co-maintainers in order to help share the load, so I'll do my best!