Défi:
Certains ascii-art sont difficiles à réaliser, mais facilitent la lecture des commentaires de code, surtout lorsque le code est dense. Le défi est de créer un outil simple qui convertit les commentaires en simple ascii-art avec des flèches. Les commentaires à modifier sont délimités par des commentaires vides.
Par exemple, en supposant la syntaxe de commentaire Haskell, convertissez ceci:
--
-- Here's a thing
-- Here's another thing
-- The most important thing
-- * * *
--
f x=x+1*x*1*1*0
Pour ça:
-- /------------< Here's a thing
-- | /-------< Here's another thing
-- | | /-< The most important thing
-- | | |
-- v v v
f x=x+1*x*1*1*0
Règles:
- Votre réponse peut être une fonction ou un programme complet
- Vous pouvez choisir la langue avec laquelle il est conçu pour fonctionner, en remplaçant le "-" par deux ou plusieurs caractères qui délimitent un commentaire dans une langue
- Si vous utilisez un autre format de commentaire qui nécessite des délimiteurs de début et de fin, chaque ligne des sections reformatées doit être un commentaire approprié
- Les sections à reformater sont délimitées par le commentaire vide "\ n - \ n"
- Outre l'ajout de nouvelles lignes, le programme ne doit modifier aucune des entrées à l'exception des sections délimitées
- Un commentaire rempli d'un nombre arbitraire d'espaces peut apparaître juste avant une section de sortie correctement formatée
- Les failles standard sont interdites
Exemples supplémentaires:
(input)
--
--
(output)
nothing
(input)
[Code Here]
--
-- important
-- *
--
(output)
[Code Here]
-- /-< important
-- |
-- v
(input)
--
-- Do
-- Re
-- Mi
-- Fa
-- So
-- *****
--
(output)
-- /-----< Do
-- |/----< Re
-- ||/---< Mi
-- |||/--< Fa
-- ||||/-< So
-- |||||
-- vvvvv
Notation:
- Le moins d'octets gagne
- Les soumissions sans explications ou exemple d'entrées / sorties non triviales ne seront pas prises en compte (bien que je laisse un délai de grâce pour laisser le temps de les ajouter)