Sunday, February 12, 2017

"For Adobe InDesign CS5 or CS6, How Do I Fix Crashing on Exit, Disappearing Text, Disappearing Menu Fonts, and Limited Undos in El Capitan or Later?"

There are good reasons to resist the siren call of Adobe Creative Cloud, especially when relying on an Adobe app like InDesign that produces files in a proprietary format. If you stop your subscription -- ever -- you may not be able to access the files you created while subscribed. The price of sticking with an older version, though, is that you must contend with dwindling support from Adobe.

InDesign users have been facing this for a while now with versions CS5 and CS6. Crashes on exit, text disappearing when any is selected, font names disappearing from menus, and undos being limited to one or two, have become standard occurrences. Fortunately, these problems have fixes, though some may cost you.

Let's start with crashes on exit, a problem with InDesign CS5 (and Illustrator CS5 too). This is actually a new manifestation of a recurrent problem with Adobe apps: Adobe sets them to automatically access a server on the Internet that Adobe then eventually decommissions. The app can't access the missing server, so it crashes.

The solution is to stop InDesign CS5 from trying to access the server. The trick, though, is to do it permanently. You can find a number of methods on the Web involving deleting or renaming Adobe support files or cache files, but they only work till the app restores those files, which it does automatically.

Still, there's a simple way to do it. First, shut down InDesign CS5 and any other CS5 app. From your root drive -- not your User directory -- go to Library > Application Support > Adobe. (The Library directory is normally hidden, but you can reach it through the Finder's Go menu if you press the Option key.) Find the folder CS5ServiceManager and drag it to the trash.

Now, here's the important part. In a text editor like TextEdit or BBEdit, create an empty text file -- a file with no content. Name it "CS5ServiceManager" -- the same as the folder you trashed -- and move it to the same folder -- Library > Application Support > Adobe. With this empty file in place of its support folder, InDesign will no longer be able to attempt online access, and it won't crash again.

Why does this work while other prescribed fixes don't? Because when InDesign tries to overwrite your empty file with the proper folder of support files, MacOS won't let it. A file can overwrite a file, and a folder can overwrite a folder, but a folder is not allowed to overwrite a file!

OK, that deals with the crashes. But what about the other wonkiness? This seems to be due to obsolete memory handling in this fairly old software -- obsolescence that MacOS versions starting with El Capitan no longer accommodate. And no, increasing the memory on your computer won't help, as I learned from expensive experiment.

It took Adobe about a year to fix this for Creative Cloud customers -- which seems about typical for Adobe's lethargic customer support nowadays. But complaining owners of previous versions have regularly been told in  forums that Adobe would NEVER fix it for them, because those versions are no longer supported. The only solution, supposedly, was to subscribe to Creative Cloud.

Fortunately, this was only half-true. Yes, InDesign CS5 is completely unsupported and will never be fixed. And yes, no new features are being added to InDesign CS6. But Adobe HAS supported InDesign CS6 to the extent of keeping it functional on later MacOS versions. So, when InDesign CC got its fix for these memory problems, so did InDesign CS6.

If you're having these problems with InDesign CS6, the simple solution is to go to InDesign's Help menu and check for updates. Sad to say, if you're using InDesign CS5, the only solution really is to update -- but if you don't want Creative Cloud, you can update to InDesign CS6 (then install its available updates.) Adobe itself has stopped selling it, though, so you'll have to find it elsewhere, new or used.

A quick note about moving from InDesign CS5 to CS6: I resisted this for a long time, because CS6 seemed much buggier. But most of that bugginess is now gone, and I appreciate this version's improved display of graphics. One big sticking point for me was CS6 opening document windows partially under panels. But it turned out I just had to select "Application Frame" from the Window menu to stop this.

Sunday, January 10, 2016

"How Can I Get Back My POP Mail and SMTP in Apple Mail Under El Capitan?"

Apple has a compulsion to improve things. The problem is, they don't seem to care if that breaks the things they've improved.

A case in point is POP mail and SMTP in Apple Mail for El Capitan. In case you don't know, POP mail -- or POP3 mail -- is an older email protocol for receiving email. Nowadays, it's mostly replaced by IMAP, but some of us still prefer it. SMTP is used for email sending. For security, both depend on another protocol called SSL, which is used to encrypt email and account sign-ins.

It's SSL that Apple decided to tinker with, perhaps to enforce some obscure requirement that most people considered optional. Anyway, the upshot was that POP and SMTP accounts of mine that had been working flawlessly were suddenly unable to connect.

My emergency solution was to turn off SSL for each POP and SMTP account in Preferences. That also meant changing the ports, since non-SSL email is generally handled by different ones. The specific port changes I made for my service were typical ones: for POP, 995 to 110, and for SMTP, 465 to 587. (For some reason, the SMTP port numbers kept reverting after saving, so I had to fiddle with them and redo them till they stuck.) I also had to change preferences to allow "insecure authentication."

