Коли я бачу записи коду-гольфу, які збивають декілька символів, відбілюючи код, я переглядаю історію редагування для того, щоб побічно розходитись. Побачити та дізнатися :)
Це завдання полягає в тому, щоб зробити програму, яка створює найкрасивіші анімовані розбіжності.
- Введенням буде будь-яка впорядкована серія текстових версій.
- Програма може бути написана будь-якою мовою програмування.
- Допускається, що програма обмежує себе введенням даних у деяких конкретних мовах програмування.
- Програма не повинна налаштовуватися на конкретні вхідні дані; програма повинна бути загальною і працювати для будь-якої впорядкованої серії текстових версій.
- Для кожної версії на вході повинен бути відповідний час у анімації виводу, де відображається повний текст версії. Ви повинні анімувати різницю між етапами версій, і всі етапи версій повинні бути присутніми і в порядку у висновку. На цих ключових кадрах повинен бути показаний розмір версії, і глядач повинен зрозуміти, що це повна версія, яку вони бачать у цей момент.
- Програма може не використовувати жодного стороннього коду для обчислення різниць.
- Виділення синтаксису не є обов'язковим. Якщо програма забарвлює синтаксис, вона може не використовувати жодного стороннього коду для цього.
- Вихід буде анімований GIF.
- Програма може використовувати бібліотеку третьої сторони для створення GIF.
- Це конкурс популярності , тому згідно з визначенням популярності-конкурсу на цьому сайті виграє запис з найбільшою кількістю голосів .
Ось простий приклад скрипта , який використовує Пітона ndiff і подушку в елементарну анімований GIF підтримка і оживляє кожен додавати і видаляти крок:
Особисто я вважаю це досить поганою роботою. Він не робить підсвічування синтаксису, не намагається переміщувати фрагменти коду, які переставляються, не відчуває, що хтось редагує його в реальному часі тощо. Він також порушує правила щодо відображення розміру вхідних даних у байтах на ключових кадрах, і для використання дифференціалу використовує сторонні бібліотеки. Багато місця для вдосконалення!
І, сподіваємось, популярні записи стануть корисними цікавими інструментами і для спільноти codegolf.stackexchange.com. Тож його цінують, якщо іншим програмам легко запускати та користуватися.