Comments (5)
The boxes lend a really good visual indicator of when things start and end.
We use it internally to help separate errors from other things, with good success.
I'd be hesitant to remove that.
from cli-ui.
it's mostly a style choice, but also facilitates copy paste, wrapping, etc.
It greatly simplifies the code as well. We don't have to calculate the end of the line and pad things on the right. You might also notice that we don't really do line wrapping, so end of the line doesn't even work in some cases unless we start automatically splitting up lines.
We would entertain any PRs for this, of course 😊
from cli-ui.
Yeah, the reason we haven't done this is that with complete boxes, the line essentially becomes a whooole lot of spaces, and copy/pasting gets very extremely bad, as opposed to the current state of "pretty bad". I haven't tested it but I strongly suspect performance would suffer too: writing spaces isn't free. We could probably jump to the end of the line with CHP9999 or something but I'm not optimistic that it would be much faster.
from cli-ui.
@burke you'd also have to walk back in if you're rendering sub-frames. Otherwise, the boxes will overlap on the right side of the screen and look all weird.
I wonder if it might look better without the top and bottom bars being all the way across the screen - although, that does make it really easy to see where blocks start. Maybe something like this:
┏━━ Outermost Title
┃ ✓ A thing
┃┏━━ Inner Title
┃┃ Some text
┃┃┏━━ Innermost Title
┃┃┃ ✗ A failing thing
┃┃┗━━ (0.5s)
┃┗━━ (0.6s)
┗━━ (1.6s)
Or even:
┏┳━ Outermost Title
┃┃ ✓ A thing
┃┃┏┳━ Inner Title
┃┃┃┃ Some text
┃┃┃┃┏┳━ Innermost Title
┃┃┃┃┃┃ ✗ A failing thing
┃┃┃┃┗┻━ (0.5s)
┃┃┗┻━ (0.6s)
┗┻━ (1.6s)
Either would remove the box illusion. I know I had a slightly negative initial reaction to the lack of a border on the right side.
from cli-ui.
So, I decided to see how difficult it would be to modify the frame styles generally and discovered that it was actually pretty easy to do. I have a working prototype and will probably put a PR up once I get some better documentation written.
from cli-ui.
Related Issues (20)
- Why does :options conflict with :default? Would love to see it fixed. HOT 1
- Should not `ask` when it is not interactive HOT 2
- in the terminal of vscode HOT 1
- Spinner does not reset terminal fast enough when there's a lot of output HOT 2
- ANSI color code escaping for "ask" broken in Debian HOT 2
- Add example showing how to run a shell command with stdout redirected HOT 2
- Questions get duplicated when the message is too long HOT 6
- The ask color change my frame color.
- Can't prompt in a spinner
- Cant use gray color option for frame HOT 2
- Links to documentation are broken HOT 2
- Circular dependency warnings
- [Feature Request] Allow to debrief successful SpinGroups
- Add option to allow configuration of ask prompt instructions colour HOT 2
- Error interactive_options.rb:337:in `wait_for_user_input': Interrupt (Interrupt) HOT 2
- Cannot load such file - cli-ui-2.2.0/vendor/reentrant_mutex HOT 2
- Progress bar broken in 2.2? HOT 3
- Weak guarantees for `IO#write` override
- Intermittent prompt_test failure
- Radio buttons / checkboxes HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cli-ui.