But obviously, this would never do as a permanent arrangement -- and I could do it temporarily only because I was on a secure network. You really don't want to broadcast your email account passwords. So, my next step was to query my email service provider and ask if they could come up with a fix.

I still don't know exactly what the problem was, but this is how they told me they fixed it: "I made a very small tweak to the server config to only allow TLS1 and SSLv3." So, if you have the same problem, you might want to suggest this solution to your service provider. For me, it worked perfectly.

By unwelcome coincidence, my POP account for Google Mail also stopped connecting after the upgrade to El Capitan. In this case, though, it was apparently not so much Apple's fault as Google's. Signing into Google Mail in my browser, I found they had courteously provided an email telling me why my connection had been refused -- an email, of course, that they hadn't let me download.

And what did Google say was wrong? Using Apple Mail for Gmail, I was told, was less secure than using a Google app. So, to keep using it, I had to go to a linked page and tell Google that it was OK to use a less secure app!

Which I did. And now it works just fine -- and as securely as it ever did.

Sunday, April 19, 2015

"Why Won't Mobile Safari Write Cookies for My Web Site?"

Probably because, as I was, you're triggering your cookie Javascript with "onunload" or "onbeforeunload." That won't work on Safari for iPad or iPhone.

Modern browsers work differently from older ones -- they want to save your page off-screen, or "cache" it, rather than unload it completely. In some browsers, your use of "onunload" or "onbeforeunload" rules out caching, leading to slower performance for your site. Safari on iOS, on the other hand, caches the page anyway and just ignores your script!

The solution is simple. In place of "onunload" or "onbeforeunload," use "onpagehide." That's right, just substitute that one term for either of the other two. Then your script will be triggered whenever the page is unloaded OR just cached. Not only will Safari now write your cookies, but this will speed up navigation back to your page in all other modern browsers!

By the same token, you may want to replace "onload" with "onpageshow." But not always. "Onpageshow" will trigger whenever a page is loaded OR just retrieved from cache. But if the page is just retrieved, it returns in its previous state, so onload functions may not be needed or wanted. In that case, you should leave those functions in "onload," while moving any others to "onpageshow."

The biggest disadvantage to using the new triggers is that older browsers won't recognize them. That includes Internet Explorer before version 11. If that's important to you, you can design your JavaScript to revert to the older triggers for older browsers. (But I haven't bothered.)

Sunday, March 22, 2015

"Why Do I Lose Email Messages When I Import Mailboxes from Thunderbird or Postbox to Apple Mail?"

Apple Mail uses a more restrictive standard than Thunderbird or Postbox do when looking for the start of a new message, so it simply misses many or most of them. On one attempted mailbox import, I saw the message count drop about 95%! The scary part is, if I hadn't checked the count in Postbox against the count in Mail, I might not even have realized I'd lost anything.

Eudora Mailbox Cleaner, a commonly recommended solution for importing from Thunderbird to Mail, did exactly the same thing, for the exact same message count. (I ran it on Snow Leopard Server in a virtual machine.)

So, how do you import without loss? I'm going to make this very simple for you. Use Weird Kid Software's Emailchemy, a brilliant app for converting from one email format to another. In the Preferences, on the "Standard mbox" tab, select "Relaxed" for "Compliance to mbox standard when reading." I also suggest you choose "UNIX and Mac OS X: LF" for "Output Newline Characters."

Then just choose to convert your mailboxes from "Thunderbird" to "Apple Mail 1.0." On the same mailbox I mentioned above, with almost 9,000 messages, Emailchemy recognized all but three, and Apple Mail showed that same number after import. Good enough!

Tuesday, March 10, 2015

"Why Is BBEdit Corrupting My Thunderbird or Postbox Mailboxes?"

Instructions for repairing your mailboxes commonly tell you to edit the files in a text editor, and BBEdit is usually recommended for the Mac. Unfortunately, for Thunderbird or Postbox mailboxes, this is about the worst advice you can get. More often than not, merely editing and saving the file in BBEdit will seriously corrupt the mailbox.

Why is that? The problem lies in how both the text editor and the email apps work, and in how those ways interact. Thunderbird and Postbox store received email messages with Unix line endings -- "LF" or "line feed" -- as they should. But when you compose a message, those apps create and store it with Windows line endings -- "CRLF" or "carriage return, line feed." So, unless you keep your sent and received messages in separate mailboxes, you get mixed line endings in the same file. (Postbox was built on Thunderbird code, so the similarities should be no surprise.)

As the folks at BBEdit explained it to me, some text editors are good at handling mixed line endings in files, while others are more interested in helping you "normalize" line endings -- make them consistent. Apple's TextEdit and Notepad++ on Windows are examples of the former. BBEdit is one of the latter.

When BBEdit opens a file, it looks at the beginning to decide what kind of line ending it's using. If that file is a Thunderbird or Postbox mailbox and starts with a received message, then BBEdit decides on Unix line endings. And it expects to find those same line endings throughout the file -- as would be common in a text file.

The problem comes when BBEdit reaches a sent message with its Windows line endings. Because it expects single-character Unix line endings, it interprets the two-character combination of carriage return and line feed as _two_ line endings, and puts two line feeds in their place. In other words, it inserts a blank line between each line of text. And of course, it never warns you.

So, what happens when you next try to view that mailbox's messages in Thunderbird or Postbox? Both of those apps expect to find each message's headers in a set of single-spaced lines at the top. When they instead find double-spaced lines, they don't recognize the headers. All the messages you've sent are still listed, but they appear without subject, sender, or recipient, and with the current date replacing the original! The data is still safe in your mailbox, but Thunderbird and Postbox can't read it.

Is there any way to use BBEdit on a mailbox that doesn't damage it like that? Yes. You can open the file with the Open command on the File menu, unchecking the option to "Translate line breaks." After the file opens -- which can take a long time -- use the Normalize Line Endings command on the Text menu. Then, if you need to, at the bottom of the window, change the file's line endings from "Classic Mac (CR)" or "Windows (CRLF)" to "Unix (LF)."

You can then edit as you like, and Thunderbird or Postbox will have no problem. But this won't stop those apps from inserting more messages with Windows line endings -- so if you need to reedit, you'll likely have to go through the whole procedure again. Really, it's probably simpler to edit the mailbox in TextEdit instead.

What if you've already corrupted the file? If you can't replace from a backup, you'll have to remove the double spacing. To do that, you can reopen the file in BBEdit, find the double-spaced messages, and remove the extra blank lines by replacing each pair of line endings with a single one. (Yes, it's safe to edit the file like that.) The correct header info will then magically reappear in Thunderbird or Postbox. To make the repair quicker and easier, you can probably first use the email app to move all the mailbox's corrupted messages to a new mailbox by themselves.

