Как настроить IntelliJ для использования коротких имен пакетов в "Оптимизации импорта" для кодовой базы Scala?
В проекте scala, где мы используем версию сообщества IntelliJ, мы хотим использовать несколько пакетов для каждого файла, чтобы мы могли ссылаться на них с более коротким синтаксисом:
package com.dreamlines.dragonfly
package api
package domain
package harbours
import common.entities.EsHarbour
import common.utils.date.DLDateTime
Тем не менее, IntellJ хочет применить полное имя пакета и, следовательно, при оптимизации импорта изменяет код на:
import com.dreamlines.dragonfly.common.entities.EsHarbour
import com.dreamlines.dragonfly.common.utils.date.DLDateTime
Как мне настроить поведение оптимизации импорта?
Должно
- по крайней мере, сохранить сокращенный импорт или
- в лучшем случае укорачивайте более длинные автоматически
Я хочу сохранить другое поведение оптимизации импорта без изменений, например, удаление неиспользуемых операций импорта, добавление отсутствующих операций импорта, сортировку операций импорта. Поэтому я не считаю, что использование оптимизации импорта не является допустимым вариантом.
Кроме того, мы используем scalafmt
форматировщик, поэтому он может относиться к нашему .scalafmt.conf
это выглядит так для этого проекта:
version = 2.0.0
style = default
maxColumn = 120
continuationIndent.callSite = 2
continuationIndent.defnSite = 2
align.openParenDefnSite = false
align.openParenCallSite = false
danglingParentheses = true
indentOperator = spray
project.excludeFilters = [".*\\.sbt"]
rewrite.rules = [RedundantBraces, RedundantParens, prefercurlyfors]
unindentTopLevelOperators = true
importSelectors = singleLine
spaces.afterKeywordBeforeParen = true
lineEndings = unix
newlines.penalizeSingleSelectMultiArgList = false
newlines.alwaysBeforeElseAfterCurlyIf = false
binPack.literalArgumentLists = false
runner.optimizer.forceConfigStyleMinArgCount = 1