comment -*- mode: text; tab-width:2; indent-tabs-mode:nil -*-

Memo about mosh

* Requirement
  libssh2
  mosh (1.3.2, 1.4.0)

* Build
  cd /foo/mosh-x.x.x
  ./configure ...
  (If you want to build with MinGW or use sixel graphics, use
   https://github.com/arakiken/mosh/archive/sixel-winsock.zip
   which works on winsock2 instead of *nix.)
  cd src/protobufs;make clean

  cd /bar/mlterm-x.x.x
  ./configure --with-mosh=/foo/mosh-x.x.x
  make
  make install

* Start
  mlterm --serv=mosh://...

* Environmental Variables
  o MOSH_SERVER
    Specify the path of mosh-server in the remote host.

  o MOSH_PREDICTION_DISPLAY
    Control use of speculative local echo.
    The value defaults to "adaptive", and can also be "always" or "never".

  o MOSH_UDP_PORT
    UDP port number or port-range to bind.
    This works same as -p option of mosh-server.
    The value format is "port[:port]".
    (By default, mosh-server uses a UDP port between 60000 and 61000)

* Note
  o Don't specify a value except "UTF-8" for "encoding" option.

  o It is impossible to change the value of "col_size_of_width_a" option.
    (mlterm for *nix)
    The value of "col_size_of_width_a" option is automatically determined by the
    result of wcwidth().

    (mlterm for win32api)
    The value of "col_size_of_width_a" option specified in startup is applied
    but permanently unchangeable.

  o The way of building mosh support in Android: See README.android

  o Unsupported platform: Java/SWT

  o https://github.com/arakiken/mosh/archive/sixel-winsock.zip utilizes
    DRCS-Sixel to show sixel graphics.
    mlterm 3.8.5 or later and RLogin 2.23.1 or later suport it.
    (DRCS-Sixel: https://qiita.com/arakiken/items/626b02cd857d20c12fbc)
