That does work. However, the only way I see to remove all map IDs is to delete them manually one by one. Is there a command somewhere to delete everything at once?
It's not as if you can delete the map files itself, because that option is not allowed with the default map file, which would be the only one that would regenerate all the map IDs with the forced update.
It seems wholly unrealistic to have to find and delete the IDs manually and the Adobe documentation doesn't seem to correlate to the current functionality in FM9.
We are quite far down a migration from WebWorks to RoboHelp with FM source files. This issue represents a huge impediment for us.
Ah I see now - there's definitely a typo on this page (http://help.adobe.com/en_US/robohelp/robohtml/WS5b3ccc516d4fbf351e63e3d11aff59c571-7ff9.ht ml). The third point should be to select "Remove Unused MapIDs" not "Edit" - then the rest of the topic makes sense. I'll try to figure out how to bring it to someone's attention - it used to be as easy as just offering a comment on the page; now I think it generates a new forum thread by default.
But you're saying that doing this isn't cleaning out the unused ones after all? If that's the case then you should file a bug report here - https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform and link to this thread.
As a quick workaround, you can clean out a map file really easily by just opening the .h map file in Notepad and deleting the contents - it's just a text file.
I think there's even a bit more than just a typo there, the instructions are wrong and confusing from that third point. When you choose "Remove Unused MapIDs," you can choose "Clear All" or "Select All." But "Map Files" is just the header at the top of the list of all map files; it is not an action. Very poorly done.
At any rate, I did it the way that seemed logical and did not get stymied at that erroneous third step. And to answer your question, no, "Remove Unused MapIDs" does not work.
I had the same thought this morning about touching the default file itself, but I didn't know it was just a file in Notepad. I thought that would work for sure, but got some serious strangeness when I tried that method.
I opened up the Notepad file and deleted all the entries. Then I did a "Force Update All." That left the Notepad file entry, but all the original entries still remained when I opened the "Edit Map IDs" dialogue box. I kept trying to re-do the update, but again, the only way I got the Notepad file and "Edit Map IDs" entries to match up again was to delete them all manually in the "Edit Map IDs" dialogue box (the original method I described in my earlier post.
As I mentioned, ttrying to collate entries and deletions from RH and FM is pretty unreasonable! But if it has to be the only workaround, maybe the best thing is to just delete all the entries and then do the forced update. That seems to work. But I am dealing with a FM document that has about 700 context-sensitive links. Absurd.
I will report this as a bug. If anyone else has any help or advice to offer, it would be appreciated.
Seems pretty clear to me -
"Do the following:
Select the map files from which to remove unused map IDs."
if you only have one map file you should see the default BSSCDefault.h one listed and selected. If you've got a number of them, use the Clear All or Select All to uncheck or select them all.
If you closed the project, got out of RH and opened up the BSSCDEfault.h file in Notepad, then cleared all the "define" entries out, saved it and closed Notepad, then started RH back up and did a Force Update All, it should repopulate it with only the markers in your FM source. Did that not happen?
I can't offer you too much advice because I'm an "import from FM" guy myself - linking wasn't working for me due to my FM content's structure. I only need to manually delete a few Map ID entries now because most of my topics have been completed in FM. Our application doesn't remove many screens ever, so having to take away CSH links doesn't really happen; I'm usually adding more - I'm not sure why there'd be that much "churn" in CSH markers in the FM source in your case.
The main philosophy in FM to RH integration is to do all the work in FM and try to do as little as possible in RH.
Alright, maybe it isn't that bad if you substitute the correct text we discovered. But I think this also reveals another shortcoming with the management of those map files, which is once you open the "Edit Map IDs" dialogue box, you should be able to batch manage the entries in the same way. Ultimately, the "Remove Unused IDs should just work, but being able to select all the Map ID entries and delete them would be an acceptable workaround and/or a nice piece of enhanced functionality.
When I tried deleting the Notepad entries, I left RH open. But I just now tried the method you suggested, closing it out and opening it again. This actually did not work and caused more problems. From that point, every time I tried to force an update, it would only pull over a single topic alias and nothing I did would restore the other original topic aliases from the FM files. This method seems to cause the integration to wig out.
From there, I had to painfully create a new project and re-link the FM files, apply .isf settings, etc. That worked, but who wants to do that every time, not to mention the versioning management nightmare it will create, especially in an environment with multiple writers.
After I got the files linked again, I determined that the best method seems to be deleting all the Map ID entries manually. That seems to clear out the Notepad file correctly and not cause any confusion for RH.
I can understand why you opted for being a "FM import guy." This linking of FM>RH is fraught with lots of headaches and oftentimes application bugginess. In this case, I think I'm adhering to the philosophy of doing all the work in FM, but since the "Remove Unused IDs" functionality doesn't work in RH, there is little to do but touch things in RH with a workaround.
Being able to select multiple lines in the Edit Map IDs screen would be great - I strongly urge you to submit it as a wishlist item (more submissions of the same item help get things bumped up the dev list) at https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform
I'm slightly confused by the issue you raise with emptying out the .h file - "it would only pull over a single topic alias..." - I didn't think it was possible to use more than one type of marker in FM to indicate CSH to the RH project. The Conversion Settings > Edit FM > Other screen just asks for 1 Context Sensitive Help Marker. What does your Conversion Settings screen look like?
I'll submit that as a wishlist item. But I wonder, have you seen requests turn into features? As a heavy FM/RH user and as a UX professional, I come across so many obvious areas for improvement, such as this one. But the TCS products don't seem to improve between iterations like Photoshop, for example, which I also use often. Is it just because we have a smaller user base and therefore Adobe doesn't dedicate as many resources?
Otherwise, you are right about only one marker being allowed in the Conversion Settings, and that is the way I have it set up, pulling in the market TopicAlias. What I meant was, that in this test file, I have 5 TopicAlias markers. And when I cleaned it out and forced an update, only one of the five markers populated the map file. It was just wierd wonky behavior. I don't know why one would come in and the rest did not.
Wishlist items do show up each release – there’s a whole team of Adobe engineers working on changes. If you really want to get plugged in to what’s changing, join the Adobe pre-release program and do a bit of beta testing; there you have direct conversations with the TCS team engineers.
The marker issue just sounds like a bug – you should contact Adobe Support with that one.
I took your advice and signed up for the prerelease program. I usually contract in software development environments, so I have a long list of bugs and features I'd love to see addressed in these programs.
I was a little confused, though. They ask how many hours you're available and all of what they seem to be looking for are generally pretty big blocks. Do they pay for this beta testing or do they really find people willing to do this quantity of free work?