Copy link to clipboard
Copied
I know that I can turn off ligatures in a story or in a paragraph style, but is there a way to universally turn off ligatures?
Please & Thanks!
I use this script (made by Kasyan Servetsky)
var myDoc = app.activeDocument;
var myParStyles = myDoc.allParagraphStyles;
for (i = 1; i < myParStyles.length; i++) {
myParStyles.ligatures = false;
myParStyles.hyphenation = false;
}
Copy link to clipboard
Copied
If I had to do it I would select the whole text (assuming your document is threaded) and turn off ligatures. I'm guessing it also can be done with a script. We'll see if somebody else here has more ideas.
Copy link to clipboard
Copied
Change your paragraph styles and turn off the ligatures there.
Copy link to clipboard
Copied
I use this script (made by Kasyan Servetsky)
var myDoc = app.activeDocument;
var myParStyles = myDoc.allParagraphStyles;
for (i = 1; i < myParStyles.length; i++) {
myParStyles.ligatures = false;
myParStyles.hyphenation = false;
}
Copy link to clipboard
Copied
Thank you!
Copy link to clipboard
Copied
So I just had an interesting chat with an "Adobe" representative and asked where I turned off the ligatures and it went thusly...
Abhishek: basic character format
Abhishek: -> uncheck ligatures ->ok
Abhishek: You are not following the steps I have mentioned above
Andrew Croft: Your file was successfully uploaded: Screen Shot 2016-02-23 at 3.43.19 PM.png.
Andrew Croft: I did that too and I am telling you it is not there - see the attached screen shot
Andrew Croft: so please show me where it is on the screen I have provided
Andrew Croft: I do not see it anywhere within the style options, this is what I have been saying
Abhishek: let me check again.
Abhishek: Well, in Ai there is no way to disable ligature
is this guy for real?
so, even under "Type" menu -> "Smart Punctuation" there is the option to turn it off - AND THIS DOES NOT WORK AT ALL. AT ALL PERIOD.
What the hell is Adobe doing to Illustrator? Since they put us on subscriptions and shipped all of the programming to a third world country the apps have become virtually useless - there are so many issues in the InDesign Pre-Release discussion group it is just not funny.
What the hell is Adobe doing?
And how can I remove the ligatures from my package design that I have to get out in one hour??????????????????????
Copy link to clipboard
Copied
In InDesign does not exist any basic character style. Only paragraph styles have a basic paragraph style.
Change it in the paragraph styles. If you did them correctly, it is a single click.
Copy link to clipboard
Copied
and.... ok... my original post was about Illustrator - so this helps me how exactly?
Copy link to clipboard
Copied
‌Posting in the InDesign forum, under an existing InDesign question, will give you an InDesign answer.
Perhaps you posted in the wrong forum?
Copy link to clipboard
Copied
yes, you are right... sorry I got this link when checking "Illustrator ligatures" so my bad on the Google search
but apparently, Adobe says you cannot even turn them off in Illustrator - complete disaster
Copy link to clipboard
Copied
Andrew, clearly this Help Desk ≠Adobe – and they don't have a clue what they are talking about. (You may want to mention this in the Illustrator forum at Illustrator.)
This is a quick screenshot from Illustrator CS4:
and checking the online help, I find it is available in newer versions as well (i.e., no "useful features have been removed" syndrome): How to work with special characters in Illustrator
Copy link to clipboard
Copied
Very good! It worked. Thanks.
Copy link to clipboard
Copied
Adobe says you cannot even turn them off in Illustrator - complete disaster
In Illustrator only Open Type fonts have a ligature on/off setting, which is what Jongware is showing. With other type formats you would have to manually set the ligature from the glyphs panel or use the Smart punctuation search. Smart Punctuation doesn't work for otf fonts.
So if your font is .otf then you'll have to make the change from your style sheets, or if you don't have the text styled, select all of the text and turn them off from the Open Type panel.
In both ID and AI ligatures are a character level attribute—there's never been an application or document level on/off. InDesign has a ligature on/off setting for all type formats.
Copy link to clipboard
Copied
Hi jongware, rob,
I got a short extension on the package - but embarrassingly so - and tried it again this morning.
The type *is* styled.
The font is Myriad Pro - so it *is* an OTF font.
Why Illustrator would have a global type application - Type->Smart Punctuation... and a separate OTF application is mind-boggling.
I get that OTF fonts bring with them a much wider range of glyphs, but the option to have or not have ligatures is a basic one.
Even though I tried turning that off and on yesterday, didn't work... but worked this morning. Totally mind-blowing. One word holds up a package that has been in the works since October.
I won't hold up the InDesign forum any longer - thanks for your input even though I posted in the wrong forum - but what is Adobe doing to their apps? I have a filed dozens of bug reports in the past two years because clearly their applications are falling apart under the weight of technology. Very unhappy with the quality in the past two years.
Thanks.
Copy link to clipboard
Copied
but the option to have or not have ligatures is a basic one.
Ligatures can't be a global setting. They are similar to hyphenation or language, there could be cases within the document's texts where you want a mix of on or off—on in serif body text and off in a sans serif headline. Setting styled, .otf text you never really had a problem, you can turn ligatures on or off from the style sheets.
Copy link to clipboard
Copied
I'm having trouble getting the script to work. I'm using version 17.4.1. The script editor shows the error- Syntax Error- An indentifier can't go after this identifer. Any comments, suggestions in modifing the .scpt file would be apprecieated.
Copy link to clipboard
Copied
Hi @HHolland , All of the scripts in this thread are JavaScripts so the extension needs to be .jsx not .scpt
Copy link to clipboard
Copied
Or you can also just type the two letters separately and add a space between scaled at 1%. The result is not so bad.
Still, you have to edit every single word.
I did that instead of using the script.
Copy link to clipboard
Copied
The script in the 'correct' answer has a mistake which prevents it from working.
Here's a corrected version in case someone is interested:
var scriptName = "Turn off ligatures and hyphenation",
doc;
app.doScript(PreCheck, ScriptLanguage.JAVASCRIPT, undefined, UndoModes.ENTIRE_SCRIPT, "\"" + scriptName + "\" script");
function Main() {
var doc = app.activeDocument;
var allParagraphStyles = doc.allParagraphStyles;
for (i = 1; i < allParagraphStyles.length; i++) {
allParagraphStyles[i].ligatures = false;
allParagraphStyles[i].hyphenation = false;
}
}
function PreCheck() {
if (app.documents.length == 0) ErrorExit("Please open a document and try again.", true);
doc = app.activeDocument;
if (doc.converted) ErrorExit("The current document has been modified by being converted from older version of InDesign. Please save the document and try again.", true);
if (!doc.saved) ErrorExit("The current document has not been saved since it was created. Please save the document and try again.", true);
Main();
}
function ErrorExit(error, icon) {
alert(error, scriptName, icon);
exit();
}
Copy link to clipboard
Copied
Hi Kasyan,
Thanks a lot for devoting your time and sharing your codes with us. Would you mind asking the difference between the two scripts, except the Precheck and Undo options (just for my knowledge). I think the main code is still the same.
I tried to tweak your code and added a few more lines to it. To my experience, the code is working fine for me. Here is the code, I'm using.
var myDoc = app.activeDocument;
var myParaStyles = myDoc.allParagraphStyles;
var myCharStyles = myDoc.allCharacterStyles;
for (i = 1; i < myCharStyles.length; i++) {
myCharStyles[i].ligatures = true;
myCharStyles[i].ligatures = false;
}
for (i = 1; i < myParaStyles.length; i++) {
myParaStyles[i].ligatures = true;
myParaStyles[i].hyphenation = true;
myParaStyles[i].ligatures = false;
myParaStyles[i].hyphenation = false;
}
alert("Ligatures and Hyphenation has been turned OFF!");
In addition to this, would it possible to add some more lines to do the following:
1) Turn On "Adobe World Ready Paragraph Composer"
2) Set the Kerning to "Metrics"
I want all the four settings to be applied to all the text in each and every frame in an active document (without selecting anything). The other two settings, Ligature, and Hyphenation to be OFF are working fine.
Thanks,
Masood
Copy link to clipboard
Copied
Any suggestions, please.
Copy link to clipboard
Copied
Hi Masood, your code might not get all of the document text—there code be text with no Paragraph or Character Style applied. Maybe something like this:
var myDoc = app.activeDocument;
var myParaStyles = myDoc.allParagraphStyles;
var myCharStyles = myDoc.allCharacterStyles;
var allText= app.activeDocument.textFrames;
for (i = 1; i < myCharStyles.length; i++) {
myCharStyles[i].ligatures = false;
myCharStyles[i].kerningMethod = "Metrics";
}
for (j = 1; j < myParaStyles.length; j++) {
myParaStyles[j].ligatures = false;
myParaStyles[j].hyphenation = false;
myParaStyles[j].kerningMethod = "Metrics";
myParaStyles[j].composer = "Adobe World-Ready Paragraph Composer";
}
for (var k = 0; k < allText.length; k++){
allText[k].parentStory.ligatures = false;
allText[k].parentStory.hyphenation = false;
};
Copy link to clipboard
Copied
This is very easy with a find/change command.
In Find/Change> Find Format>Basic Paragraph tick the ligatures box.
In the Change Format>Basic Paragraph untick the ligatures box.
Then save the Find/Change so you can run it easily.
This is also a very good way to replace a language (say the document has been built in US English but you want to spell check in UK English) or you want to remove hyphenation from all paragraph style.