Как остановить Mac для преобразования ввода двойного тире в emdash?


93

Я думаю, что это вещь Горного Льва, когда вы печатаете - (тире) дважды, это становится - (эмдаш). Когда вы набираете tm, он становится ™ (символом торговой марки). Или когда вы печатаете три. (точка) становится ... (элипсис). Некоторые полезны, некоторые очень раздражают. В целом, я хочу остановить это. Как мне этого добиться?


2
Просто примечание для других читающих: если это не OSX для вас, то это может быть ваш текстовый редактор. Мне пришлось изменить TextEdit с настройками & gt; Умные тире.
— levininja

Интересно, каково решение macOS Sierra.
— Charlie Parker

Кажется, что некоторые приложения должны быть закрыты и открыты для работы. Я использовал приложение заметок, и, кажется, оно не работало, пока я не закрыл открытое приложение (полностью закрыл его). Возможно, я сделал defaults write 'Apple Global Domain' NSAutomaticDashSubstitutionEnabled 0но кто знает.
— Charlie Parker

Ответы:


97

(в Sierra 10.12 это теперь на панели управления клавиатурой)

Перейдите в системные настройки и выберите «Язык и текст».

enter image description here

На вкладке «Текст» вы найдете список замен.

enter image description here

Если вы хотите остановиться -- от превращения в — (emdash) вам нужно использовать + кнопку и добавить новое правило для замены -- с -- (замени на себя)

Или щелкните правой кнопкой мыши в текстовом поле и перейдите в «Замены» и отключите «Умные тире»

Stupid Dashes


4
ну ладно, так что если я сделаю другое правило как "-" к "-", то это спасет мои двойные черточки. Спасибо!
— beatak

4
Добавление - быть замененным на себя, похоже, не работает в Yosemite (и Keynote) :(
— Balint Erdi

2
@BalintErdi Я только что нашел этот вопрос снова погуглив по вопросу, нашел ответ, подумал Хм, это не работает, какой идиот отправил этот трюк а потом увидел, что это было собственное проклятое редактирование , ЛОЛ. Я только что обновил ответ, надеюсь, теперь он работает лучше!
— Josh

5
El Capitan 11.11 Теперь это на панели управления клавиатуры.
— vy32

2
Мне пришлось закрыть и снова открыть TextEdit, чтобы он работал на Yosemite. Перезагрузка не требуется.
— Kris

48

Я столкнулся с этой же проблемой на Mavericks (10.9), где исправление слегка изменилось. Перейдите в «Системные настройки», затем «Язык и регион», затем нажмите кнопку «Настройки клавиатуры ...» и перейдите на вкладку «Текст». Однако это уже не замена, а вместо этого в правой части окна есть галочка «Использовать умные кавычки и тире». Отмена этого остановит превращение двух дефисов в черту.

Одна небольшая ошибка: в 10.9.5 с TextEdit (и, возможно, с другими) вы должны выйти и перезапустить редактор, чтобы изменения вступили в силу.


1
А также отключает умные цитаты. Я понятия не имею, почему Apple решила смешать эти два в одном ведре в настройках. К счастью, вы можете отключить их по отдельности в разделе Изменить & gt; Замены, хотя это поведение для каждого приложения.
— dgatwood

8
По крайней мере, в 10.11 El Capitan можно отключить только умные тире (сохраняя умные кавычки), запустив defaults write 'Apple Global Domain' NSAutomaticDashSubstitutionEnabled 0 из терминала. Есть две отдельные настройки под капотом, NSAutomaticDashSubstitutionEnabled а также NSAutomaticQuoteSubstitutionEnabled, оба из которых переключаются с помощью флажка «Использовать умные кавычки и тире». Но от Apple нет никаких гарантий, что это не изменится в будущих версиях OS X.
— Adam Rosenfield

1
Большое спасибо @AdamRosenfield, ваше решение, безусловно, лучшее из перечисленных здесь.
— zanona

1
@AdamRosenfield, вы должны поднять этот комментарий до ответа, чтобы мы могли проголосовать за него. :-)
— Nick K9

ты уверен, что это работает? Нужно ли перезагрузить мой Mac или перезапустить мои приложения?
— Charlie Parker

24

В 11.11 это под System Preferences & GT; Keyboard, Есть флажок для Use smart quotes and dashes,

Клавиатура прив в 11.11


3
Кроме того, это также отключает умные кавычки, которые вы, вероятно, не хотеть сделать. Отключение умных черточек в разделе «Правка» & gt; Подстановки решают проблему более четко (отключая только тире), с оговоркой, что это поведение для каждого приложения. (Зачем!?!)
— dgatwood

1
Почему вы хотите умные цитаты? Я всегда считал, что это решение проблемы, которой никогда не было. Они также особенно ужасны для программистов.
— CoreDumpError

ты уверен, что это работает? Нужно ли перезагрузить мой Mac или перезапустить мои приложения?
— Charlie Parker

