В чем разница между этими двумя символами?
Аргументируемый!
Если идти по именам, можно подумать, что фигурные ‹'› предназначены только для использованияв качестве кавычки, и что прямая ‹'› используется только как настоящий апостроф, индикатор пропущенных букв.
Однако традиционная практика набора текста на английском языке всегда заключается в использовании фигурных ‹'› для отображенияапостроф.Лично - и я могу быть здесь один - мне это не нравится.Это может привести к более двусмысленному прочтению:
«Он сказал:« Это рыба »и« чипсы »...»
, причем апострофы прямые (незначительно)) яснее, когда цитата заканчивается:
«Он сказал:« Это рыба »и« чипсы »...»
, а апостроф «прямой» делает большесмысл для меня, потому что его цель указания пропущенных букв не имеет внутренней направленности, тогда как кавычки явно асимметричны по назначению.
В традиционном ASCII, конечно, нет умных кавычек, поэтому апостроф всегда используется дляоба ...
в некоторых установках Windows, LoadString завершается неудачно при попытке загрузить строку, содержащую U + 2019, но работает в некоторых других установках Windows.
Здесь вы встречаете ужас кодовой страницы «ANSI».Это кодировка символов по умолчанию, которая отличается в разных локалях установки Windows.Таким образом, на машине в западном регионе вы получаете разные результаты, когда читаете ресурс, когда читаете его в японской Windows.
К сожалению, в Windows используются разные кодовые страницы по умолчанию вместо использования однойглобальная кодировка, такая как UTF-8, но сейчас уже слишком поздно исправлять.Если вы скомпилируете все приложение как приложение Unicode (то есть вы будете использовать LoadStringW
, а не LoadStringA
), тогда вы сможете лучше справляться с не-ASCII-символами, такими как умные кавычки.
Если выВы не можете перейти в приложение Unicode, которое вы немного застряли.Вы не сможете обрабатывать не-ASCII-символы, такие как умные кавычки, во всем мире, поэтому придерживайтесь только ASCII-символов, таких как прямой апостроф ‹'›.
Символ U + 2019 отображается в строках вмой файл ресурсов, который я скопировал из Word
Да, Word имеет раздражающую функцию автозамены, которая заменяет все введенные апострофы умными кавычками.Это особенно нежелательно, когда вы имеете дело с кодом, где ‹'› сломает программу;но это также неправильно даже для простого старого английского, так как невозможно правильно угадать желаемое направление цитаты.(Например, один из апострофов в «фиш-н-фишках» будет неправильным.)
Я предлагаю отключить функцию автоматической замены с помощью умных кавычек.Если вы хотите умные цитаты, лучше вводить их сознательно.К сожалению, их неудобно набирать на большинстве раскладок клавиатуры, часто требуя непонятных последовательностей Alt + numpad.Лично я использую этот , чтобы перетаскивать их на клавиши Alt + [].