Как в OpenCode Desktop уменьшить поля в окне чата?
Есть рецепты, как сделать свою тему / пропатчить CSS для TUI версии. Для Desktop они не подходят, поэтому расчехляем костыли.
Это приложение на Electron. В CSS есть параметр --container-session: 744px;, который приводит к отвратительно огромным боковым полям в окне чата (если монитор с большим разрешением, а дополнительные панели свёрнуты). Чтобы стало нормально, надо поменять значение на что-то более приемлемое. Я поставил 80%.
Ситуация осложняется тем, что ресурсы упакованы в файл %LOCALAPPDATA%\Programs\@opencodedesktop\resources\app.asar. Рядом лежит каталог app.asar.unpacked, но если туда положить изменённый файл, то он не подтягивается приложением (хотя говорят, что должен, но говорят без уверенности). Так что придётся перепаковывать.
cd "%LOCALAPPDATA%\Programs\@opencodedesktop\resources"
cp app.asar app.asar.bak
npx @electron/asar extract app.asar temp
sed -i 's/--container-session:744px;/--container-session:80%;/g' temp/out/renderer/assets/main*.css
npx @electron/asar pack temp app.asar
rm -r temp
Примечания:
проверялось на версии OpenCode Desktop 2.1.2
командочки запускались под Windows с установленным Cygwin
для asar extract нужен каталог app.asar.unpacked, так что если хочется выполнять это с копией файла, то этот каталог тоже надо прихватить
sed выдаёт ошибку /usr/bin/sed: preserving permissions for ‘temp/out/renderer/assets/sed8d7yHc’: Invalid argument, но всё равно работает
после asar pack файл стал на мегабайт меньше -- не к добру -- поживём / увидим
не забывайте делать бэкапы и будьте здоровы