Skip to main content
July 16, 2009
Question

Reference source files outside project folder

  • July 16, 2009
  • 2 replies
  • 1962 views

My company wants to create one large help project. However we don't want all the HTML source files to be stored in that project. We want to store these files in another folder outside of the project. I'll try to simplify the situation.

I created a "RH Test Project 1" with a topic called "Welcome." When you look in Windows Explorer in the RH Test Project 1 folder, you'll see all of the files RH creates (.xpj, cpd, hhk, hhc, etc.). The "Welcome.htm" file is also in the RH Test Project 1 folder.

I actually want this "Welcome.htm" file to reside in a folder I created called "RH Test Project src." If I copy the Welcome.htm file to my new src folder, my project contains a broken link, as expected. I don't want to import the welcome.htm file because that creates a copy that goes right back into the RH Test Project 1 folder (essentially I would have a "Welcome.htm" file in RH Test Project 1 and RH Test Project src folders).  All I want to do is to be able to reference the Welcome.htm file. I want to be able to edit and work with this file in RoboHelp but I don't want it to reside in my project folder. I want it to reside outside the folder.

Desired structure:

RH1 Project

-- RH1.xpj

RH2 Project

-- RH2.xpj

Source Folder

-- Subfolder 1

    -- Welcome1.htm  ( I don't want either welcome.htm topics to be in the RH1 Project or RH2 Project file structures)

--Subfolder 2

   -- Welcome2.htm

This topic has been closed for replies.

2 replies

Peter Grainge
Community Expert
Community Expert
July 17, 2009

You can have links to external files but they will not appear in your TOC, index or search. RH is not designed to work that way and I think that is true of the other main HATs.

Define large and explain the reason for having the files outside the project. I am not seeing a reason in your post for wanting to do this. Maybe if that was understood, something else could be suggested.

What version of RH are you using?


See www.grainge.org for RoboHelp and Authoring tips

Use the menu (bottom right) to mark the Best Answer or Highlight particularly useful replies. Found the answer elsewhere? Share it here.
July 17, 2009

We are  using RH 8.

We are also using ClearCase.

I'll try to explain the reasoning. Excuse me if I go about it in a roundabout way. We have a lot of repeatable and reusable content in our help files. We also have topics where the content can and should be cross-referenced for other applications. I don't want to create snippets or variables, I just want to reference the entire HTML topic in more than one application.

Before switching to RH 8, we had eight individual help projects for Payables, Assets, Purchasing, etc. We want one "src" file with the 8 subfolders. Each subfolder will then contain its associated HTML topics, like so:

src

   Payables

    accountgroups.htm

    discountstaken.htm

    etc.

   Assets

    disposingofassets.htm

    preassetsummaryinquiry.htm

    etc.

We will then have one large help project called "All_Apps" (where the .xpj and other system files will reside at the root). We understand that RH likes it's source information to all be contained within the project folder. So right now our workaround is to use symbolic links (bold font below) that mirror our "src" folder. As you can imagine, looking at such a structure in Windows Explorer is daunting.

all.apps

   src (symbolic links)

    payables

    assets

    common

payables

  src (symbolic links)

    payables

    assets

    common

src (original source content that the symbolic links are mirroring)

   payables

    accountgroups.htm

    discountstaken.htm

   assets

  

Basically RH is forcing us to store the .htm files w/in each of the projects. Our software is integrated and some topics are relevant in more than one of our applications. Is it possible to create a different structure that RH will recognize without using symbolic links to help us achieve the referencing or cross-referencing that we desire?

Thank you for your help. I called Adobe yesterday and logged an incident but after explaining this 8 times, they still only got "So you don't want to follow RH standards?" and then referred me to RH's online help.

Peter Grainge
Community Expert
Community Expert
July 21, 2009

Hi again

No, that wasn't what I was saying.

You cite that many files will slow down RoboHelp. That's just a fact. Lots of files will slow any application down, not just RoboHelp. Sure, if you plopped all 25,000 in just one folder it would likely bring RoboHelp to its knees in short order. That's why you are able to have folders inside projects. Folders assist in organizing and speeding things along.

Content (Characters, Words, Paragraphs, Topics, Images) may have something called Conditional Build tags applied. That would seem to be what you need in this case.

So you might structure your project as follows:

C:\RH\Project (Source for entire RoboHelp project)
C:\RH\Project\Project1 (contains files specific to Project 1)
C:\RH\Project\Project2 (contains files specific to Project 2)
C:\RH\Project\Project3 (contains files specific to Project 3)
C:\RH\Project\Common (Contains files common to all projects and appearing in all)

In that setup you would be able to achieve what you are seeking. You would apply conditional tags to each of the project specific folders and files to exclude them from a build if you needed to build for a single project. Otherwise, if you need the overall project containing everything, you would have it.

Okay, so it would appear that management is incredulous that you aren't able to build a house in Arizona and give it an addres for Florida. I guess that's why the Dilbert comic strip is so popular.

Cheers... Rick


I don't disagree with Rick that you can have 25,000 topics in one project but I am not sure either of us would recommend it. I think no matter how you structure things within that project, you will hit performance issues and maybe worse.

Your basic requirement is to produce many outputs without duplication of topics. I think that is the way to look at it rather than focussing on the number of projects involved. For this merged help could be your solution, as I think I mentioned earlier in the thread.I have a merge set up with 12,000 topics but only around 4,000 in the two main projects. Beyond that on an older PC, I found performance issues. This gives me what I want and could work for you.

Until about six months ago, I regularly got requests for help from a lady who maintained a very large project (over 100mb zipped after pruning). The last contact was because things were not working properly, again. I persuaded her to go with merged help and haven't heard from her since.

The way it works takes a bit of planning but it is not difficult. You have a parent project which is effectively a shell. You then have child projects. Stuff you know will go in all outputs goes in one or more child projects.Stuff that may go in some but not others can go there too and be included / excluded from an output using Conditional Build Tags or it can go in other child projects. Stuff unique to Product A goes in a child project for Product A, likewise with other products.

When the whole help has been generated, you can remove any output from the total output and the end user will see just what you want them to. So they could see the Common Stuff + Products A and B but not Product C.

I think you will get better results if you focus on what outputs you want and how to avoid duplication than if you focus on a single project.

You also mention that your development tools work in a different way. Sure they do. They are development tools, not help authoring tools.

We could debate this forever, and I do understand why your management might think it is a good idea, but the plain fact is I think you will just keep running into problems when you could achieve the objective in another way.

I wish you luck and am just glad I will not have to work on that project.


See www.grainge.org for RoboHelp and Authoring tips

Use the menu (bottom right) to mark the Best Answer or Highlight particularly useful replies. Found the answer elsewhere? Share it here.
July 16, 2009

Saving Rick, Peter, Leon, Pete, and everybody else some time: For heaven's sake, why do you want to do that?

(Actually, we really do want to know. This is an interesting requirement.)

I am 95% certain that you can't do this. RoboHelp works with source files under the assumption that source files live in the project folder. Even baggage files get copied into the project folder, and they aren't (strictly speaking) part of the topic structure.

But I am eager to hear what the honchos have to say about this one.

MergeThis
Inspiring
July 17, 2009

There've been a couple of recent postings dealing with the use of an intro splash screen. You might try searching "splash."

Good luck,

Leon