La réponse peut bien sûr dépendre de nombreux facteurs, mais si nous commençons par un code de texte brut correct et bien formaté , alors on peut plus ou moins généraliser les choses ici.
La «mise en forme» initiale dans le texte source sera:
saut de ligne , espace et tabulation . Notez que la nouvelle ligne et le saut de ligne manuel (comme dans le logiciel DTP) ne sont pas la même chose, et vice versa, certaines langues rares peuvent
autoriser d'autres caractères de formatage, bien que je n'en ai jamais entendu parler.
Les commentaires ne font pas partie du code exécutable, ils peuvent donc être reformatés sans trop de risques, si l'on sait s'il s'agit vraiment d'un commentaire. La première chose à regarder est donc de savoir comment les commentaires sont balisés.
Il est bon de connaître quelques notions de base sur la mise en forme initiale du texte en clair. Par exemple, pour Python, il y a le guide de style PEP8 . Bien qu'il soit conçu pour Python, ce guide de mise en forme peut être utilisé comme référence pour les principaux langages tels que C / C ++ et Java. L'examen de divers exemples de projets peut aider en cas de doute.
Ainsi, le premier principe serait: ne changez pas le texte source.
Je passerais par une liste de contrôle - assurez-vous que:
- Aucun remplacement automatique de personnage ne se produit sur aucune étape.
- Aucune modification du texte n'est effectuée (sauf si vous êtes sûr à 100% qu'elles doivent être effectuées).
- Aucun retour à la ligne n'apparaît.
- Les indentations sont préservées visuellement et sont cohérentes (environ quatre x largeurs par niveau d'indentation).
- Le niveau de retrait initial (zéro) doit être visible.
- Les styles définis ne détruisent pas la mise en forme de la syntaxe (si la mise en évidence de la syntaxe est utilisée).
- Ayez une sauvegarde de la source en texte brut, afin de pouvoir revérifier le formatage d'origine ou recommencer.
- Les numéros de ligne, s'ils sont présents, doivent être intacts, surtout s'ils sont référencés dans les explications.
En fait, si la source d'origine est correctement formatée, il ne devrait y avoir aucun retour à la ligne. Si des lignes enveloppées apparaissent toujours et sont inévitables, un retrait à un niveau est la solution la plus courante (voir PEP lié ci-dessus). Si un saut de ligne est nécessaire - mieux consulter le guide de style ou l'auteur.
Certains caractères «espaces blancs» mineurs peuvent nécessiter un remplacement. Puisque la source peut inclure des caractères de tabulation, cela signifie bien sûr que le typographe doit s'assurer que tous les tabulations au début de chaque ligne sont cohérentes, c'est-à-dire que les indentations imbriquées sont préservées visuellement et que chaque niveau d'indentation suivant est de la même largeur (environ quatre x largeurs pour un niveau d'indentation).
Idéalement, les indentations qui ont été faites avec des caractères d'espace ou des espaces et des tabulations mixtes devraient être remplacées par une tabulation (ou avec ce que le logiciel DTP peut faire mieux pour les indentations imbriquées), donc, si nécessaire, l'ajustement des indentations peut être plus facile.
Bien sûr, on peut laisser des espaces, mais il peut être plus difficile de gérer leur largeur lors du changement de police et plus difficile d'aligner les indentations de la ligne intérieure comme dans les colonnes du tableau.
Police + espaces espacés
Notez que si la source est formatée avec des espaces intentionnellement et était destinée à être lue uniquement en police à espacement fixe (par exemple, les diagrammes ASCII ou l'art ASCII), il faut conserver les espaces totalement inchangés , mais cette décision doit être prise depuis le début. La police "Courier New" est la plus courante dans ce cas. Toujours si ce n'est pas vraiment nécessaire, je déconseille les espaces fixes, car de moins en moins de nouvelles personnes choisissent aujourd'hui l'espace fixe pour le codage, et en cas de relecture, les polices proportionnelles offriront une meilleure expérience de lecture.
En général, les polices condensées (par exemple Arial étroit) ou plus petites peuvent mieux fonctionner: elles mettent davantage l'accent contrairement au corps du texte, elles rendent le code plus compact et donc moins probable que des retours à la ligne indésirables apparaissent.
Je pense qu'ici, on peut tracer une ligne, et si ce qui précède est fait, il y a alors une probabilité de 99% que tout se passe bien, au moins pour un bloc de code à une seule police sans couleurs.
Outils et formatage avancé
De plus, l'apparence peut être considérablement améliorée en utilisant la coloration syntaxique.
impression en couleur ou affichage à l'écran: dans une mise en page en couleur, toutes les fonctionnalités de la mise en surbrillance peuvent être utilisées, c'est donc le meilleur des cas, mais l'impression peut entraîner des changements de couleur.
niveaux de gris ou impression noir et blanc: ici, bien sûr, on peut utiliser des caractères gras (par exemple, des mots clés) ou en italique (par exemple des commentaires), mais notez que les couleurs seront converties en gris avec toutes les conséquences. Par exemple, les commentaires grisés peuvent être superbes sur un écran, mais peuvent devenir trop pâles sur le papier.
La question la plus importante est de savoir si le créateur de mise en page dispose d'outils qui peuvent représenter le code sous une forme lisible. Heureusement, il existe de nombreux outils gratuits pour l'édition de code, les plus importants (pour Windows) sont: Notepad ++, VSCode, Visual Studio . Mais soyez conscient des possibles conversions automatiques implicites des tabulations en espaces.
Dans Notepad ++, il existe une option pour exporter le code au format RTF , ce qui préservera tout le formatage et la coloration syntaxique de la source.
Si la mise en page ne nécessite pas de modification du flux de texte dans la présentation du code, on peut directement utiliser des images (captures d'écran) - elle n'est pas aussi flexible que le texte, mais conservera un formatage et une numérotation des lignes à 100%, et peut gagner beaucoup de temps. Par exemple, les numéros de ligne peuvent être difficiles à conserver sous forme de texte. L'exportation au format PDF est également une bonne alternative - mais tous les logiciels DTP ne peuvent pas intégrer de fichiers PDF et certains formats peuvent être perdus lors de l'impression au format PDF.
Par exemple, ma configuration pour le code Python dans Notepad ++ ressemble à ceci:
Ceci est juste pour illustrer, que l'on peut utiliser directement des captures d'écran et qui peut en fait être la méthode la plus simple. Il existe divers outils qui peuvent aider à la capture d'écran - on peut avoir besoin de «recoudre» les écrans pour des images de plus haute résolution.
Le jeu de couleurs est bien sûr individuel, défini dans le configurateur de style de l'éditeur, qui connaît déjà la langue prise en charge, ce qui rend difficile la fausse mise en forme même si l'on ne connaît pas la syntaxe. Ici, les règles générales de typographie devraient fonctionner: pas trop de couleurs, polices cohérentes, indentations, interligne confortable.
Des outils / plugins supplémentaires pour les définitions de langage personnalisé sont également courants, mais ceux-ci nécessitent une connaissance de la syntaxe.