mobile-shell / mobile-shell/mosh

Improve mosh predictive echo + fish autosuggestion interactions

Open
#932 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
14.5k
Forks
865
PR merge metrics
No merged PRs in 30d

Description

This issue tracks the experience of using the fish shell over mosh. #1363 is the fish-shell issue.

The problem is the interaction with autosuggestions and predictive local echo. Autosuggestions are proposed completions to what the user types, that appear after the cursor in a muted color. A picture should make it clear. Crucially text at the insertion point will always overwrite the autosuggestion. The problem is that mosh's predictive echo instead inserts the text before it.

Example showing an autosuggestion:

screen shot 2017-10-18 at 12 40 34 pm

as the user keeps typing, the autosuggestion is predictively pushed instead of overwritten, until the client receives the new frame:

screen shot 2017-10-18 at 12 40 26 pm

Overall there tends to be a lot of distracting churn/noise to the right of the cursor on high-latency connections.

Predictive echo is really nice and we would like to make it work well with fish. The ideal experience would be for mosh to "predictively erase" the autosuggestion whenever it inserts a predictive character. I don't know how feasible that is, but on the fish side we're happy to do things that will help mosh, like emitting escape sequences.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the interaction by using fish over mosh on a high-latency connection, then read fish-shell issue #1363 alongside the mosh predictive-echo behavior described here. Done means predictive echo no longer causes distracting autosuggestion churn while typing, with any required coordination between mosh and fish identified.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, fish
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.