Come fermare Mac per convertire digitando doppio trattino in emdash?


102

Penso che sia una cosa di Mountain Lion, quando si digita - (trattino) due volte, diventa - (emdash). Quando si digita tm, diventa ™ (simbolo del marchio). O quando digiti tre. (punto), diventa ... (elipsis). Alcuni sono utili, altri sono molto fastidiosi. Nel complesso, voglio fermarlo. Come posso raggiungere questo obiettivo?


2
Solo una nota per le altre persone che leggono, che se non è una cosa OSX per te, allora potrebbe essere il tuo editor di testo. Ho dovuto modificare TextEdit con Preferenze> Tratteggi intelligenti.
levininja,

mi chiedo quale sia la soluzione di macOS Sierra.
Charlie Parker,

Sembra che alcune app debbano essere chiuse e aperte affinché le cose funzionino. Stavo usando l'app Note e sembra che non abbia funzionato fino a quando non ho chiuso un'app aperta (completamente chiusa). Potrebbe essere stato così defaults write 'Apple Global Domain' NSAutomaticDashSubstitutionEnabled 0, ma chi lo sa.
Charlie Parker,

Risposte:


102

(su Sierra 10.12, questo è ora nel pannello di controllo della tastiera)

Vai alle preferenze di sistema e seleziona "Lingua e testo"

inserisci qui la descrizione dell'immagine

Nella scheda "Testo" troverai l'elenco delle sostituzioni.

inserisci qui la descrizione dell'immagine

Se vuoi interrompere la --trasformazione in (emdash) devi usare il pulsante + e aggiungere una nuova regola da sostituire --con --(sostituisci con se stesso)

Oppure, fai clic con il pulsante destro del mouse in un campo di testo e vai a "Sostituzioni" e disabilita "Smart Dashes"

Cretini stupidi


4
ah va bene, quindi se faccio un'altra regola come "-" a "-", allora salva i miei doppi trattini. Grazie!
beatak,

4
Aggiunta - essere sostituito da solo non sembra funzionare in Yosemite (e Keynote) :(
Balint Erdi

2
@BalintErdi Ho appena trovato di nuovo questa domanda cercando su Google il problema, ho trovato la risposta, ho pensato Hmmm, questo non funziona, quale idiota ha pubblicato quel trucco e poi ho visto che era una maledetta modifica . LOL. Ho appena aggiornato la risposta, spero che ora funzioni meglio!
Josh,

5
El Capitan 11.11Questo è ora sul pannello di controllo della tastiera.
vy32,

2
Ho dovuto chiudere e riaprire TextEdit perché funzionasse su Yosemite. Nessun riavvio richiesto.
Kris,

49

Ho riscontrato questo stesso problema su Mavericks (10.9), dove la correzione è leggermente cambiata. Vai su Preferenze di Sistema, quindi su "Lingua e area geografica", quindi fai clic sul pulsante "Preferenze tastiera ..." e vai alla scheda "Testo". Non è più una sostituzione, tuttavia, ma invece sul lato destro della finestra è presente una casella di controllo "Usa virgolette e trattini intelligenti". Deselezionando questa opzione si interrompe cambiando due trattini in un trattino.

Un piccolo problema: su 10.9.5 con TextEdit (e probabilmente altri) è necessario uscire quindi riavviare l'editor per rendere effettive le modifiche.


1
E disabilita anche le virgolette intelligenti. Non ho idea del perché Apple abbia deciso di raggruppare quei due nello stesso bucket nelle preferenze. Fortunatamente, puoi disabilitarli singolarmente in Modifica> Sostituzioni, sebbene tale comportamento sia per app.
dgatwood,

8
Almeno nel 10.11 El Capitan, è possibile disabilitare solo i trattini intelligenti (mantenendo le virgolette intelligenti) eseguendo defaults write 'Apple Global Domain' NSAutomaticDashSubstitutionEnabled 0dal terminale. Ci sono due impostazioni separate sotto il cofano NSAutomaticDashSubstitutionEnablede NSAutomaticQuoteSubstitutionEnabled, entrambe vengono attivate dalla casella di controllo dell'interfaccia utente "Usa virgolette e trattini intelligenti". Ma non c'è garanzia da parte di Apple che ciò non cambierà nelle versioni future di OS X.
Adam Rosenfield,

1
grazie mille @AdamRosenfield, la tua soluzione è di gran lunga la migliore elencata qui.
zanona,

1
@AdamRosenfield, dovresti elevare questo commento a una risposta in modo che possiamo votare per questo. :-)
Nick K9

sei sicuro che funzioni? Devo riavviare il mio Mac o riavviare le mie app?
Charlie Parker,

25

Nell'11.11 questo è sotto System Preferences> Keyboard. C'è una casella di spunta per Use smart quotes and dashes.

Tastiera pref. 11.11


4
Tranne che farlo disabilita anche le virgolette intelligenti, che probabilmente non vuoi fare. La disattivazione dei trattini intelligenti in Modifica> Sostituzioni risolve il problema in modo più chiaro (disattivando solo i trattini), con l'avvertenza che il comportamento è per app. (Perché!?!)
dgatwood,

1
Perché vorresti citazioni intelligenti? Ho sempre considerato quelle una soluzione a un problema che non è mai esistito. Sono anche particolarmente orribili per i programmatori.
coredumperror,

sei sicuro che funzioni? Devo riavviare il mio Mac o riavviare le mie app?
Charlie Parker,

