Publié le :
Macro CREATION_INTERNE

Génération de documentation via Code Diary

Ce code est également disponible en : Deutsch English Español
En attente de validation
Ce script a pour but de documenter le fichier `project_main.sas©`. Il commence par charger les macros nécessaires (`code_diary.sas©`, `convert_markdown_to_html.sas©`). Ensuite, il crée quatre tables SAS© temporaires dans la bibliothèque WORK via `datalines` pour configurer le comportement de la documentation : alias de sections, ordre d'affichage, libellés des en-têtes et mots-clés à masquer (scrub). Enfin, il lance la macro de documentation puis la macro de conversion HTML.
Analyse des données

Type : CREATION_INTERNE


Les données de configuration (listes d'alias, d'ordres, d'en-têtes et de filtres) sont créées directement dans le script à l'aide d'étapes DATA et de l'instruction `datalines`.

1 Bloc de code
INCLUDE
Explication :
Inclusion des fichiers sources contenant les définitions des macros `code_diary` et `convert_markdown_to_html`.
Copié !
1%include "&MACRO_ROOT.code_diary.sas";
2%include "&MACRO_ROOT.convert_markdown_to_html.sas";
3 
2 Bloc de code
DATA STEP Data
Explication :
Configuration des paramètres de la documentation via la création de tables SAS (WORK). Ces tables définissent les alias de sections, l'ordre de tri, les titres personnalisés et les éléments à exclure de la sortie finale.
Copié !
1DATA work.alias_list;
2 INFILE DATALINES;
3 INPUT short_keyword $1-10 long_keyword $11-50;
4 DATALINES;
5excl exclusion
6stat statistics
7;
8 
9DATA work.order_list;
10 INFILE DATALINES;
11 INPUT keyword $1-20 order_no 21-25;
12 DATALINES;
13todo -30
14exclusion -20
15exclusion.time -19
16exclusion.person -18
17methods -10
18no_keyword 0
19;
20 
21DATA work.header_list;
22 INFILE DATALINES;
23 INPUT keyword $1-15 header $16-50;
24 DATALINES;
25exclusion Exclusion criteria
26person Subjects
27time Time periods
28todo Task list
29;
30 
31DATA work.scrub_list;
32 INFILE DATALINES;
33 INPUT keyword $1-15;
34 DATALINES;
35todo
36regex
37;
3 Bloc de code
MACRO CALL
Explication :
Exécution de la macro `%code_diary` pour analyser le fichier `project_main.sas` et générer deux fichiers Markdown (une version complète pour les codeurs et une version nettoyée).
Copié !
1%code_diary(
2 input_main_file = &DEMO_ROOT.project_main.sas,
3 out_dir = &DEMO_ROOT,
4 out_file = OUTPUT-coder.md,
5 out_file_scrubbed = OUTPUT-for-all.md,
6 debug_mode = 0,
7 section_aliases = work.alias_list,
8 section_order = work.order_list,
9 section_headers = work.header_list,
10 sections_scrubbed = work.scrub_list
11);
4 Bloc de code
MACRO CALL
Explication :
Appel de la macro utilitaire pour convertir le fichier Markdown nettoyé en une page HTML.
Copié !
1%convert_markdown_to_html(
2 in_file_md = "&DEMO_ROOT.output-for-all.md",
3 out_file_html = "&DEMO_ROOT.output-for-all.htm",
4 debug_mode = 0
5);
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.