Курсор выделяет букву как убрать
Перейти к содержимому

Курсор выделяет букву как убрать

  • автор:

При наборе текста удаляется следующая буква (а раньше она просто добавлялась к уже имеющимся). Что делать?

pechat-ta-uzhe-ne-ta

Доброго времени суток!

В офисной работе некоторые пользователи случайно включают спец. режим печати — при наборе текста удаляется следующая буква (т.е. каждый новый символ заменяет старый). Разумеется, при редактировании обычных документов — это очень не удобно и сильно раздражает! ��

Собственно, после очередного случая, когда меня побеспокоили по «этому» вопросу — решил подобную статью с «лечением» проблемы выложить не только в локальной сети, но и здесь, у себя в «офисных» заметках. Думаю, она будет весьма полезна всем неискушенным пользователям!

�� ШАГ 1: включаем режим «обычной» печати

Дело в том, что в Windows есть два режима набора текста:

  1. «вставка» — самый обычный режим, к которому все привыкли (текст при печати появляется сразу после курсора, а всё, что было справа автоматически смещается);
  2. «замена» — спец. режим, при котором новый добавленный символ появляется вместо старого, который был перед курсором (этим удобно пользоваться только в определенных случаях).

�� Важно!

1) Для переключения между режимами «вставка» и «замена» в Windows используется клавиша Insert (или «ins» на ноутбуках). Обратите внимание, что на тех же ноутбуках её нужно нажимать вместе с клавишей Fn!

2) Чтобы вернуть в первоначальный вид стёртые символы и слова — нужно нажать сочетание Ctrl+Z (можно несколько раз. ).

Разумеется, пользователи чаще всего задействуют этот режим при нажатии кнопки «0» на цифровой клавиатуре (при выключенном режиме «num lock») .

Клавиша Insert

Клавиша «Insert» (или «ins» на ноутбуках)

Собственно, как только вы столкнулись с неправильным режимом печати — просто используйте эту клавишу, и смените его. ��

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

�� ШАГ 2: как программе MS Word запретить переводить редактор в режим «замена»

Если вы сравнительно часто «натыкаетесь» на этот не очень удобный режим работы редактора (и стираете нужные слова ☝) — то, как один из вариантов решения, можно предложить вообще отключить эту «замену» (т.е. при нажатии на клавишу Insert — в Word ничего происходить не будет!).

Делается это достаточно просто: сначала нужно открыть меню «Файл/параметры» , а после во вкладке «Дополнительно» снять галочку с пункта «Использовать клавишу INS для переключения режимов вставки и замена» (см. скриншот ниже ��) .

Использовать клавишу INS для переключения режимов вставки и замена

Использовать клавишу INS для переключения режимов вставки и замена

�� ШАГ 3: еще один радикальный вариант решения — отключение клавиши Insert

Этот вариант больше подойдет пользователям с классической клавиатурой (на ноутбуках такой «фокус» проходит реже).

Суть метода заключается в том, чтобы ОС Windows «указать», что при нажатии кнопки Insert ничего не происходило (т.е. «обнулить» ее). Сделать это можно �� через редактор реестра, всего три действия:

  1. сначала открыть ветку: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout ;
  2. создать в этой ветке параметр (Binary) с именем «Value Scancode Map» (без кавычек) ;
  3. ну и задать в значение параметра нижеприведенную строку (см. скрин ниже ��, более подробно об этом тут).

Отключили INS

Отключили INS

�� Кстати!

Для более простого отключения клавиши Insert — можно воспользоваться спец. утилитой MapKeyboard . Пользоваться ей очень просто: достаточно один раз запустить и установить вместо Insert что-нибудь «безобидное» (Shift, например, см. скрин ниже ��).

MapKeyboard: всего три действия для замены клавиши.

MapKeyboard: всего три действия для замены клавиши.

�� В помощь!

Как переназначить одну клавишу на другую (тем, у кого не срабатывает нажатие кнопки на клавиатуре)

Мышь: отмена выделения, невыделяемые элементы

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Более новая информация по этой теме находится на странице https://learn.javascript.ru/selection-range.

У кликов мыши есть неприятная особенность.

Двойной клик или нажатие с движением курсора как правило инициируют выделение текста.

Если мы хотим обрабатывать эти события сами, то такое выделение – некрасиво и неудобно. В этой главе мы рассмотрим основные способы, как делать элемент невыделяемым.

Для полноты картины, среди них будут и такие, которые применимы не только к событиям мыши.

Способ 1: отмена mousedown/selectstart

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

Если сделать двойной клик на таком элементе, то обработчик сработает. Но побочным эффектом является выделение текста браузером.

Текст

Чтобы избежать выделения, мы должны предотвратить действие браузера по умолчанию для события selectstart в IE и mousedown в других браузерах.

