Являются ли символы Юникода лучше или более семантическими, чем простые текстовые версии? - PullRequest
2 голосов
/ 23 марта 2011

Когда я копирую / вставляю текст с большинства сайтов и в формате pdf, следующие символы почти всегда находятся в эквиваленте Юникода:

  • двойная кавычка: "is" and "(“ и ”)
  • одинарные кавычки: 'is' и '(‘ и ’)
  • многоточие: ... is… (…)

Я понимаю те, которые не могут быть представлены без юникода, такие как © и ¢, но даже для них, мне интересно.

Когда вы должны использовать эти эквиваленты Юникода? Являются ли они более семантическими, чем не использовать их?они лучше интерпретируются устройствами (копирование / вставка / печать)? Меня всегда раздражает получение этих кавычек и символов многоточия, потому что при программировании textmate + вы их не используете.

Ответы [ 5 ]

4 голосов
/ 23 марта 2011

Когда следует использовать эти юникод-эквиваленты?Являются ли они более семантическими, чем не используют их?

Обратите внимание, что это не «эквиваленты Юникода».Эти символы доступны во многих наборах символов, отличных от Unicode, и они строго отличаются от предложенных вами альтернатив.

В типографии правильные версии одинарных и двойных кавычек слева и справа.Они обеспечивают традиционный внешний вид для тех персонажей, которые использовались в печатных СМИ в течение многих лет.Символ многоточия обеспечивает правильный интервал для многоточия, который не возникает естественным образом при использовании последовательных символов полной остановки.Таким образом, причина того, что все они используются, состоит в том, чтобы сделать текст правильно читаемым для людей.

Они лучше интерпретируются устройствами (копировать / вставить / распечатать)?

Любая система, которая использует любой набор символов, должна быть разработана для правильной обработки этого набора символов.Если текст закодирован в Юникоде, то любая последняя система (по крайней мере, за последние 15 лет) должна справиться с этим, поскольку Юникод является де-факто стандартным набором символов для всех современных систем.

Не всеUnicode-совместимые системы смогут правильно отображать все символы.Это будет зависеть от доступных шрифтов и даже от системы рендеринга, которая использует шрифты.Но любая Unicode-совместимая система сможет передавать символы без изменений (например, в операции копирования и вставки).

Меня всегда раздражает получение этих кавычек и многоточия, потому что с textmate + программирование, вы их не используете.

Необычно копировать текст на английском (или на любом другом языке) непосредственно в программу без необходимости добавлять отдельные разделители к этому тексту.Но большинство современных языков программирования не будут иметь затруднений при обработке текста, если он разделен свойствами.

Любые системы, которые не могут правильно обрабатывать Юникод, должны быть обновлены.Унаследованные кодировки не будут иметь места в будущем.

3 голосов
/ 23 марта 2011

Я думаю, что есть простое объяснение: MS Word автоматически преобразует эти символы / последовательности при вводе текста, и из этого текстового редактора скопировано много текста в Интернете.

Большинство статей, которые я получаю для своего сайта от других авторов, отправляются в виде файла .doc, и я должен преобразовать его. Обычно в нем содержатся упомянутые вами символы.

Я бы также добавил еще один: много разных типов тире вместо дефиса. А также двойная кавычка с низким открытием (как видно на некоторых европейских языках).

Я обычно позволяю им оставаться в тексте (все мои страницы в юникоде). Просто важно помнить об этом, когда вы играете с регулярными выражениями и т. Д. (Особенно черточки могут быть хитрыми и их трудно обнаружить).

2 голосов
/ 23 марта 2011

HTML-сущности служат тройной цели:

  1. Возможность использовать символы, которые не относятся к набору символов документа, например, вставить символ евро в документ ISO-8859-1.

  2. Экранирующие символы, имеющие особое значение в HTML, например угловые скобки.

  3. Упростите ввод символов, которых нет на вашей клавиатуре или которые не поддерживаются вашим редактором, например, символ авторского права.

Обновление:

Моя информация верна, но я подозреваю, что ответил на неправильный вопрос ...

1 голос
/ 23 марта 2011

В Интернете я бы сказал, что разметка добавляет смысловой смысл, а контент - нет. Так что не имеет значения, какой вы используете в этом контексте.

Типографы будут настаивать на “ и ”, где программистам все равно, и просто используют обычные старые кавычки ".

Ключевым моментом здесь является взаимодействие. Существуют разные схемы кодирования. Поскольку мы все стали жертвами, люди вставляют содержимое в редактор из WORD, который использует кодировку windows-1251. Когда вы передаете этот контент через AJAX, обычно это прерывается, потому что AJAX по умолчанию использует кодировку UTF-8.

Office 2010 теперь позволяет сохранять документы в формате UTF-8. Кроме того, базы данных имеют разные схемы кодирования Unicode. Лучше всего использовать UTF-8 вплотную.

0 голосов
/ 23 марта 2011

Когда вы копируете текст вставки, который содержит специальные символы, они останутся без изменений.Это прекрасно, если символы соответствуют кодировке, используемой веб-страницей.

Сущности HTML - это просто удобство для создания определенных символов в любом наборе символов.Клавиатуры, как правило, не имеют клавиш для получения символов, таких как ©, поэтому сущность HTML представляет собой ярлык.

Я собираюсь обобщить и сказать, что большую часть времени содержимое имеет формат UTF-8 (пожалуйста, исправьтемне, если я ошибаюсь).Скопированные символы обычно копируются правильно, и все отлично работает, если они не скопированы правильно, или кодировка может быть изменена, или вы после поддержки i18n, переходите к сущностям HTML или XML.В противном случае оставьте их как есть, браузер отобразит их просто отлично.

...