|
Professor Seleznov
|
Первая часть истории — про десктопный клиент — вот здесь. Рекомендую прочитать, чтобы понять откуда всё началось.
-Когда я выложил десктопный CraftHub, честно говоря, не ожидал особой реакции. Инструмент делался под конкретную боль — редактировать JSON-конфиги не как текст, а как таблицу. Удобно для меня и моей команды, может пригодится ещё кому-то. Но появился запрос:
«А extension для VS Code планируется?» «Было бы круто прямо в редакторе, не переключаясь» «Можно как-то проще?»
- Проблема, которую это решает — теперь острее В десктопной версии проблема была сформулирована так: JSON — неудобный формат для активного редактирования табличных данных. Это правда, и это решалось отдельным приложением. Но оказалось, что есть ещё один слой боли, который я недооценил. Контекст-свитчинг убивает концентрацию. Вы работаете в VS Code. Видите, что нужно поправить конфиг. Открываете CraftHub. Загружаете файл. Редактируете. Сохраняете. Переключаетесь обратно. Продолжаете работу. Это не катастрофа. Но это трение. И оно накапливается. Особенно когда конфиг правится не раз в день, а постоянно. Особенно когда в команде не все знают про CraftHub и кто-то всё равно правит JSON руками. Особенно когда хочется просто не выходить из редактора. - Что получилось CraftHub теперь живёт прямо внутри VS Code. Открываете .json файл с массивом объектов — и у вас появляется кнопка переключения в табличный режим. Никакого отдельного приложения, никакого импорта-экспорта, никаких лишних действий.

VsCodeScreen Всё, что вы делаете в таблице — мгновенно пишется обратно в файл. Добавили строку — файл обновился. Переименовали колонку — все ключи переименованы. Переключились обратно в текстовый редактор — видите тот же JSON, только уже поправленный. - Всё, что было в десктопе — теперь здесь Я старался не срезать углы. Функционал таблицы портирован полностью. Управление колонками
- Добавить — выбираете имя и тип (string, number, bool, object, array). Поле появляется во всех строках с дефолтным значением.
- Переименовать — кнопка ✎ в заголовке. Ключ переименовывается во всех строках, порядок полей сохраняется.
- Удалить — кнопка ✕. Поле исчезает из всей таблицы.
Управление строками
- Добавить новую пустую строку
- Удалить одну или несколько выбранных
- Дублировать — вставить копию сразу после или в конец
- Вырезать / скопировать / вставить — с внутренним буфером обмена
- Скопировать как JSON-массив или как отдельные объекты
- Редактирование вложенных структур JSON редко бывает плоским. Обычно это объекты внутри массивов внутри объектов. В текстовом редакторе вы в этом буквально тонете. В CraftHub для VS Code ячейки с объектом или массивом показывают компактный превью и кнопку редактировать. Нажимаете — открывается вложенный редактор, который сам по себе является полноценной таблицей:
- Массивы — те же строки и колонки, те же операции
- Объекты — поля и значения в едином представлении
И главное: вложенность не ограничена. Объект внутри массива внутри объекта внутри массива? Открываете слой за слоем. Кнопка ← Back возвращает назад без потери несохранённых изменений. - Поиск Иногда таблица большая. Очень большая. Найти конкретное значение глазами — не вариант. Поиск работает по всем ячейкам сразу: вводите текст, совпадения подсвечиваются. Enter / Shift + Enter — следующее / предыдущее совпадение. Счётчик показывает позицию: 3 / 12. - Переключение режимов в один клик Таблица — не замена текстовому редактору. Иногда нужно посмотреть сырую структуру, сделать bulk-правку регулярками или просто убедиться в формате. Кнопка в тулбаре переключает между режимами мгновенно. Туда и обратно. Данные всегда синхронизированы. - Чего нет — и почему В десктопной версии есть генерация C#-классов. В расширении её нет. Это осознанное решение. Функция была сделана под Unity-разработчиков с конкретным workflow: описал схему → экспортировал класс → кинул в проект. Но в контексте VS Code, где Unity-проекты открываются в отдельном окне, а C# разработка идёт со своими инструментами — эта фича выглядела бы чужеродно. Лишняя кнопка без чёткого места в процессе. Лучше меньше, но точнее. - Попробовать Расширение открытое, исходники и установка: →github.com/c3n9/CraftHubExtension →https://marketplace.visualstudio.com/items?itemName=c3n9.crafthub Десктопный клиент: →github.com/c3n9/CraftHub-Не ожидал, что первая статья вызовет столько отклика. Это мотивирует. Если есть идеи, баги или просто «было бы круто если бы…» — issue и комментарии открыты. Звёздочка на GitHub — лучший способ сказать, что инструмент нужен.-Источник
|
|
|