As a long-term solution, we can hope that the developers of these apps make some changes. BBEdit's developers tell me there are changes coming down the line that may help with mixed line endings. And maybe Thunderbird's or Postbox's developers will wake up and realize there is no place for Windows line endings in a Mac app.

By the way, you'll notice I haven't discussed what happens in BBEdit when it opens a mailbox starting with Windows line endings but with Unix endings mixed in later. I'm afraid you'll have to work that out for yourself!

Saturday, March 7, 2015

"How Do I Cancel/Close/Delete My WordPress.com or Gravatar Account?"

Well, you can't, but you can nuke them so they're as good as closed. In the spirit of overkill, here's how to do it with Gravatar, which is actually a feature of WordPress.

1. Go to Gravatar and sign in.

2. Delete your image.

3. Find your Gravatar profile, and click "Hide" at the bottom right.

4. Go to WordPress.com and sign in.

5. Click on the personal settings icon at upper right. (It looks like a head and shoulders in a circle.)

6. Go to the Security tab.

7. Under "Connected Applications," remove Gravatar.

For your WordPress.com account:

1. Sign in to WordPress.com.

2. Click on "My Site" at upper left and then on "WP Admin" to find the Dashboard for your blog.

3. In the Dashboard sidebar, click on Tools > Delete, and follow instructions.

4. Click on the personal settings icon at upper right.

5. Delete or change everything you want, including in your profile. (You can't delete the Public Display Name -- it will just come back -- but you can change it to "None" or something similar.)

6. Get a free throwaway address from a site like Mail.com.

7. Back at WordPress.com, go to the Account tab of your personal settings and change the email address to your new throwaway address. WordPress.com will send a verification email to that address.

8. Back at your throwaway email host, open the WordPress.com email and click the embedded link to verify the address. After that, you can delete the throwaway email account or leave it.

9. Back at WordPress.com, change the password to one that doesn't match any you use for other accounts. Optional: Make it a password you won't remember yourself.

10. Also optional: Under Account, change your username.

11. Sign out.

Saturday, February 28, 2015

Why Can't I Uninstall Dropbox on My Mac?

It's easy to find instructions on the Web for removing Dropbox from a Mac. But they all seem to leave out the crucial first steps -- and without them, you may not be able to remove a file. Here are those steps:

1. With Dropbox running, call up the app's preferences. In version 3, you can find them by clicking on the Dropbox menu bar icon and using the gear menu at lower right.

2. On the General tab, uncheck all the following:
"Show desktop notifications."
"Start Dropbox on system startup."
"Enable Finder integration."

3. Close the preferences and restart your computer.

You should now be able to remove any Dropbox file or folder with no trouble. My own way was to use TinkerTool to show all normally invisible files and folders, then to search for "dropbox" with EasyFind and use its contextual menu to "Reveal in Finder."

Lesson: Think twice about installing an app that doesn't supply its own uninstaller. (And there's no real reason to install the Dropbox app anyway, since you can easily upload and download your files from the Web site.)