Регистр это в ворде что такое

Изменение регистра в Microsoft Word

Регистр это в ворде что такое. Kak izmenit registr bukv v Vorde. Регистр это в ворде что такое фото. Регистр это в ворде что такое-Kak izmenit registr bukv v Vorde. картинка Регистр это в ворде что такое. картинка Kak izmenit registr bukv v Vorde. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Изменение регистра в Ворде

Большинство задач, с которыми можно столкнуться в процессе использования текстового редактора от Майкрософт, могут быть решены как минимум двумя способами – с помощью кнопок на панели инструментов (лента) и горячих клавиш на клавиатуре. Справедливо это утверждение и для интересующего нас сегодня регистра.

Способ 1: Кнопка на ленте

Для изменения регистра достаточно нажать всего одну кнопку на панели быстрого доступа в Word. Располагается она во вкладке «Главная» в группе инструментов «Шрифт». Так как данный элемент выполняет сразу несколько функций по части изменения регистра, будет уместно рассмотреть каждую из них.

Регистр это в ворде что такое. vkladka glavnaya v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vkladka glavnaya v Word. картинка Регистр это в ворде что такое. картинка vkladka glavnaya v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. vyidelit tekst v Word 1. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vyidelit tekst v Word 1. картинка Регистр это в ворде что такое. картинка vyidelit tekst v Word 1. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. knopka registr v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-knopka registr v Word. картинка Регистр это в ворде что такое. картинка knopka registr v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. menyu knopki registr v word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-menyu knopki registr v word. картинка Регистр это в ворде что такое. картинка menyu knopki registr v word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. kak v predlozheniyah v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-kak v predlozheniyah v Word. картинка Регистр это в ворде что такое. картинка kak v predlozheniyah v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. vse strochnyie v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vse strochnyie v Word. картинка Регистр это в ворде что такое. картинка vse strochnyie v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. vse propisnyie v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vse propisnyie v Word. картинка Регистр это в ворде что такое. картинка vse propisnyie v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. nachinat s propisnyih v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-nachinat s propisnyih v Word. картинка Регистр это в ворде что такое. картинка nachinat s propisnyih v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. izmenit registr v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-izmenit registr v Word. картинка Регистр это в ворде что такое. картинка izmenit registr v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Ввиду того что необходимая кнопка расположена в «Главной» вкладке текстового редактора, причем в наиболее активно используемой группе инструментов, а ее меню наглядно показывает то, как будет выглядеть текст после изменения регистра, данный способ можно назвать самым простым и интуитивно понятным. Но не единственным.

Способ 2: Горячие клавиши

Действия, аналогичные вышеописанным, можно выполнить и без обращения к панели инструментов. За большинством вариантов изменения, представленных в меню кнопки «Регистр», закреплены горячие клавиши. К сожалению, их использование позволяет получить лишь три из пяти доступных вариантов написания. Таким образом можно только поочередно переключаться между тремя стилями регистра — «все строчные», «ВСЕ ПРОПИСНЫЕ» и «Начинать С Прописных», но не «Как в предложениях» и не «иЗМЕНИТЬ РЕГИСТР».

Регистр это в ворде что такое. vyidelit tekst v Word 2. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vyidelit tekst v Word 2. картинка Регистр это в ворде что такое. картинка vyidelit tekst v Word 2. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. izmenennyiy registr v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-izmenennyiy registr v Word. картинка Регистр это в ворде что такое. картинка izmenennyiy registr v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Этот способ изменения регистра букв несколько проще рассмотренного нами в первой части статьи, но для кого-то отсутствие двух из пяти вариантов написания может показаться критическим, и в таких случаях не обойтись без обращения к меню кнопки «Aa» в группе инструментов «Шрифт».

Дополнительно: Видоизменение регистра

В Microsoft Word имеется еще одна возможность изменения регистра, позволяющая заменить обычные строчные буквы в словах на малые прописные. Такой стиль написания может быть применен, например, к подзаголовкам или записям в буклете.