Полный код элемента, который обрабатывает двойной клик без выделения:

 
Двойной клик сюда выведет "Тест", без выделения

При установке на родителя – все его потомки станут невыделяемыми:

Выделение, всё же, возможно

Отмена действия браузера при mousedown/selectstart отменяет выделение при клике, но не запрещает его полностью.

Если пользователь всё же хочет выделить текстовое содержимое элемента, то он может сделать это.

Достаточно начать выделение (зажать кнопку мыши) не на самом элементе, а рядом с ним. Ведь там отмены не произойдёт, выделение начнётся, и дальше можно передвинуть мышь уже на элемент.

Способ 2: снятие выделения постфактум

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

Для этого мы используем методы работы с выделением, которые описаны в отдельной главе Выделение: Range, TextRange и Selection. Здесь нам понадобится всего лишь одна функция clearSelection , которая будет снимать выделение.

Пример со снятием выделения при двойном клике на элемент списка:

У этого подхода есть две особенности, на которые стоит обратить внимание:

  • Выделение всё же производится, но тут же снимается. Это выглядит как мигание и не очень красиво.
  • Выделение при помощи передвижения зажатой мыши всё ещё работает, так что посетитель имеет возможность выделить содержимое элемента.

Способ 3: свойство user-select

Существует нестандартное CSS-свойство user-select , которое делает элемент невыделяемым.

Оно когда-то планировалось в стандарте CSS3, потом от него отказались, но поддержка в браузерах уже была сделана и потому осталась.

Это свойство работает (с префиксом) везде, кроме IE9-:

  Строка до.. 
Этот текст нельзя выделить (кроме IE9-)
.. Строка после

IE9-: атрибут unselectable=«on»

В IE9- нет user-select , но есть атрибут unselectable.

Он отменяет выделение, но у него есть особенности:

  1. Во-первых, невыделяемость не наследуется. То есть, невыделяемость родителя не делает невыделяемыми детей.
  2. Во-вторых, текст, в отличие от user-select , всё равно можно выделить, если начать выделение не на самом элементе, а рядом с ним.
 
Этот текст невыделяем в IE, кроме дочерних элементов

Левая часть текста в IE не выделяется при двойном клике. Правую часть ( em ) можно выделить, т.к. на ней нет атрибута unselectable .

Этот текст невыделяем в IE, кроме дочерних элементов

Итого

Для отмены выделения есть несколько способов:

  1. CSS-свойство user-select – везде кроме IE9- (нужен префикс, нестандарт).
  2. Атрибут unselectable=»on» – работает для любых IE (должен быть у всех потомков)
  3. Отмена действий на mousedown и selectstart :

elem.onmousedown = elem.onselectstart = function() < return false; >;

Какой же способ выбирать?

Это зависит от задач и вашего удобства, а также конкретного случая. Все описанные способы работают.

Недостаток user-select – в том, что посетитель теряет возможность скопировать текст. А что, если он захочет именно это сделать?

В любом случае эти способы не предназначены для защиты от выделения-и-копирования.

Если уж хочется запретить копирование – можно использовать событие oncopy :

 
Уважаемый копирователь, почему-то автор хочет заставить вас покопаться в исходном коде этой страницы. Если вы знаете JS или HTML, то скопировать текст не составит для вас проблемы, ну а если нет, то увы.

Выделяется буква при редактировании текста! Как исправить?

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

Максим Суворов

Кнопка Insert нажата)))))))) ) ) она над стрелками либо на цифирном блоке на клавиатуре кнопка ноль при выключенной лампе Num Lock

Ищи кнопку Insert либо Ins

Как убрать толстую строку в PyCharm

При начале использовании программы и при выделение кода вместо обычной строки появляеться толстая белая строчка, которую никак кроме нажатия буквы S не убрать. Также с ней невозможно вписать хоть что-то в код, и исправить что-то там. Проблема в программе PyCharm на macOS. [1]: https://i.stack.imgur.com/fwlUD.png строка до выделения [2]: https://i.stack.imgur.com/gHLKh.png строка после выделения

Отслеживать

задан 19 янв 2020 в 13:08

3 1 1 серебряный знак 3 3 бронзовых знака

У вас клавиатура переведена в режим замены (клавиша ins)

19 янв 2020 в 16:05

А какая клавиша на macbook отвечает за это?

19 янв 2020 в 20:26

Скачал эмулятор, заменил клавишу fn на insert, но ничего не поменялось.

19 янв 2020 в 20:55

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

  1. Как указывали выше File > Settings > Editor > General > Appearance убрать галочку ‘Use block caret’
  2. Отключить плагин IdeaVim

Отслеживать

49k 17 17 золотых знаков 56 56 серебряных знаков 100 100 бронзовых знаков

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

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