Как я могу поместить символ ascii 0x08 с помощью MacBook?

Я пишу этот вопрос, потому что одна маленькая невидимая проблема отняла у меня часы и часы фиктивных поисков, и время было потрачено впустую (вот этот вопрос: CSS: есть ли разница между этими двумя частями?)

Кто-нибудь знает, как символ 0x08 ("возврат" в ASCII) можно записать в текст с помощью MacBook и простой IDE (я использую "Coda")?

На MacBook нет возможности нажимать Alt + 08 (на клавиатуре MacBook нет части цифровых клавиш).

Как это может произойти?


person Azat    schedule 09.02.2011    source источник


Ответы (3)


Вы откуда-то копировали и вставляли? Потому что единственный известный мне способ — помимо того, что предложил SCFrench — это включить это в Терминале, набрав:

stty erase ПРОБЕЛ CTRL+V CTRL+H RETURN

person Asmus    schedule 09.02.2011
comment
Как с этим связано «копировать и вставить»? Я спрашиваю, потому что я использовал его. (Я скопировал свой собственный код из одного моего файла в другой мой файл). Как во время этого действия мог появиться символ 0x08? - person Azat; 09.02.2011
comment
Что ж, вы могли видеть похожие эффекты с символами новой строки, которые различаются для разных операционных систем (например, заканчивается ли строка на \n, \r, CR или LF...), так что это возможно (хотя я не видел этого конкретного проблема раньше), что при копировании и вставке между двумя файлами, открытыми в разных кодировках (например, один в Latin1, один в UTF-8), вы случайно создали символ \b (соответственно 0x08). - person Asmus; 09.02.2011
comment
@Асмус: Отлично! Я предположил, что причина именно в разных кодировках. Но почему \b? Каков механизм появления \b? У нас есть только \r (0x0d) или/и \n (0x0a). - person Azat; 09.02.2011
comment
Новые строки были задуманы как пример; в вашем случае все дело в backspace. Эквивалентом 0x08 в кодировке Ascii в различных обозначениях является \b, BS, ^H, backspace. - person Asmus; 09.02.2011
comment
@Асмус: хорошо. Ответ заключается в том, что мы можем ожидать чего угодно при использовании преобразования из одной кодировки в другую? :) - person Azat; 10.02.2011
comment
Младшие 128 байтов кодировки UTF-8 отображаются непосредственно в ASCII (в варианте Latin1, если хотите), так что это не должно вызывать странностей. Я также могу предложить другую подсказку: что, если вы случайно скопировали часть символа UTF-8? Он легко может содержать любой байт, включая 0x08. (Кроме того, есть много управляющих последовательностей. Частичный список можно увидеть здесь). - person whitequark; 10.02.2011

Не уверен, что это самый простой способ, но:

  1. На панели системных настроек клавиатуры установите флажок «Показать клавиатуру и средство просмотра символов в строке меню».
  2. Найдите значок строки меню «Клавиатура» (в правой части строки меню), щелкните его и выберите «Показать средство просмотра символов».
  3. В появившемся окне «Символы» найдите всплывающее меню «Вид» и выберите «Кодовые таблицы».
  4. Выберите вкладку Кодировка Unicode.
  5. В средней части, где отображаются все символы, нажмите на запись для 0008 (она будет пустой, но в поле «Имя:» будет написано «BACKSPACE»).
  6. Нажмите кнопку «Вставить» в том же окне.

Поскольку символ не печатается, он фактически ничего не показывает в текстовом редакторе, но (по крайней мере, в TextEdit) вы увидите, что вам нужно нажать клавишу со стрелкой влево или вправо более одного раза, чтобы пройти мимо него. Я также подтвердил, выгрузив файл в шестнадцатеричном формате, что он содержит 08 байт.

Вы также можете использовать эту технику для настройки замены текста на вкладке «Текст» панели настроек системы «Язык и текст».

person SCFrench    schedule 09.02.2011
comment
Есть ли способ вставить этот символ, используя только клавиатуру? - person Azat; 09.02.2011
comment
Может ли этот символ появиться, когда мы «скопируем и вставим» код, который НЕ содержит таких символов? - person Azat; 09.02.2011
comment
Ах, я думаю, что, возможно, немного неправильно понял вопрос. Я думал, ты спрашиваешь, как это сделать, а не как это могло произойти. Очевидно, маловероятно, что кто-то случайно выполнил эти 6 шагов... - person SCFrench; 09.02.2011
comment
да, ключевой вопрос: «Как это может произойти?» - person Azat; 12.02.2011

Shift + стрелка вверх + Delete/Backspace. Это ошибка.

http://www.openradar.me/5288750

person Jerry    schedule 02.08.2015