Регистр это в ворде что такое. vyidelit tekst v Word 3. Регистр это в ворде что такое фото. Регистр это в ворде что такое-vyidelit tekst v Word 3. картинка Регистр это в ворде что такое. картинка vyidelit tekst v Word 3. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. gruppa shrift v Word 2. Регистр это в ворде что такое фото. Регистр это в ворде что такое-gruppa shrift v Word 2. картинка Регистр это в ворде что такое. картинка gruppa shrift v Word 2. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Регистр это в ворде что такое. okno shrift v word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-okno shrift v word. картинка Регистр это в ворде что такое. картинка okno shrift v word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Примечание: В окне «Образец» вы сможете увидеть, как будет выглядеть текст после внесенных изменений.

Нажмите «ОК» для того, чтобы применить внесенные изменения и закрыть окно.

Регистр это в ворде что такое. registr izmenen v Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-registr izmenen v Word. картинка Регистр это в ворде что такое. картинка registr izmenen v Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.
Обратите внимание на то, что в разделе «Видоизменение» окна «Шрифт» можно определить и некоторые другие параметры написания текста, и каждый из них нами был рассмотрен в отдельных статьях. Доступны следующие варианты:

Регистр это в ворде что такое. Varianty vidoizmeneniya teksta i ego registra v tekstovom redaktore Microsoft Word. Регистр это в ворде что такое фото. Регистр это в ворде что такое-Varianty vidoizmeneniya teksta i ego registra v tekstovom redaktore Microsoft Word. картинка Регистр это в ворде что такое. картинка Varianty vidoizmeneniya teksta i ego registra v tekstovom redaktore Microsoft Word. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Заключение

Вот так просто можно поменять регистр букв в текстовом документе Microsoft Word в соответствии с вашими требованиями или с целью исправления ошибок, допущенных по невнимательности.

Помимо этой статьи, на сайте еще 12501 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Источник

Изменение регистра текста

Регистр выделенного текста в документе можно изменить, нажав кнопку Изменить регистр на вкладке Главная.

Примечание: Сведения о правилах автоматического написания прописными буквами см. в статье Настройка автозамены: написание прописными буквами, правописание и символы.

Изменение регистра

Чтобы изменить регистр выделенного текста в документе:

Выделите текст, регистр которого нужно изменить.

Выполните одно из указанных ниже действий.

Чтобы сделать первую букву приложения прописной, а остальные оставить строчными, выберите пункт Как в предложениях.

Чтобы сделать все буквы строчными, выберите пункт все строчные.

Чтобы сделать все буквы прописными, выберите пункт ВСЕ ПРОПИСНЫЕ.

Чтобы сделать первую букву в каждом слове прописной, а остальные – строчными, выберите пункт Начинать С Прописных.

Чтобы изменить регистр на противоположный (например, переключиться из режима Начинать С Прописных в режим нАЧИНАТЬ сО сТРОЧНЫХ), выберите пункт иЗМЕНИТЬ РЕГИСТР.

Чтобы применить к тексту написание с малых прописных букв, выделите текст, а затем на вкладке Главная в группе Шрифт щелкните стрелку в правом нижнем углу. В диалоговом окне Шрифт в разделе Видоизменение установите флажок малые прописные.

Чтобы отменить изменение дела, нажмите CTRL+Z.

Чтобы использовать сочетания клавиш для изменения регистра, верхнего и верхнего регистра в каждом слове, выберем текст и нажимаем клавиши SHIFT+F3, пока не будет применен нужный регистр.

См. также

Изменение регистра

Чтобы изменить регистр выделенного текста в документе:

Выделите текст, регистр которого нужно изменить.

Выполните одно из указанных ниже действий.

Чтобы сделать первую букву приложения прописной, а остальные оставить строчными, выберите пункт Как в предложениях.

Чтобы сделать все буквы строчными, выберите пункт все строчные.

