2010-01-12 3 views
68

Pour chaque classe dans le projet, SandCastle crée (entre autres) deux pages:Est-il possible de fusionner deux pages créées par SandCastle en une seule page principale?

  • La page principale, appelée comme T_class_full_name, avec la description, la syntaxe, Hiérarchie d'héritage et Voir aussi
  • La page membres, appelé AllMembers_T_class_full_name, avec Constructors, méthodes, champs, etc.

Est-il possible de fusionner ces deux ensemble - avec le members page étant associées à la page principale?

+5

J'aimerais aussi cela! Le Prototype PresentationStyle fait cela, mais j'aime mieux le style de sortie de vs2005. (Prototype semble vraiment horrible dans Firefox.) –

+0

Merci, je vais vérifier prototype. –

Répondre

2

Je ne peux pas donner une réponse à travailler pour cela, mais je peux offrir quelques idées qui peuvent travailler si quelqu'un est prêt à pirater avec elle:

1. Le htmlBody.xsl de configuration définit certains des structure incluant une section avec un test pour les membres: <xsl:if test="$subgroup='members'"> Si cette option était activée au niveau de la classe (ou si elle était définie sur true, cela pourrait vous donner une idée de la façon dont cette sortie est produite.) (Je ne pense pas qu'il y aura une formule magique réglage ici)

2. ici est (je pense) où les liens vers les sous-groupes de membres sont ajoutés, je voudrais aussi jouer avec cela:

<!-- add a link to the member list section for this subgroup --> 
<a href="#{$elementVisibility}Toggle" onclick="OpenSection({$elementVisibility}Toggle)"> 

3. J'ai d'autres idées à essayer de jouer avec la structure, mais je aurais besoin de pirater à pour fournir une réponse claire. Je ne suis même pas sûr que le htmlBody.xsl est l'endroit pour le faire. Si j'avais en fait un besoin ici, je pense que je pourrais atteindre votre objectif le plus facile en procédant comme suit:

  • Générez la documentation de façon standard
  • Parse la documentation générée et fusionner les deux en utilisant un DOM/analyseur XML (ie fusionner les deux dans le code et sortir un nouveau document HTML avec les URL mises à jour pour les ancres sur la page courante)

La bonne chose est qu'il existe un schéma de nommage cohérent utilisé dans les fichiers générés et les liens , donc je pense qu'il serait plus facile d'écrire ce processus et mettre à jour tous les liens pour être ancres que ce serait t o gâcher trop avec les modèles. Je pense réellement que ce serait assez facile à accomplir pour quelqu'un expérimenté avec ce type de manipulation de documents. Avertissement: Je ne suis même pas proche d'un expert de SandCastle, je l'ai seulement utilisé au minimum et il y a plus d'un an. Je n'ai pas non plus passé de temps avant aujourd'hui en considérant comment je pourrais le pirater, en l'utilisant seulement hors de la boîte. Je n'aurais même pas répondu à cela, sauf pour le manque d'autres réponses. Il existe peut-être un moyen de config supporté pour accomplir cela, mais en tant qu'utilisateur occasionnel, je ne peux même pas penser à la manière de l'aborder.

Je fais également quelques hypothèses ici sur la façon dont la sortie HTML serait basée sur mon expérience avec le SHFB. Je suis peut-être trop loin là-bas aussi. Je n'ai plus de projet pour lequel je puisse générer une documentation sur les châteaux de sable, mais si quelqu'un peut publier un lien vers une sortie HTML de SandCastle et que cette approche m'intéresse, je serais ravi de vous aider.

Questions connexes