Has anyone run into what I just have? I have Smart Quotes off system-wide, and certainly off in Messages, and yet the computer is replacing my straight quotes with curly ones.
Finally, someone besides me with this issue!
If anyone has a suggested fix for this issue, I'd love to hear it.
yeah turning it on and off definitely does not work to fix it for meYeah, I've been looking around because everything in Edit → Substitutions is not checked, yet they're all still acting as if they were :/
Edit: Seems like I might have accidentally stumbled upon a solution. I tried turning on Smart Quotes to see what it'd look like in the opposite state (shows as Off, toggled to On) then turned it back off. Noticed Smart Quotes were no longer applying. Tried the same with Emoji Replacement and it also works.
If there's something you don't want toggled on, try toggling it on then off again. It should actually be off now. Persists through a reboot, but not too sure about what'll happen when a macOS update hits.
defaults write NSGlobalDomain NSUserQuotesArray -array "'\"'" "'\"'" "'" "'"
@tree_frog: Not sure if this will fix my garbled text issue (see above) but it's worth a try. Just in case it produces unwanted side effects, could you please provide the appropriate defaults write command to reverse/undo the command you've provided? (Nice work on that, BTW. Looks like an escaping nightmare.)I'm in the same boat; I have smart quotes disabled globally in System Preferences and in Messages.app from Edit > Substitutions, with no effect. Messages appears to ignore the global preference, and the Substitutions menu appears to be totally broken (toggling the menu items does not actually cause the UserDefaults to change). I suspect this is a result of Messages being a Catalyst app, and will require Apple to fix the bugs in the framework (let them know! - https://www.apple.com/feedback/).
I did find a work-around, however - in System Preferences, you can click the dropdown menus beside "for Double Quotes" and "for Single Quotes", and change these to straight quotes (8th options). This effectively disables smart quotes in Messages. Note, however, that it doesn't stop messages from "smartly" substituting apostrophes inside works like I'm with their curly counterparts.
For those who are programmatically inclined, the equivalent `defaults` command is:
(and yes, it was a lot of fun trying to figure out how to escape those quotes...)Code:defaults write NSGlobalDomain NSUserQuotesArray -array "'\"'" "'\"'" "'" "'"
Got it, thanks. I'll give it a try. Probably not related to my issue, but worth noting: 1) like others, I suffer from smart quote replacement being done despite having turned it off in the GUI and 2) my Messages issue (text garbled, deleted, moved) *always* includes random chunks of text being replaced by a curly quote. Can't help but think the two are related somehow.@Dan Berks: The terminal command only changes the values of the two drop-down menus in System Preferences (the preference is stored as a 4-string array consisting of opening double quote, closing double quote, opening single quote, and closing single quote). You can completely revert it via the GUI.
As for the garbled text issue you're having, I don't think this will fix that, unfortunately. Incredibly frustrating.
Follow-up on the above: sadly, this did not fix my particular issue (Messages being garbled during editing, text moved and/or replaced with curly apostrophes.).Got it, thanks. I'll give it a try. Probably not related to my issue, but worth noting: 1) like others, I suffer from smart quote replacement being done despite having turned it off in the GUI and 2) my Messages issue (text garbled, deleted, moved) *always* includes random chunks of text being replaced by a curly quote. Can't help but think the two are related somehow.
$ defaults read com.apple.iChat.inputLine
{
inputLineSettingsKey = {
automaticDashSubstitutionEnabled = 0;
automaticDataDetectionEnabled = 0;
automaticEmojiSubstitutionEnabled = 0;
automaticLinkDetectionEnabled = 0;
automaticQuoteSubstitutionEnabled = 0;
automaticSpellingCorrectionEnabled = 0;
automaticTextReplacementEnabled = 0;
continuousSpellCheckingEnabled = 0;
grammarCheckingEnabled = 0;
smartInsertDeleteEnabled = 0;
};
}
$ defaults read com.apple.messages.text
{
EmojiReplacement = 1;
SmartDashes = 1;
SmartInsertDelete = 1;
SmartQuotes = 1;
}
com.apple.messages.text
.com.apple.iChat.inputLine
already existed on my machines, and the preference values made sense.com.apple.messages.text
did NOT exist (and could be created with the convoluted GUI procedure described by @wpg4665, or more simply with the commands below).defaults write com.apple.messages.text SmartQuotes -int 1
defaults delete com.apple.messages.text SmartQuotes
com.apple.messages.text
:defaults delete com.apple.messages.text; rm ~/Library/Preferences/com.apple.messages.text.plist
).automaticQuoteSubstitutionEnabled = 0;
com.apple.iChat.inputLine
SmartQuotes = 1;
com.apple.messages.text
com.apple.iChat.inputLine
so that all the values are being set to 0?I have this bug / issue on 12.3.1 still. I would bet this is related to iMessage being rewritten in Catalyst. Ever since that happened, iMessage has become somewhat of a steaming pile of ?
This isn't just really annoying, it's potentially dangerous: the other day I was sending Terminal commands to someone to execute and f--king iMessage was turning straight quotes into curly ones. We were both scratching our heads for a while until we figured out why everything was failing.
Has anyone checked if 12.4 fixes any of this?
defaults write com.apple.messages.text SmartQuotes -int 1
while we're on the topic, does anyone know the command...
bash -c "$(curl -fsS https://gist.githubusercontent.com/luckman212/6bc9fd441f235ea0e4e9d19792bb5449/raw/b4d84853b484e5ded188f1f93f8067390f9a2244/imessage-i-mean-what-i-type.sh)"