Чтобы сделать все буквы прописными, выберите пункт ВСЕ ПРОПИСНЫЕ.

Чтобы сделать первую букву в каждом слове прописной, а остальные – строчными, выберите пункт Начинать С Прописных.

Чтобы изменить регистр на противоположный (например, переключиться из режима Начинать С Прописных в режим нАЧИНАТЬ сО сТРОЧНЫХ), выберите пункт иЗМЕНИТЬ РЕГИСТР.

Small Caps shortcut key: ⌘ +SHIFT+K

Чтобы отменить изменение дела, нажмите ⌘ +Z.

Чтобы использовать сочетания клавиш для изменения регистра, верхнего регистра и регистра каждого слова, выберем текст и нажимаем клавиши FN+SHIFT+F3, пока не будет применен нужный стиль.

См. также

PowerPoint в Интернете поддерживает изменение досье. См. процедуру ниже.

Word в Интернете не поддерживает изменение дела. Откройте документ в настольном приложении и измените его досье. Кроме того, вы можете вручную изменить casing текста в Word в Интернете.

Select the text you want to change.

Перейдите на главная > Дополнительные параметры шрифта > Изменение досье.

Источник

Изменение регистра
напечатанного текста в Word

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

Это может понадобиться, например, если текст был напечатан со случайно активированным режимом Caps Lock. Бывают также случаи, когда списки людей, предприятий, населенных пунктов или каких-то других объектов, составленные из прописных букв, нужно перевести в обычный вид.

Существует несколько способов изменения регистра. Рассмотрим самые простые и практичные из них.

Способ 1

Чтобы изменить регистр, необходимо выделить нужный участок текста, нажать клавишу «Shift» и, не отпуская ее, нажать клавишу «F3».

Регистр это в ворде что такое. registr word1. Регистр это в ворде что такое фото. Регистр это в ворде что такое-registr word1. картинка Регистр это в ворде что такое. картинка registr word1. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Для достижения требуемого результата указанную комбинацию может потребоваться нажать дважды, поскольку этим способом осуществляется переключение между 3 вариантами регистра:

• все символы прописные;

• все символы строчные;

• прописная только первая буква в каждом слове.

Способ 2

Если Вы не любите пользоваться «горячими» клавишами, регистр символов можно переключать через меню текстового редактора. Порядок действий при этом зависит от версии Word.

Word 2007, 2010, 2013, 2016:

• выделить текст, регистр которого нужно изменить;

• в меню Word, в разделе «Шрифт», щелкнуть мышкой по кнопке с названием «Аа» и в появившемся списке выбрать нужный вариант.

Регистр это в ворде что такое. registr word2. Регистр это в ворде что такое фото. Регистр это в ворде что такое-registr word2. картинка Регистр это в ворде что такое. картинка registr word2. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Word 2003 и более старые версии:

• выделить нужный участок текста;

• в меню Word щелкнуть мышкой по пункту «Формат» и в открывшемся списке выбрать «Регистр».

Регистр это в ворде что такое. registr word3. Регистр это в ворде что такое фото. Регистр это в ворде что такое-registr word3. картинка Регистр это в ворде что такое. картинка registr word3. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

• откроется окошко, в котором нужно указать необходимый вариант изменения регистра, после чего нажать кнопку «ОК».

Регистр это в ворде что такое. registr word4. Регистр это в ворде что такое фото. Регистр это в ворде что такое-registr word4. картинка Регистр это в ворде что такое. картинка registr word4. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Вот и все. Желаю успехов.

По умолчанию, Word автоматически сохраняет открытые документы каждые 10 минут в папке «C:\Users\Папка_текущего_пользователя\AppData\Roaming\Microsoft\Word\». Если компьютер вдруг внезапно выключился, при следующем открытии программы Word пользователю будет предложено открыть сохраненные копии, или же удалить их, если необходимость в них отсутствует.

Указанные выше параметры можно изменить, заставив компьютер осуществлять автосохранение в любой другой папке, а также увеличив или уменьшив его частоту. Затрудняюсь придумать пример, когда это может понадобиться, но автосохранение Word при желании можно вообще отключить.

