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

fish -c "complete -C" messes with terminal modes #8705

Closed
krobelus opened this issue Feb 7, 2022 · 0 comments
Closed

fish -c "complete -C" messes with terminal modes #8705

krobelus opened this issue Feb 7, 2022 · 0 comments
Labels
bug Something that's not working as intended
Milestone

Comments

@krobelus
Copy link
Member

krobelus commented Feb 7, 2022

Run

fish -c 'complete -C ": "' | sed 1q | vim -

sometimes vim ends up in a broken state: characters are echoed as I type them.

It does not happen if stdin is not a terminal:

echo | fish -c 'complete -C ": "' | sed 1q | vim -u NONE -

Looks like fish restores terminal modes, which overwrites any modes set by vim.

write(1, "\n", 1)                       = -1 EPIPE (Broken pipe)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=1027314, si_uid=1000} ---
getpid()                                = 1027314
getpgrp()                               = 1027309
ioctl(0, TIOCGPGRP, [1027309])          = 0
ioctl(0, SNDCTL_TMR_START or TCSETS, {B38400 opost isig icanon echo ...}) = 0

Sort of related to #8699 - but the fix is probably different.
We can just not set any terminal modes in this scenario.

@krobelus krobelus added the bug Something that's not working as intended label Feb 7, 2022
@krobelus krobelus added this to the fish-future milestone Feb 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something that's not working as intended
Projects
None yet
Development

No branches or pull requests

2 participants