There is a bug in InDesign CC 2019 (14.0.2), affecting GREP searches in long documents. Adobe has posted a fix that involves installing a plug-in. You can download the fix and read the details of installing it on Windows and macOS, here.
Editor in Chief of CreativePro. Instructor at LinkedIn Learning with courses on InDesign, Illustrator, Photoshop, GIMP, Inkscape, and Affinity Publisher.
Take care. The first time I ran the updater, I got a ‘timeout” message. I had to run it a second time to get “Application successfully updated.” If you use GREP as much as I, this is one bug fix you want in place. A GREP that doesn’t GREP all the way could be bad news.
Great point, Loic. I believe it is much more difficult for Adobe to release a full update to the app. So when there is an “emergency” and they need to patch a bug quickly, they use this kind of “hot fix.”
Thanks SO much for this. I was trying to clean up some text before styling it and needed to run a bunch of saved GREP searches. I was on a plane, so I couldn’t swear. You guys saved me once again!
I have to search any lowercase letter after a space and before a space and change it to italics. For this I use the code: (\x{0020}\l\x{0020})
It search fine.
But I want to avoid letter ‘a’ and the expression can be search only letters from b to z in lower case because a is used as a ‘word’ in many places instead of character variable.
Secondly, if the lower case single character is ended with number then the number goes to subscript and the lower case single character becomes italics.
Thirdly, if the lower case single character are ended with coma (,) for example a, b, c, d etc. it also goes italics except coma.
This problem arise in physics text where lower case single character represented as variables.
Please suggest me appropriate grep code so that I can avoid changing them manually to italics.
@Rajiv: This article is probably not the best place to get help on grep expressions. I would recommend our forums, or using facebook.com/groups/indesignsecrets
However, there are a couple of ways to handle this. One is to use: \b[b-z]\b (\b means “word boundary” and [b-z] means all the characters from b to z. The nice thing about this is that it applies even if there are no spaces, such as “b+c=d”.
However, of course sometimes you want to apply the italic to “a” such as a^2+b^2. So no grep expression will ever be perfect for math and physics.
I tried above expression. It works for all the single characters followed by a space but it stopped where mathematical symbol appear after character. For example: b+c=d.
The above expression stopped after searching b. And not search c and d in this expression. How can I ignored mathematical symbol and it search all the three characters.
If I search a1, b1, c1 then this expression can’t search anyone.
For subscript I use the expression:
(?<=[[:alpha:]])[[:digit:]]+
Notice:
We use cookies on our websites to give you a great online experience. If you keep browsing, we'll assume you're ok with this. For more information, see our privacy policy. By closing this banner, you agree to the use of cookies.I AGREENo
Take care. The first time I ran the updater, I got a ‘timeout” message. I had to run it a second time to get “Application successfully updated.” If you use GREP as much as I, this is one bug fix you want in place. A GREP that doesn’t GREP all the way could be bad news.
I love this artwork!!!!
Thanks! It’s an actual photo taken from inside my hard drive before running the fix.
Just curious about why this comes as a plugin when I could have thought an update would do ?
Great point, Loic. I believe it is much more difficult for Adobe to release a full update to the app. So when there is an “emergency” and they need to patch a bug quickly, they use this kind of “hot fix.”
Thanks SO much for this. I was trying to clean up some text before styling it and needed to run a bunch of saved GREP searches. I was on a plane, so I couldn’t swear. You guys saved me once again!
I have a problem by using grep.
I have to search any lowercase letter after a space and before a space and change it to italics. For this I use the code: (\x{0020}\l\x{0020})
It search fine.
But I want to avoid letter ‘a’ and the expression can be search only letters from b to z in lower case because a is used as a ‘word’ in many places instead of character variable.
Secondly, if the lower case single character is ended with number then the number goes to subscript and the lower case single character becomes italics.
Thirdly, if the lower case single character are ended with coma (,) for example a, b, c, d etc. it also goes italics except coma.
This problem arise in physics text where lower case single character represented as variables.
Please suggest me appropriate grep code so that I can avoid changing them manually to italics.
@Rajiv: This article is probably not the best place to get help on grep expressions. I would recommend our forums, or using facebook.com/groups/indesignsecrets
However, there are a couple of ways to handle this. One is to use:
\b[b-z]\b
(\b means “word boundary” and [b-z] means all the characters from b to z. The nice thing about this is that it applies even if there are no spaces, such as “b+c=d”.However, of course sometimes you want to apply the italic to “a” such as a^2+b^2. So no grep expression will ever be perfect for math and physics.
Thanks David.
I tried above expression. It works for all the single characters followed by a space but it stopped where mathematical symbol appear after character. For example: b+c=d.
The above expression stopped after searching b. And not search c and d in this expression. How can I ignored mathematical symbol and it search all the three characters.
If I search a1, b1, c1 then this expression can’t search anyone.
For subscript I use the expression:
(?<=[[:alpha:]])[[:digit:]]+
or
Your expression with modified code:
(?!=\b[b-z]\b)\d+