Как известно, в текстовом редакторе Microsoft Word удобно работать с текстом. Для наглядности, в текстовые документы можно вставлять рисунки. Практически все пользователи умеют это делать.

В то же время, не многим известно как извлекать рисунки из документа Word и сохранять их в виде отдельных изображений, поскольку в этом текстовом редакторе соответствующие инструменты отсутствуют.

В текстовом редакторе Microsoft Word по левому и верхнему краям окна обычно отображается линейка. С ее помощью очень удобно изменять границы текста в документе.

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

Часто мне задают вопрос о том, как активируется нумерация страниц в Ворде.

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

Далеко не всем пользователям известно, что в текстовом редакторе Microsoft Word предусмотрена возможность одновременного редактирования одного и того же документа в нескольких окнах.

У многих из нас возникает необходимость защиты текстовых файлов паролем. При этом не важно, что в этих файлах содержится. Главное, чтобы установка пароля происходила быстро и посторонние не смогли их открыть.

Решить эту задачу способен всем хорошо известный текстовый редактор Microsoft Word, который присутствует на большинстве офисных и домашних компьютеров. Он позволяет ставить пароли на файлы всех поддерживаемых форматов (doc, docx, rtf и др.).

В разных версиях Word порядок необходимых действий отличается. Здесь Вы найдете рекомендации для Word 2010 и более старых версий.

Регистр это в ворде что такое. plus. Регистр это в ворде что такое фото. Регистр это в ворде что такое-plus. картинка Регистр это в ворде что такое. картинка plus. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.
ПОКАЗАТЬ ЕЩЕ Регистр это в ворде что такое. loader. Регистр это в ворде что такое фото. Регистр это в ворде что такое-loader. картинка Регистр это в ворде что такое. картинка loader. Необходимость изменить регистр, в котором записан текст в документе Microsoft Word, чаще всего возникает из-за невнимательности пользователя. Например, в случаях когда фрагмент набирался с включенным режимом CapsLock, то есть прописными буквами. Также иногда поменять регистр в Ворде нужно специально, сделав все буквы большими, маленькими или просто противоположными тому, что есть на данный момент. О том, как это сделать, мы расскажем далее.

Источник

Правда о регистре символов, которую должны знать программисты

На конференции North Bay Python в 2018 году я делал доклад об именах пользователей. Информация из доклада по большей части была собрана мною за 12 лет поддержки django-registration. Этот опыт дал мне гораздо больше знаний, чем я планировал получить, о том, насколько сложными могут быть «простые» вещи.

В начале доклада я, правда, упомянул, что это не будет очередное разоблачение из серии «заблуждения по поводу Х, в которые верят программисты». Таких разоблачений можно найти сколько угодно. Однако мне подобные статьи не нравятся. В них перечисляются разные вещи, якобы являющиеся ложными, однако очень редко объясняется – почему это так, и что нужно делать вместо этого. Подозреваю, что люди просто прочтут такие статьи, поздравят себя с этим достижением, и потом пойдут находить новые интересные способы делать ошибки, не упомянутые в этих статьях. Всё потому, что они на самом деле не поняли проблем, порождающих этих ошибки.

Поэтому в своём докладе я постарался как можно лучше объяснить некоторые проблемы и пояснить, как их решать – такой подход мне нравится гораздо больше. Одна из тем, которой я коснулся лишь вскользь (это был всего один слайд и пара упоминаний на других слайдах) – это сложности, которые могут быть связаны с регистром символов. Для задачи, которую я обсуждал – сравнение идентификаторов без учёта регистра – есть официальный Правильный Ответ™, и в докладе я дал лучшее из известных мне решений, использующее только стандартную библиотеку Python.

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

