Как переназначить новую строку и возврат каретки независимо от терминала, используемого для подключения?

Вся моя конфигурация хранится в моей учетной записи github ( https://github.com/mnebuerquo/dotfiles ), поэтому я могу просто клонировать свое репо и запускать сценарий установки, а мой дом настроен на использование всех моих инструментов. Я устанавливаю реплики dotfiles в свой дом на любом сервере, который я настроил, поэтому он удобен, и мне не нужно переключаться обратно на элементы управления villa и tmux.

Я только начал использовать JuiceSSH с моего Nexus 6, и я хочу, чтобы иметь возможность подключаться к моим сеансам tmux с моего телефона.

Проблема возникает, когда я использую tmux. Поведение терминала на JuiceSSH отличается от поведения терминала Gnome Terminal на Ubuntu. Кажется, что сок отправляет ctrl + j, а другие условия отправляют ctrl + m.

Пока это не проблема, кроме tmux. Я использую vim + tmux navigator ( https://github.com/christoomey/vim-tmux-navigator ), чтобы связать ctrl + h, ctrl + j, ctrl + k, ctrl + l, чтобы перемещаться между панелями в vim и tmux. Когда я нажимаю клавишу ввода на клавиатуре телефона, она переходит к следующей нижней панели в tmux (Cj). Когда я делаю ctrl + m с любого устройства, я получаю возврат карриэля, который я ищу. Когда я не использую свой собственный tmux.conf, где Cj не связан, тогда клавиша ввода работает на моем телефоне с помощью JuiceSSH.

Я хочу изменить конфигурацию терминала в моем .bashrc или что-то, чтобы исправить это, поэтому он работает с tmux независимо от того, что мой терминал отправляет для ключа ввода.

3 Solutions collect form web for “Как переназначить новую строку и возврат каретки независимо от терминала, используемого для подключения?”

Если телефон буквально испускает cj, то нет, единственным решением является изменение привязки в tmux-навигаторе. И я думаю, что ssh чисто байт. (Вы также можете отправлять сигналы unix, например, ctrl + c / interrupt, но это все). Он может работать, потому что ваш телефон сообщает ssh-серверу, что он использует cj как новую строку при открытии сеанса.

RFC 4254 – Протокол подключения Secure Shell (SSH)

Я думаю, вы хотите:

stty -icrnl 

… хотя это кажется мне немного странным. Я понимаю, что в системах Apple по умолчанию заканчивается окончание строки \r eturn, но во всех моих Linux-системах по умолчанию stty sane terminal будет делать ровно противоположное и переводить i nput c arriage r eturns n ew l ines. Ваше Android-устройство и мои Linux-системы совместно используют системное ядро ​​- это то, что обрабатывает терминальную линию-дисциплину, на которую влияют параметры stty . Тем не менее, чтобы отправить через eurn, когда вы нажимаете \r eturn, вы можете просто сказать, чтобы остановить это.

Спасибо за ваши ответы, ребята!

Похоже, что моя проблема была решена, даже когда я задавал вопрос. JuiceSSH только что выпустил обновление, в котором исправлена ​​проблема с ключом ввода.

https://juicessh.com/changelog

Обновление 25 июля JuiceSSH «Исправлено ключ ввода в Nano при использовании последней версии Google Keyboard», похоже, является решением моей проблемы. Я нашел обновление после того, как задал этот вопрос сегодня утром, но перед чтением ответов сегодня днем.

Итак, @mikeserv, вы правы, что это кажется немного странным. Я пытался обмануть ошибку в телефонном приложении, привязывая ключи странным образом. Но это уже не нужно, поскольку телефон теперь отправляет правильный символ.

  • Создайте киоск с tmux
  • Уменьшить задержку управления c в xterm и tmux
  • Как прокручивать экран или буфер tmux без приостановки приложения?
  • Почему мои приложения для рисования экрана не отображаются под tmux?
  • Экран GNU: эквивалент соответствия в tmux
  • tmux, Vim и Solarized
  • tmux на удаленном компьютере не получает правильный префикс + клавиши со стрелками
  • Указание строки командной строки tmux
  • Что делает `<Cb> m` или щелчок правой кнопкой мыши по области tmux?
  • Как изменить определенные привязки клавиш в Tmux?
  • TMUX Ctrl и Shift Keys
  • Interesting Posts

    Как OSX обрабатывает условия отсутствия памяти?

    Файл ленточного устройства не существует

    Почему моя среда полна ␀s?

    Как установить диск из разрушенной системы рейдов?

    Что происходит с транзакцией RPM, когда она прерывается посередине?

    Загрузите произвольное количество файлов с помощью wget из каталога для самостоятельной перенаправления

    Убивание предыдущих экземпляров скрипта перед запуском того же сценария Unix

    Как исправить bash или auto run / bin / bash в SSH login

    Возможно ли автоматически отображать содержимое каталога во время ввода команды?

    Автоматически переименовывать файлы, когда они помещаются в определенный каталог

    как записать живое изображение аварийного диска (ISO) с dd для загрузки UEFI?

    Изменить размер диска на Linux

    Сценарий Bash порождает множество новых процессов сам по себе

    Производительность `tar -xf` (размер блока)

    удалил бродячий файл и теперь вижу .nfs0000000000b869e300000001?

    Linux и Unix - лучшая ОС в мире.