mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
show notification instead of error when parsing failed
This commit is contained in:
@@ -23,7 +23,7 @@ public class Utils {
|
||||
}
|
||||
|
||||
public static void invalidConfigMessage(Project project, String configValue, String configKey, String filePath) {
|
||||
EditorConfigNotifier.getInstance().error(project, configValue, "\"" + configValue + "\" is not a valid value for " + configKey + " for file " + filePath);
|
||||
EditorConfigNotifier.getInstance().error(project, configValue, "\"" + configValue + "\" is not a valid value" + (!configKey.isEmpty() ? " for " + configKey : "") + " for file " + filePath);
|
||||
}
|
||||
|
||||
public static void appliedConfigMessage(Project project, String configValue, String configKey, String filePath) {
|
||||
|
||||
+1
-2
@@ -4,7 +4,6 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
|
||||
import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.FileIndentOptionsProvider;
|
||||
import org.editorconfig.Utils;
|
||||
@@ -37,7 +36,7 @@ public class EditorConfigIndentOptionsProvider extends FileIndentOptionsProvider
|
||||
// Get editorconfig settings
|
||||
final String filePath = file.getCanonicalPath();
|
||||
final SettingsProviderComponent settingsProvider = SettingsProviderComponent.getInstance();
|
||||
final List<EditorConfig.OutPair> outPairs = settingsProvider.getOutPairs(filePath);
|
||||
final List<EditorConfig.OutPair> outPairs = settingsProvider.getOutPairs(project, filePath);
|
||||
// Apply editorconfig settings for the current editor
|
||||
return applyCodeStyleSettings(project, outPairs, file);
|
||||
}
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ public class EditorSettingsManager extends FileDocumentManagerAdapter {
|
||||
// Get editorconfig settings
|
||||
final String filePath = file.getCanonicalPath();
|
||||
final SettingsProviderComponent settingsProvider = SettingsProviderComponent.getInstance();
|
||||
final List<EditorConfig.OutPair> outPairs = settingsProvider.getOutPairs(filePath);
|
||||
final List<EditorConfig.OutPair> outPairs = settingsProvider.getOutPairs(myProject, filePath);
|
||||
// Apply trailing spaces setting
|
||||
final String trimTrailingWhitespace = Utils.configValueForKey(outPairs, trimTrailingWhitespaceKey);
|
||||
applyConfigValueToUserData(file, TrailingSpacesStripper.OVERRIDE_STRIP_TRAILING_SPACES_KEY,
|
||||
|
||||
@@ -59,7 +59,7 @@ public class EncodingManager extends FileDocumentManagerAdapter {
|
||||
isApplyingSettings = true;
|
||||
try {
|
||||
final String filePath = file.getCanonicalPath();
|
||||
final List<OutPair> outPairs = SettingsProviderComponent.getInstance().getOutPairs(filePath);
|
||||
final List<OutPair> outPairs = SettingsProviderComponent.getInstance().getOutPairs(myProject, filePath);
|
||||
final EncodingProjectManager encodingProjectManager = EncodingProjectManager.getInstance(myProject);
|
||||
final String charset = Utils.configValueForKey(outPairs, charsetKey);
|
||||
if (!charset.isEmpty()) {
|
||||
|
||||
@@ -71,7 +71,7 @@ public class LineEndingsManager extends FileDocumentManagerAdapter {
|
||||
if (!Utils.isEnabled(CodeStyleSettingsManager.getInstance(myProject).getCurrentSettings())) return;
|
||||
|
||||
final String filePath = file.getCanonicalPath();
|
||||
final List<EditorConfig.OutPair> outPairs = SettingsProviderComponent.getInstance().getOutPairs(filePath);
|
||||
final List<EditorConfig.OutPair> outPairs = SettingsProviderComponent.getInstance().getOutPairs(myProject, filePath);
|
||||
final String lineEndings = Utils.configValueForKey(outPairs, lineEndingsKey);
|
||||
if (!lineEndings.isEmpty()) {
|
||||
try {
|
||||
|
||||
+4
-2
@@ -3,6 +3,8 @@ package org.editorconfig.plugincomponents;
|
||||
import com.intellij.openapi.components.ApplicationComponent;
|
||||
import com.intellij.openapi.components.ServiceManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.editorconfig.Utils;
|
||||
import org.editorconfig.core.EditorConfig;
|
||||
import org.editorconfig.core.EditorConfig.OutPair;
|
||||
import org.editorconfig.core.EditorConfigException;
|
||||
@@ -24,14 +26,14 @@ public class SettingsProviderComponent implements ApplicationComponent {
|
||||
return ServiceManager.getService(SettingsProviderComponent.class);
|
||||
}
|
||||
|
||||
public List<OutPair> getOutPairs(String filePath) {
|
||||
public List<OutPair> getOutPairs(Project project, String filePath) {
|
||||
final List<OutPair> outPairs;
|
||||
try {
|
||||
outPairs = editorConfig.getProperties(filePath);
|
||||
return outPairs;
|
||||
}
|
||||
catch (EditorConfigException error) {
|
||||
LOG.error(error);
|
||||
Utils.invalidConfigMessage(project, error.getMessage(), "", filePath);
|
||||
return new ArrayList<OutPair>();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user