И ещё одно: в Unicode полно терминологии. В данной статье я буду использовать в основном определения «верхний регистр» и «нижний регистр», поскольку стандарт Unicode использует эти термины. Если вам нравятся другие термины, вроде строчная/прописная буквы – всё нормально. Также я часто буду использовать термин «символ», который некоторые могут счесть некорректным. Да, в Unicode концепция «символа» не всегда совпадает с ожиданиями людей, поэтому часто лучше избегать её, используя другие термины. Однако в данной статье я буду использовать этот термин так, как он используется в Unicode – для описания абстрактной сущности, о которой можно делать заявления. Когда это важно, для уточнения я буду использовать более конкретные термины типа «кодовой позиции» [code point].

Регистров бывает больше двух

Носители европейских языков привыкли к тому, что в их языках регистр символов используется для обозначения конкретных вещей. К примеру, в английском [и русском] языках мы обычно начинаем предложения с буквы в верхнем регистре, а продолжаем чаще всего буквами в нижнем регистре. Также имена собственные начинаются с букв в верхнем регистре, и многие акронимы и аббревиатуры записываются в верхнем регистре.

И мы обычно считаем, что регистров существует всего два. Есть буква «А», и есть буква «а». Одна в верхнем, другая в нижнем регистре – не правда ли?

Однако в Unicode есть три регистра. Есть верхний, есть нижний, и есть титульный регистр [titlecase]. В английском языке так записываются названия. Например, «Avengers: Infinity War». Обычно для этого первая буква каждого слова просто пишется в верхнем регистре (и в зависимости от разных правил и стилей, некоторые слова, например, артикли, не пишутся с заглавных букв).

В стандарте Unicode дан такой пример символа в титульном регистре: U+01F2 LATIN CAPITAL LETTER D WITH SMALL Z. Выглядит он так: Dz.

Подобные символы иногда требуются для обработки негативных последствий одного из ранних решений разработки стандарта Unicode: совместимости с существующими текстовыми кодировками в обе стороны. Для Unicode было бы удобнее составлять последовательности при помощи имеющихся у стандарта возможностей по комбинированию символов. Однако во многих уже существующих системах уже были отведены места для готовых последовательностей. К примеру, в стандарте ISO-8859-1 («latin-1») у символа «é» есть готовая форма, имеющая номер 0xe9. В Unicode предпочтительнее было бы писать эту букву при помощи отдельной «е» и знака ударения. Но для обеспечения полной совместимости в обе стороны с такими существующими кодировками, как latin-1, в Unicode также назначены кодовые позиции для готовых символов. К примеру, U+00E9 LATIN SMALL LETTER E WITH ACUTE.

Хотя кодовая позиция этого символа совпадает с его байтовым значением из latin-1, полагаться на это не стоит. Вряд ли кодирование символов в Unicode сохранит эти позиции. К примеру, в UTF-8 кодовая позиция U+00E9 записана в виде байтовой последовательности 0xc3 0xa9.

И, конечно, в уже существующих кодировках есть символы, которым требовалось особое обхождение при использовании титульного регистра, из-за чего они были включены в Unicode «как есть». Если хотите посмотреть на них, поищите в своей любимой базе Unicode символы из категории Lt («Letter, titlecase»).

Есть несколько способов определить регистр

Если вы работаете с ограниченным подмножеством символов (конкретно, с буквами), то вам может хватить и 1-го определения. Если ваш репертуар шире – в него входят похожие на буквы символы, не являющиеся буквами, вам может подойти 2-е определение. Его рекомендует и стандарт Unicode, §4.2:

Программистам, манипулирующим строками в Unicode, стоит работать с такими строковыми функциями, как isLowerCase (и её функциональным родственником toLowerCase), если они не работают со свойствами символов напрямую.

Упомянутая здесь функция определяется в §3.13 стандарта Unicode. Формально в 3-м определении используются функции isLowerCase и isUpperCase из §3.13, определяемые в терминах фиксированных позиций в toLowerCase и toUpperCase соответственно.

