Comments (11)
Do you mean after hitting Ctrl+C?
from terminaluserinterfaces.jl.
Nope, just normal exiting. In one of your examples, it's q
to break the loop, even hitting q
lands me in this issue.
from terminaluserinterfaces.jl.
Are you calling TUI.initialize()
?
TerminalUserInterfaces.jl/src/utils.jl
Lines 202 to 217 in 4217d1a
TUI.initialize()
does the following:
- Backs up termios settings for restore
- Switches to tui_mode(), i.e. switches to the alternate terminal buffer
- Hides the cursor
- Enables the raw mode
- Clears the alternate terminal buffer screen
- Moves the cursor to the first row first column
One TUI.initialize()
is called, since you are in raw mode, it'll consume all key presses without echoing them back. TUI.cleanup()
undoes the above, you should should now be in the same state as you were before calling TUI.initialize()
.
I'm not surprised that that when you don't call TUI.cleanup()
, you are seeing a "dead" terminal. You can call any of those functions in the cleanup manually too btw.
When you hit q
and call TUI.cleanup()
, does the cursor show? Are you still in the alternate buffer?
from terminaluserinterfaces.jl.
Yup, I'm literally just running your examples. Yes, I do see the cursor after quitting normally with q
and call TUI.cleanup()
. Note that this issue does not seem to depend on how I exit, in the list example, it happens even if I choose an option. I do indeed see the normal output as expected, everything looks normal, I just can't do anything. (So presumably I'm no longer in the alternate buffer.)
Note that I have just tried this on a different computer, just for the hell of it. Both are in alacritty
in linux, but figured I'd try it for the hell of it.
If I had to guess, I'd say this isn't getting out of raw mode for some reason, but I have no idea why.
from terminaluserinterfaces.jl.
Yeah it does seem like a bug in the termios restore. Iβm just trying to figure out what that is. When you are in that βdeadβ state, what happens if you type reset
and hit Enter?
from terminaluserinterfaces.jl.
Note for myself, this is potentially related to this issue: kdheepak/TERMIOS.jl#6
from terminaluserinterfaces.jl.
Typing reset
and then enter in the "dead" state does not seem to do anything.
from terminaluserinterfaces.jl.
I think I'm hitting the same problem. More specifically, when running an example like julia examples/barchart.jl
on the command line, there is no problem, but when I include
the file from within the Julia REPL, my whole screen goes "dead" (after quitting the TUI app with q
), and I have to kill the julia process. Do you know of a trick to get out of the dead state without having to kill julia?
from terminaluserinterfaces.jl.
copying the code examples straight from GitHub and pasting in the REPL also leads to the REPL freezing/dying. Everything works while in the example until using 'q'. The program exits, I'm back in REPL, and cannot do anything but terminate the process.
from terminaluserinterfaces.jl.
Can you tell me what terminal / operating system?
from terminaluserinterfaces.jl.
Can someone who has had this issue try it again in v0.3.0:
https://github.com/kdheepak/TerminalUserInterfaces.jl/releases/tag/v0.3.0
It should be resolved now (I've updated the examples too, there's no longer a TUI.initialize()
).
from terminaluserinterfaces.jl.
Related Issues (15)
- Documentation: how to generate a set of slides HOT 2
- Error in examples HOT 10
- Wrong value for TIOCGWINSZ? HOT 6
- Use ansi block characters to make smoother progressbars HOT 3
- Missing convenience functions HOT 1
- ioctl failed: Inappropriate ioctl for device HOT 8
- Progress bars not visible. HOT 12
- TagBot trigger issue HOT 50
- undefined reference in disable_raw_mode() HOT 7
- Extra line in Paragraph HOT 3
- Initialization fails on windows machine HOT 3
- How do you interpret key values? HOT 2
- Version 0.8.0 incompatible with Julia 1.8 and version 0.3.0 lacks documentation
- FocusLost, ERROR: ArgumentError: invalid JSON HOT 2
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 terminaluserinterfaces.jl.