@dgatwood Quindi non tutte le applicazioni supportano Modifica> Sottostazioni. In Slack, ad esempio, non vedo altra soluzione se non quella di disabilitare entrambi come suggerisce questa risposta. +1 per questa risposta (anche se non mi dispiace citazioni intelligenti se le
digito

17

Nelle versioni precedenti di Mac OS X, c'erano due opzioni separate per virgolette intelligenti e trattini intelligenti nelle Preferenze di Sistema tastiera; tuttavia, almeno nelle versioni da 10.9 a 10.11, tale opzione è stata sostituita da una singola preferenza "Usa virgolette e trattini intelligenti".

Fortunatamente, ci sono ancora due preferenze separate sotto il cofano e la casella di controllo dell'interfaccia utente attiva o disattiva entrambe le opzioni contemporaneamente. Puoi abilitare o disabilitare solo una delle virgolette intelligenti o dei trattini intelligenti dal terminale:

# 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.

Questo è attualmente vero a partire da OS X 10.11; questo potrebbe cambiare nelle future versioni di OS X (o macOS, come verrà ora chiamato).


Funziona ancora dal 10.12.6 - grazie!
Glenn,

Funziona anche su 10.13.
ShiDoiSi

4

Non sono sicuro che voi gente stiate ancora riscontrando questo problema, ma ho appena scoperto quanto possa essere frustrante. Stavo scrivendo uno script unix per Apple Remote Desktop che richiede una --getbandiera e continuava a essere convertito in un trattino, rovinando il comando.

Non sono riuscito a trovare un modo per disattivare la conversione del trattino, ma ogni speranza non è persa. Nel menu Lingua e testo (scheda Testo) ho creato una voce che sostituisce --con --(ovvero sostituisce due trattini con se stessa). Ciò sostituisce la conversione del sistema --in un trattino.


3

Vale la pena ricordare che anche con "usa virgolette e trattini intelligenti" abilitati, puoi ancora "annullare" la conversione automatica di - in - (emdash) premendo CMD + Z. Se disattivare i trattini intelligenti suona completamente troppo estremo, questo è un modo per riportare il - (doppio trattino).

Inoltre, ecco la mia storia horror sulle "citazioni ricce:" Ho usato Github per anni e mi chiedevo perché i miei "contributi" non fossero mai apparsi correttamente sul mio profilo. Alla fine ho scoperto di aver configurato il mio nome utente git nel terminale con virgolette invece di segni diritti:

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

Anche se stavo copiando / incollando il comando direttamente dalle istruzioni di GitHub , TextEdit stava “aggiustando” le mie virgolette prima di metterle nel Terminale. Incredibile! Questo mi ha fatto impazzire, ma mi sto riprendendo ...


3

Questo comportamento è controllato da un valore predefinito di sistema. Per disattivarlo, digitare al terminale:

    per impostazione predefinita scrivi -app 'Keynote' TSWPAutomaticDashSubstitution 0

o

    le impostazioni predefinite scrivono TSWPAutomaticDashSubstitution 'Apple Global Domain' 0

Il primo disattiva la sostituzione del trattino per una particolare app (qui, Keynote ); il secondo per tutte le app che non hanno il proprio, prevalente, impostazione predefinita impostata esplicitamente. Sostituisci 0con 1per riattivare la sostituzione del trattino.

Come indicato in altre risposte, è possibile modificare l'impostazione predefinita globale anche tramite Preferenze di Sistema (Tastiera> Testo> Casella di controllo "Usa virgolette e trattini intelligenti"), ma questo attiva e disattiva la sostituzione delle virgolette e la sostituzione del trattino. Inoltre, alcune app, ma non tutte, consentono di modificare le impostazioni predefinite facendo clic tenendo premuto il tasto Ctrl in un campo di testo e selezionando Sostituzioni o Mostra sostituzioni . Ad esempio, Mail ti consente di farlo, ma Keynote no.

Se vuoi attivare la sostituzione del preventivo, ad esempio, per l' utilizzo di Keynote

per impostazione predefinita scrivi -app 'Keynote' NSAutomaticQuoteSubstitutionEnabled 1

oppure, per attivarlo per tutto ciò che non ha un valore predefinito prevalente, utilizzare

per impostazione predefinita scrivere 'Apple Global Domain' NSAutomaticQuoteSubstitutionEnabled 1

Per disattivarlo, utilizzare 0invece di 1.


Per Slack, dove questo mi stava facendo impazzire, penso che la chiave di impostazione sia WebAutomaticDashSubstitutionEnabled.
Michael,

Esattamente quello che stavo cercando, grazie per averlo condiviso!
Rogare,

2

Se stai utilizzando gli strumenti "Office" di Apple: Pagina, Numero, ecc., Le impostazioni in Preferenze di Sistema o il comando predefinito della riga di comando, come indicato nelle risposte precedenti, non influiranno sulle sostituzioni intelligenti. Dovrai invece andare nella barra degli strumenti in alto Modifica> menu Sostituzioni per selezionare o deselezionare "Virgolette intelligenti", "Pennellate intelligenti" ecc.

Se stai usando TextEdit, la risposta di 7stud è la soluzione, che è inclusa qui per completezza: TextEdit> Preferenze e seleziona / deseleziona le impostazioni nelle sezioni in basso.


1

Se vuoi solo impedire che ciò accada in qualche occasione, o per qualche istanza specifica, puoi semplicemente aspettare che Mac apporti le modifiche indesiderate e quindi premere CMD+zper annullare.


Hai provato questo con "-" e "-" per confermare che funziona come previsto dall'OP?
Pimp Juice IT

0

Yosemite 10.2 and TextEdit:

  1. Avvia TextEdit.

  2. TextEdit> Preferenze

  3. Nell'angolo in basso a destra, deseleziona Smart dashes.

  4. Se il tuo file TextEdit è aperto, chiudilo e riaprilo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.