Если в вашем языке программирования есть функции для проверки или преобразования регистра строк или отдельных символов, стоит изучить, какие из упомянутых определений используются в реализации. Если вам интересно, то методы isupper() и islower() в Python используют 2-е определение.

Нельзя понять регистр символа по его внешнему виду или названию

По внешнему виду многих символов можно понять, в каком они регистре. К примеру, «А» находится в верхнем регистре. Это понятно и по названию символа: «LATIN CAPITAL LETTER A». Однако иногда такой метод не работает. Возьмём кодовую позицию U+1D34. Выглядит она так: ᴴ. В Unicode ей назначено имя: MODIFIER LETTER CAPITAL H. Значит, она в верхнем регистре, так?

На самом же деле она наследует свойство Lowercase, поэтому по определению №2 она находится в нижнем регистре, несмотря на то, что визуально напоминает заглавную Н, а в названии есть слово «CAPITAL».

У некоторых символов вообще нет регистра

Символ С имеет регистр тогда и только тогда, когда у С есть свойство Lowercase или Uppercase, или значение параметра General_Category равно Titlecase_Letter.

Значит, очень много символов из Unicode – на самом деле, большая их часть – регистра не имеет. Не имеют смысла вопросы об их регистре, а изменения регистра на них не действуют. Однако мы можем получить ответ на этот вопрос по определению №3.

Некоторые символы ведут себя так, будто у них несколько регистров

Из этого следует, что если вы используете определение №3, и задаёте вопрос, находится ли символ без регистра в верхнем или нижнем регистре, вы получите ответ «да».

В стандарте Unicode даётся пример (таблица 4-1, строка 7) символа U+02BD MODIFIER LETTER REVERSED COMMA (который выглядит так: ʽ). У него нет унаследованных свойств Lowercase или Uppercase, он не принадлежит к категории Lt, поэтому регистра у него нет. При этом преобразование в верхний регистр его не меняет, и преобразование в нижний регистр его не меняет, поэтому по 3-му определению он отвечает «да» на оба вопроса: «принадлежишь ли ты к верхнему регистру?» и «принадлежишь ли ты к нижнему регистру?»

Кажется, что из-за этого может возникнуть никому не нужная путаница, однако смысл в том, что определение №3 работает с любой последовательностью символов Unicode, и позволяет упростить алгоритмы преобразования регистра (символы без регистра просто превращаются сами в себя).

Регистр зависит от контекста

Можно подумать, что если таблицы преобразования регистра в Unicode покрывают все символы, то это преобразование заключается просто в поиске нужного места в таблице. К примеру, в базе данных Unicode записано, что для символа U+0041 LATIN CAPITAL LETTER A нижним регистром будет U+0061 LATIN SMALL LETTER A. Просто, не так ли?

Один из примеров, в котором этот подход не работает – греческий язык. Символ Σ — то есть, U+03A3 GREEK CAPITAL LETTER SIGMA — сопоставлен двум разным символам при преобразовании в нижний регистр, в зависимости от того, где он находится в слове. Если он стоит на конце слова, тогда в нижнем регистре он будет ς (U+03C2 GREEK SMALL LETTER FINAL SIGMA). В любом другом месте это будет σ (U+03C3 GREEK SMALL LETTER SIGMA).

Регистр зависит от локали

В разных языках правила преобразования регистра разные. Самый популярный пример: i (U+0069 LATIN SMALL LETTER I) и I (U+0049 LATIN CAPITAL LETTER I) в большинстве локалей преобразовываются друг в друга – в большинстве, но не во всех. В локалях az и tr (тюркские языки), i в верхнем регистре будет İ (U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE), а I в нижнем регистре будет ı (U+0131 LATIN SMALL LETTER DOTLESS I). Иногда правильная запись реально означает разницу между жизнью и смертью.

Сам Unicode не обрабатывает все возможные правила преобразования регистра для всех локалей. В базе данных Unicode есть только общие правила преобразования всех символов, не зависящие от локали. Также там есть особые правила для некоторых языков и составных форм – литовского языка, тюркских языков, некоторых особенностей греческого. Всего остального там нет. §3.13 стандарта упоминает это и рекомендует при необходимости вводить правила преобразования, зависящие от локали.