@dgatwood Так что не все приложения поддерживают Edit & gt; Substitions. Например, в Slack я не вижу другого решения, кроме как отключить оба, как предлагает этот ответ. +1 за этот ответ (хотя я не против умных цитат, если их напечатать)
— Mark Edington

15

В более ранних версиях Mac OS X в системных настройках клавиатуры было два отдельных параметра для интеллектуальных кавычек и интеллектуальных черточек; однако по крайней мере в версиях с 10.9 по 10.11 этот параметр был заменен одним предпочтением «Использовать умные кавычки и тире».

К счастью, под капотом все еще есть два отдельных предпочтения, и флажок UI переключает их обоих одновременно. Вы можете включить или отключить только одну из умных цитат или умных черточек из терминала:

# Disable just smart dashes
defaults write -g NSAutomaticDashSubstitutionEnabled 0

# Disable just smart quotes
defaults write -g NSAutomaticQuoteSubstitutionEnabled 0

# To re-enable, set either back to 1.

В настоящее время это верно для OS X 10.11; это может измениться в будущих версиях OS X (или macOS, как теперь будет называться).


Работает по состоянию на 10.12.6 - спасибо!
— Glenn

До сих пор работает и на 10.13.
— ShiDoiSi

4

Не уверен, что у вас, ребята, до сих пор есть эта проблема, но я только что обнаружил, насколько это может быть неприятно. Я писал сценарий Unix для Apple Remote Desktop, который требует --get флаг, и он продолжал преобразовываться в тире, разрушая команду.

Я не мог найти способ отключить конвертацию в тире, но все надежды не потеряны. На языке & amp; Текстовое меню (вкладка «Текст») Я создал запись, которая заменяет -- с -- (то есть он заменяет собой две черты). Это отменяет систему преобразования -- в тире.


2

Стоит отметить, что даже с включенным «использовать умные кавычки и тире» вы все равно можете «отменить» автоматическое преобразование в (emdash), нажав CMD + Z. Если отключение умных штрихов звучит слишком экстремально, это один из способов вернуть - (двойная черта).

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

git config --global user.name “Steve”       //instead of...
git config --global user.name "Steve"

Хотя я копировал / вставлял команду прямо из Инструкция GitHub TextEdit «исправлял» мои цитаты, прежде чем я поместил их в Терминал. Невероятно! Это сводило меня с ума, но я поправляюсь ...


1

Если вы используете инструменты Apple «Office»: «Страница», «Число» и т. Д., Настройки в Системных настройках или в командной строке по умолчанию, как упоминалось в предыдущих ответах, не влияют на интеллектуальные замены. Вместо этого вам придется перейти на верхнюю панель инструментов Edit & gt; Меню «Замены» для проверки или снятия отметки «Умные цитаты», «Умные тире» и т. Д.

Если вы используете TextEdit, то ответ 7stud - это путь, который приведен здесь для полноты: TextEdit & gt; Предпочтения и проверьте / снимите флажок настройки в нижних разделах.


1

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

    defaults write -app 'Keynote' TSWPAutomaticDashSubstitution 0

или же

    defaults write 'Apple Global Domain' TSWPAutomaticDashSubstitution 0

Первый отключает замену тире для конкретного приложения (здесь, лейтмотив ); вторая для всех приложений, которые не имеют своих собственных, переопределенных, по умолчанию установленных явно. замещать 0 от 1 снова включить замену тире.

Как указывалось в других ответах, глобальное значение по умолчанию также можно изменить с помощью Системные настройки (Клавиатура & gt; Текст & gt; Флажок "Использовать умные кавычки и тире"), но это включает и выключает котировка замена так же как замена тире. Более того, некоторые приложения, но не все, позволяют изменять свои настройки по умолчанию, щелкая мышью в текстовом поле и выбирая Замены или же Показать замены , Например, почта позволяет вам сделать это, но лейтмотив не.

Если вы хотите включить замену цитаты, скажем, для лейтмотив использование

defaults write -app 'Keynote' NSAutomaticQuoteSubstitutionEnabled 1

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

defaults write 'Apple Global Domain' NSAutomaticQuoteSubstitutionEnabled 1

Чтобы выключить его, используйте 0 вместо 1,


Для Slack, где это сводило меня с ума, я думаю, что ключ настройки WebAutomaticDashSubstitutionEnabled,
— Michael

1

Если вы просто хотите, чтобы это не происходило время от времени или в каком-то конкретном случае, вы можете просто подождать, пока Mac внесет нежелательные изменения, и затем нажать CMD+z отменить.


Вы проверяли это с помощью «-» и «-», чтобы подтвердить, что это работает, как ожидалось, как описано в OP?
— Pimp Juice IT

0

Yosemite 10.2 and TextEdit:

  1. Запустите TextEdit.

  2. TextEdit & GT; Предпочтение

  3. В правом нижнем углу снимите флажок Smart dashes ,

  4. Если ваш файл TextEdit открыт, закройте его и снова откройте.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.