in src/main/kotlin/mobi/hsz/idea/gitignore/psi/IgnoreEntryManipulator.kt [18:31]
override fun handleContentChange(entry: IgnoreEntry, range: TextRange, newContent: String): IgnoreEntry {
if (entry.language !is IgnoreLanguage) {
return entry
}
val language = entry.language as IgnoreLanguage
val fileType = (language.associatedFileType as IgnoreFileType)
val file = PsiFileFactory.getInstance(entry.project)
.createFileFromText(language.filename, fileType, range.replace(entry.text, newContent))
return when (val newEntry = PsiTreeUtil.findChildOfType(file, IgnoreEntry::class.java)) {
null -> entry
else -> entry.replace(newEntry) as IgnoreEntry
}
}