Один пример будет знаком англоговорящим – это титульный регистр определённых имён. «o’brian» нужно преобразовывать в «O’Brian» (а не в «O’brian»). Однако при этом «it’s» нужно преобразовывать в «It’s», а не в «It’S». Ещё один пример, который не обрабатывается в Unicode – это голландское буквосочетание «ij», которое при преобразовании в титульный регистр должно переходить в верхний регистр целиком, если стоит в начале слова. Таким образом, большой залив в Нидерландах в титульном регистре будет «IJsselmeer», а не «Ijsselmeer». В Unicode есть символы IJ U+0132 LATIN CAPITAL LIGATURE IJ и ij U+0133 LATIN SMALL LIGATURE IJ, если они вам нужны. По умолчанию преобразование регистра преобразует их друг в друга (хотя формы нормализации Unicode, использующие эквивалентность совместимости, разделят их на два отдельных символа).

Сравнение без учёта регистра требует приведения к сложенному регистру

Возвращаясь к материалу, представленному в докладе. Сложность работы с регистром в Unicode означает, что регистронезависимое сравнение нельзя проводить при помощи стандартных функций приведения к нижнему или верхнему регистру, имеющихся во многих языках программирования. Для таких сравнений в Unicode есть концепция приведения к сложенному регистру [case folding], а в §3.13 стандарта определяются функции toCaseFold и isCaseFolded.

Можно решить, что приведение к сложенному регистру похоже на приведение к нижнему регистру – но это не так. Стандарт Unicode предупреждает, что строка в сложенном регистре не обязательно будет находиться в нижнем регистре. В качестве примера приводится язык чероки – там в строке, находящейся в сложенном регистре, будут попадаться и символы в верхнем регистре.

На одном из слайдов моего доклада рекомендации Unicode Technical Report #36 реализуются на Python настолько полно, насколько это возможно. Проводится нормализация NFKC и потом для полученной строки вызывается метод casefold() (доступный только в Python 3+). И даже при этом некоторые крайние случаи выпадают, и это не совсем то, что рекомендуется для сравнения идентификаторов. Сначала плохие новости: Python не выдаёт наружу достаточно свойств Unicode для того, чтобы отфильтровать символы, которых нет в XID_Start или XID_Continue или символы, имеющие свойство Default_Ignorable_Code_Point. Насколько мне известно, он не поддерживает отображение NFKC_Casefold. Также в нём нет простого способа использовать модифицированный NFKC UAX #31§5.1.

Хорошие новости: большинство этих крайних случаев не связано с какими-либо реальными рисками безопасности, создаваемыми рассматриваемыми символами. И складывание регистра в принципе не определяется как операция, сохраняющая нормализацию (отсюда и отображение NFKC_Casefold, которое повторно нормализуется до NFC после складывания регистра). Как правило, при сравнении вас не волнует, будут ли обе строки нормализованы после предварительной обработки. Вас заботит, не противоречива ли предварительная обработка, и гарантирует ли она, что только строки, которые «должны» отличаться впоследствии, будут отличаться впоследствии. Если вас это беспокоит, вы можете вручную выполнить повторную нормализацию после сложения регистра.

Пока достаточно

Эта статья, как и предыдущий доклад, не является исчерпывающей, и вряд ли можно уложить весь этот материал в единственный пост. Надеюсь, что это был полезный обзор сложностей, связанных с этой темой, и вы найдёте в нём достаточно отправных точек для того, чтобы искать дальнейшую информацию. Поэтому в принципе, можно остановиться и тут.

Не будет ли наивной моя надежда на то, что другие люди перестанут писать разоблачения из серии «заблуждения по поводу Х, в которые верят программисты», и начнут уже писать статьи типа «правда, которую должны знать программисты»?

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *