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

Если у Вас есть машина, которая не находится позади NAT (т.е. свободно доступный из Интернета), Вы можете ssh в него от машины в кампусе и передают произвольные удаленные порты соответствующему локальному (на машине кампуса) порты через это ssh сессия - опция для OpenSSH -R. Вы затем соединились бы с переданным портом на non-NATed машине, и ssh от компьютера кампуса туннелирует данные через кампус NAT. Немного неуклюжий, но это работает.

13
06.01.2014, 03:22
2 ответа

При использовании VIM -B это отображает все высокие символы :

set encoding=latin1
set isprint=
set display+=uhex

:

set encoding=latin1
set isprint=
set display+=uhex

Любое однобайтовое кодирование будет работать, Vim Использует ASCII для всех нижних символов и имеет к ним жестко закодированным в виде печати. Установка ISPRINT Чтобы опустошить, будет отмечать все остальное как непечатанное. Установка UHEX будет отображать их как шестнадцатеричные.

Вот как отображение изменяется после каждой команды:

before after setting encoding after setting isprint after setting uhex

18
27.01.2020, 19:53

Это походит на то, что Вы ищете. Эта подсказка от vim Wiki названа: Принуждение Vim UTF-8 считать Latin1 как Latin1.

$ vim -c "e ++enc=latin1" file.txt

Также от vim :help можно сделать это для наблюдения больше на кодировке.

:help enc

выборка от :help enc

'encoding' 'enc'        string (default: "latin1" or value from $LANG)
                        global
                        {only available when compiled with the +multi_byte
                        feature}
                        {not in Vi}
    Sets the character encoding used inside Vim.  It applies to text in
    the buffers, registers, Strings in expressions, text stored in the
    viminfo file, etc.  It sets the kind of characters which Vim can work
    with.  See encoding-names for the possible values.

    NOTE: Changing this option will not change the encoding of the
    existing text in Vim.  It may cause non-ASCII text to become invalid.
    It should normally be kept at its default value, or set when Vim
    starts up.  See multibyte.  To reload the menus see :menutrans.

    This option cannot be set from a modeline.  It would most likely
    corrupt the text.

    NOTE: For GTK+ 2 it is highly recommended to set 'encoding' to
    "utf-8".  Although care has been taken to allow different values of
    'encoding', "utf-8" is the natural choice for the environment and
    avoids unnecessary conversion overhead.  "utf-8" has not been made
    the default to prevent different behavior of the GUI and terminal
    versions, and to avoid changing the encoding of newly created files
    without your knowledge (in case 'fileencodings' is empty).
    ...
    ...
1
27.01.2020, 19:53
  • 1
    Это довольно хорошо, но я хотел бы"vim только отобразить печатаемые символы ASCII" и Ваше решение использует latin1 набор символов (который является ISO-8859-1, надмножеством ASCII), это таким образом отобразит символы такой как é который я хотел бы быть отображенным как <e9>. –  Totor 25.01.2014, 03:41

Теги

Похожие вопросы