Size: a a a

Kotlin Community

2019 December 13

KG

Kirill Gamazkov in Kotlin Community
Кто-нибудь возился с .editorconfig?
Я пытаюсь отучить идею трогать при рефакторинге отступы аргументов конструктора, типа таких:
class Something(
   private val some: Some,
   private val thing: Thing
) { ... }
Если перенести Some или Thing в другой пакет, Идея поправит все отступы:
class Something(
       private val some: Some,
       private val thing: Thing
) { ... }
Пытался задать в .editorconfig indent_size=4, ей пофиг.
источник

DB

Dmitry Baynak in Kotlin Community
Kirill Gamazkov
Кто-нибудь возился с .editorconfig?
Я пытаюсь отучить идею трогать при рефакторинге отступы аргументов конструктора, типа таких:
class Something(
   private val some: Some,
   private val thing: Thing
) { ... }
Если перенести Some или Thing в другой пакет, Идея поправит все отступы:
class Something(
       private val some: Some,
       private val thing: Thing
) { ... }
Пытался задать в .editorconfig indent_size=4, ей пофиг.
В настройках это лежит по пути Settings -> Editor -> Code Style -> Kotlin -> Tabs and Indents -> Continuation indent
источник

KG

Kirill Gamazkov in Kotlin Community
Мне бы решение на всю команду сразу. .editorconfig можно в git закоммитить
источник

DB

Dmitry Baynak in Kotlin Community
источник

KG

Kirill Gamazkov in Kotlin Community
Спасибище
источник

K

Kopusha in Kotlin Community
@vokzamag а у вас разные IDE в команде? Почему расшарить идеевские настройки будет "не на всю команду"?
источник

KG

Kirill Gamazkov in Kotlin Community
.editorconfig меньше действий требует. Он просто есть в репозитории и действует. А расшаренные настройки ещё импортнуть надо не полениться
источник

K

Kopusha in Kotlin Community
но 1 в 1 настройки идеи переписать не получится, так? Т.е. если у кого-то что-то там кастомное в настройках IDEA, то придется просить людей тыкать галочки?
источник

KG

Kirill Gamazkov in Kotlin Community
Теоретически да, на практике таких людей, думаю, нет.
И даже с этой оговоркой вариант с .editorconfig выигрывает по кол-ву действий. Экспортированные настройки нужно будет импортнуть каждому члену команды в любом случае, а настройки в editorconfig в 99.9% случаев не потребуют дополнительных телодвижений
источник

KG

Kirill Gamazkov in Kotlin Community
От количества репозиториев зависит ещё. Если их много, то пихать .editorconfig в каждый реп затратней, чем настройки идеи шарить
источник

K

Kopusha in Kotlin Community
гм, а есть приблуда, которая по .editorconfig будет на CI форматировать? В последний раз, когда я смотрел, там страх господний был, нужно было всю идею на CI тащить.
источник

KG

Kirill Gamazkov in Kotlin Community
ХЗ. Более-менее близкое решение - линтер запускать в режиме авто-исправлений
источник

IS

Ignat Simonenko in Kotlin Community
Kirill Gamazkov
.editorconfig меньше действий требует. Он просто есть в репозитории и действует. А расшаренные настройки ещё импортнуть надо не полениться
настройки ж можно конвернуть в editorconfig, там правда много IDE-specific штук будет
источник

N

Newbie Developer in Kotlin Community
Йо ребят

Чёт не могу въехать в ковариаьивность интерфейсов и классов в джаве
источник

N

Newbie Developer in Kotlin Community
Newbie Developer
Йо ребят

Чёт не могу въехать в ковариаьивность интерфейсов и классов в джаве
Хочу сделать вот так
источник

N

Newbie Developer in Kotlin Community
источник

N

Newbie Developer in Kotlin Community
Но почему то ругается, но при этом если сделать доп обёртку, то заработает
источник

N

Newbie Developer in Kotlin Community
Что я делаю не так в первом варианте?))
источник

IS

Ignat Simonenko in Kotlin Community
Newbie Developer
Но почему то ругается, но при этом если сделать доп обёртку, то заработает
так по идее у тебя T может быть не open, а компилятор это проверить не сможет 🤔
во втором случае явно понятно, что можно отнаследоваться
источник

N

Newbie Developer in Kotlin Community
Ignat Simonenko
так по идее у тебя T может быть не open, а компилятор это проверить не сможет 🤔
во втором случае явно понятно, что можно отнаследоваться
Я же Т помечаю как интерфейс...
Он разве не может это проверить?
источник