Wyzwanie:
Niektóre ascii-art są trudne do zrobienia, ale ułatwiają czytanie komentarzy do kodu, szczególnie gdy kod jest gęsty. Wyzwanie polega na stworzeniu prostego narzędzia, które zamienia komentarze w proste ascii-art za pomocą strzałek. Komentarze do modyfikacji są rozdzielone pustymi komentarzami.
Na przykład, załóżmy, że składnia komentarza Haskell przekształca to:
--
-- Here's a thing
-- Here's another thing
-- The most important thing
-- * * *
--
f x=x+1*x*1*1*0
Do tego:
-- /------------< Here's a thing
-- | /-------< Here's another thing
-- | | /-< The most important thing
-- | | |
-- v v v
f x=x+1*x*1*1*0
Zasady:
- Twoja odpowiedź może być funkcją lub pełnym programem
- Możesz wybrać język, z którym jest przeznaczony, zastępując „-” dwoma lub więcej znakami ograniczającymi komentarz w pewnym języku
- Jeśli używasz innego formatu komentarza, który wymaga początkowych i końcowych ograniczników, każda linia przeformatowanych sekcji musi być poprawnym komentarzem
- Sekcje, które należy sformatować, są oznaczone pustym komentarzem „\ n - \ n”
- Oprócz dodawania nowych wierszy program nie może zmieniać żadnych danych wejściowych poza sekcjami ograniczonymi
- Komentarz wypełniony dowolną liczbą spacji może pojawić się bezpośrednio przed odpowiednio sformatowaną sekcją wyniku
- Standardowe luki są niedozwolone
Dodatkowe przykłady:
(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
Punktacja:
- Wygrywa najmniej bajtów
- Zgłoszenia bez wyjaśnień lub nietrywialne przykładowe dane wejściowe / wyjściowe nie będą brane pod uwagę (chociaż pozostawiam okres karencji, aby dać czas na dodanie takich informacji)