对于想了解如何在PytorchLightning中运行单轮验证?的读者,本文将提供新的信息,并且为您提供关于com.intellij.lang.javascript.highlighting.JSHi
对于想了解如何在 PytorchLightning 中运行单轮验证?的读者,本文将提供新的信息,并且为您提供关于com.intellij.lang.javascript.highlighting.JSHighlighter的实例源码、com.intellij.openapi.editor.highlighter.EditorHighlighterFactory的实例源码、com.intellij.openapi.editor.highlighter.EditorHighlighter的实例源码、com.intellij.openapi.editor.highlighter.HighlighterClient的实例源码的有价值信息。
本文目录一览:- 如何在 PytorchLightning 中运行单轮验证?
- com.intellij.lang.javascript.highlighting.JSHighlighter的实例源码
- com.intellij.openapi.editor.highlighter.EditorHighlighterFactory的实例源码
- com.intellij.openapi.editor.highlighter.EditorHighlighter的实例源码
- com.intellij.openapi.editor.highlighter.HighlighterClient的实例源码
如何在 PytorchLightning 中运行单轮验证?
如何解决如何在 PytorchLightning 中运行单轮验证??
我已经通过 PytorchLightning
训练了一个 Trainer.fit
模型并保存了生成的模型。现在我想加载模型并运行单轮验证,无需任何培训。最好的方法是什么? API 似乎只提供 Trainer.fit
和 Trainer.test
。我可以将 MyLightningModule.test_step
覆盖为 MyLightningModule.validation_step
并运行 Trainer.test
,但这感觉就像一个黑客。或者,我可以使用 Trainer.fit
运行 limit_train_batches=1,max_epochs=1
,但这也感觉像是一种黑客攻击。最惯用的方法是什么?
理想情况下,我希望获得一个漂亮而干净的日志,而不用不必要的条目污染它(Trainer.fit
解决方法就是这种情况)。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
com.intellij.lang.javascript.highlighting.JSHighlighter的实例源码
@NotNull @Override public JSHighlighter getSyntaxHighlighter() { return new JSHighlighter(myDialectOptionHolder); }
@NotNull @Override public JSHighlighter getSyntaxHighlighter() { return new JSHighlighter(myDialectOptionHolder); }
@NotNull @Override public JSHighlighter getSyntaxHighlighter() { return new JSHighlighter(myDialectOptionHolder); }
com.intellij.openapi.editor.highlighter.EditorHighlighterFactory的实例源码
private void updateTab(@NotNull JBTabsPaneImpl tabsPane,int index,weaveIdentifier identifier,@NotNull weaveDataType dataType) { Icon icon = iconsMap.containsKey(dataType.getText()) ? iconsMap.get(dataType.getText()) : AllIcons.FileTypes.Any_type; String title = (identifier == null ? "output" : identifier.getName()); tabsPane.setTitleAt(index,title); tabsPane.setIconAt(index,icon); contentTypes.put(title,dataType.getText()); VirtualFile vfile = inputOutputFiles.get(title); if (vfile != null) { vfile.putUserData(newFileDataTypeKey,dataType.getText()); FileContentUtilCore.reparseFiles(vfile); } Editor oldEditor = editors.get(title); FileType newType = fileTypes.containsKey(dataType.getText()) ? fileTypes.get(dataType.getText()) : FileTypes.UNKNowN; ((EditorEx) oldEditor).setHighlighter(EditorHighlighterFactory.getInstance().createEditorHighlighter(project,newType)); }
@NotNull @Override protected List<EditorHighlighterProvider> buildExtensions(@NotNull String stringKey,@NotNull final FileType key) { List<EditorHighlighterProvider> fromEP = super.buildExtensions(stringKey,key); if (fromEP.isEmpty()) { EditorHighlighterProvider defaultProvider = new EditorHighlighterProvider() { @Override public EditorHighlighter getEditorHighlighter(@Nullable Project project,@NotNull FileType fileType,@Nullable VirtualFile virtualFile,@NotNull EditorColoRSScheme colors) { return EditorHighlighterFactory.getInstance().createEditorHighlighter( SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,project,virtualFile),colors); } }; return Collections.singletonList(defaultProvider); } return fromEP; }
@Nullable public static Lexer getLexerBasedOnLexerHighlighter(CharSequence text,VirtualFile virtualFile,Project project) { EditorHighlighter Highlighter = null; PsiFile psiFile = virtualFile != null ? PsiManager.getInstance(project).findFile(virtualFile) : null; final Document document = psiFile != null ? PsiDocumentManager.getInstance(project).getDocument(psiFile) : null; final EditorHighlighter cachedEditorHighlighter; boolean alreadyInitializedHighlighter = false; if (document != null && (cachedEditorHighlighter = getEditorHighlighterForCachesBuilding(document)) != null && PlatformIdTableBuilding.checkCanUseCachedEditorHighlighter(text,cachedEditorHighlighter)) { Highlighter = cachedEditorHighlighter; alreadyInitializedHighlighter = true; } else if (virtualFile != null) { Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(project,virtualFile); } if (Highlighter != null) { return new LexerEditorHighlighterLexer(Highlighter,alreadyInitializedHighlighter); } return null; }
private static Editor createEditor(boolean isReadOnly,final Document document,final Project project) { EditorFactory editorFactory = EditorFactory.getInstance(); Editor editor = (isReadOnly ? editorFactory.createViewer(document,project) : editorFactory.createEditor(document,project)); editor.getContentComponent().setFocusable(!isReadOnly); EditorSettings editorSettings = editor.getSettings(); editorSettings.setVirtualSpace(false); editorSettings.setLineMarkerAreaShown(false); editorSettings.setIndentGuidesShown(false); editorSettings.setLineNumbeRSShown(false); editorSettings.setFoldingOutlineshown(false); editorSettings.setCaretRowShown(false); EditorColoRSScheme scheme = editor.getColoRSScheme(); VirtualFile file = FileDocumentManager.getInstance().getFile(document); if (file != null) { EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file,scheme,project); ((EditorEx) editor).setHighlighter(Highlighter); } return editor; }
private EditorHighlighter createHighlighter() { if (myTemplate != null && myVeLocityFileType != FileTypes.UNKNowN) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,new LightVirtualFile("aaa." + myTemplate.getExtension() + ".ft")); } FileType fileType = null; if (myTemplate != null) { fileType = FileTypeManager.getInstance().getFileTypeByExtension(myTemplate.getExtension()); } if (fileType == null) { fileType = FileTypes.PLAIN_TEXT; } SyntaxHighlighter originalHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,null,null); if (originalHighlighter == null) { originalHighlighter = new PlainSyntaxHighlighter(); } final EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); layeredLexerEditorHighlighter Highlighter = new layeredLexerEditorHighlighter(new TemplateHighlighter(),scheme); Highlighter.registerLayer(FileTemplatetokenType.TEXT,new LayerDescriptor(originalHighlighter,"")); return Highlighter; }
/** * Force re-highlighting in all open editors that belong to specified project. */ public static void rehighlightOpenEditors(final @NotNull Project project) { ApplicationManager.getApplication().runWriteAction(new Runnable() { @Override public void run() { for (Editor editor : EditorFactory.getInstance().getAllEditors()) { if (editor instanceof EditorEx && editor.getProject() == project) { final VirtualFile vFile = ((EditorEx)editor).getVirtualFile(); if (vFile != null) { final EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(project,vFile); ((EditorEx)editor).setHighlighter(Highlighter); } } } } }); }
@Override protected List<EditorHighlighterProvider> buildExtensions(String stringKey,final FileType key) { List<EditorHighlighterProvider> fromEP = super.buildExtensions(stringKey,colors); } }; return Collections.singletonList(defaultProvider); } return fromEP; }
/** * @return created editor. This editor should be released by {@link #disposeEditor(Editor) } * method. */ @NotNull private Editor createEditor(){ Editor editor = EditorFactory.getInstance().createEditor(myDocument,myProject); ((EditorMarkupModel) editor.getMarkupModel()).setErrorStripeVisible(true); EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myFile,EditorColorsManager.getInstance().getGlobalScheme(),myProject); ((EditorEx) editor).setHighlighter(Highlighter); ((EditorEx) editor).setFile(myFile); editor.addEditorMouseListener(myEditorMouseListener); ((EditorImpl) editor).setDropHandler(new FileDropHandler(editor)); TextEditorProvider.putTextEditor(editor,myTextEditor); return editor; }
private static Editor createEditor(boolean isReadOnly,project)); EditorSettings editorSettings = editor.getSettings(); editorSettings.setVirtualSpace(false); editorSettings.setLineMarkerAreaShown(false); editorSettings.setIndentGuidesShown(false); editorSettings.setLineNumbeRSShown(false); editorSettings.setFoldingOutlineshown(false); EditorColoRSScheme scheme = editor.getColoRSScheme(); scheme.setColor(EditorColors.CARET_ROW_COLOR,null); VirtualFile file = FileDocumentManager.getInstance().getFile(document); if (file != null) { EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file,project); ((EditorEx) editor).setHighlighter(Highlighter); } return editor; }
private EditorHighlighter createHighlighter() { if (myTemplate != null && myProject != null && myVeLocityFileType != FileTypes.UNKNowN) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,new LightVirtualFile("aaa." + myTemplate.getExtension() + ".ft")); } FileType fileType = null; if (myTemplate != null) { fileType = FileTypeManager.getInstance().getFileTypeByExtension(myTemplate.getExtension()); } if (fileType == null) { fileType = FileTypes.PLAIN_TEXT; } SyntaxHighlighter originalHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,null); if (originalHighlighter == null) originalHighlighter = new PlainSyntaxHighlighter(); return new LexerEditorHighlighter(new TemplateHighlighter(originalHighlighter),EditorColorsManager.getInstance().getGlobalScheme()); }
@Nullable @Override public Lexer getIndexingLexer(@NotNull PsiFile file) { if (!(file instanceof LatteFile)) { return null; } VirtualFile virtualFile = file.getVirtualFile(); if (virtualFile == null) { virtualFile = file.getViewProvider().getVirtualFile(); } try { layeredLexer.ourdisableLayersFlag.set(Boolean.TRUE); EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file.getProject(),virtualFile); return new LexerEditorHighlighterLexer(Highlighter,false); } finally { layeredLexer.ourdisableLayersFlag.set(Boolean.FALSE); } }
@javax.annotation.Nullable private static EditorHighlighter createEditorHighlighter(@Nullable Project project,@Nonnull DocumentContent content) { FileType type = content.getContentType(); VirtualFile file = content.getHighlightFile(); Language language = content.getUserData(DiffUserDataKeys.LANGUAGE); EditorHighlighterFactory HighlighterFactory = EditorHighlighterFactory.getInstance(); if (language != null) { SyntaxHighlighter SyntaxHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(language,file); return HighlighterFactory.createEditorHighlighter(SyntaxHighlighter,EditorColorsManager.getInstance().getGlobalScheme()); } if (file != null) { if ((type == null || type == PlainTextFileType.INSTANCE) || file.getFileType() == type || file instanceof LightVirtualFile) { return HighlighterFactory.createEditorHighlighter(project,file); } } if (type != null) { return HighlighterFactory.createEditorHighlighter(project,type); } return null; }
@Override protected List<EditorHighlighterProvider> buildExtensions(String stringKey,@Nonnull FileType fileType,@Nonnull EditorColoRSScheme colors) { return EditorHighlighterFactory.getInstance().createEditorHighlighter( SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,colors); } }; return Collections.singletonList(defaultProvider); } return fromEP; }
@Nullable public static Lexer getLexerBasedOnLexerHighlighter(CharSequence text,alreadyInitializedHighlighter); } return null; }
private static Editor createEditor(boolean isReadOnly,project); ((EditorEx) editor).setHighlighter(Highlighter); } return editor; }
@Nonnull protected Editor createEditor(@Nullable Project project,Document document,VirtualFile file) { EditorEx editor = (EditorEx)EditorFactory.getInstance().createViewer(document,project); final EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file,project); editor.setFile(file); editor.setHighlighter(Highlighter); EditorSettings settings = editor.getSettings(); settings.setAnimatedScrolling(false); settings.setRefrainFromScrolling(false); settings.setLineNumbeRSShown(true); settings.setFoldingOutlineshown(false); if (settings instanceof SettingsImpl) { ((SettingsImpl)settings).setSoftWrapAppliancePlace(SoftWrapAppliancePlaces.PREVIEW); } editor.getFoldingModel().setFoldingEnabled(false); return editor; }
private EditorHighlighter createHighlighter() { if (myTemplate != null && myVeLocityFileType != UnkNownFileType.INSTANCE) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,new LightVirtualFile("aaa." + myTemplate.getExtension() + ".ft")); } FileType fileType = null; if (myTemplate != null) { fileType = FileTypeManager.getInstance().getFileTypeByExtension(myTemplate.getExtension()); } if (fileType == null) { fileType = PlainTextFileType.INSTANCE; } SyntaxHighlighter originalHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,"")); return Highlighter; }
public Editor createEditor(Document document,Project project,@Nullable FileType fileType) { EditorImpl editor = (EditorImpl) EditorFactory.getInstance().createEditor(document,project); if (fileType != null) { editor.setHighlighter(EditorHighlighterFactory.getInstance().createEditorHighlighter(project,fileType)); } return editor; }
@Nullable public static EditorHighlighter createEditorHighlighter(@Nullable Project project,@NotNull DocumentContent content) { FileType type = content.getContentType(); VirtualFile file = content.getHighlightFile(); if ((file != null && file.getFileType() == type) || file instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(project,file); } if (type != null) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(project,type); } return null; }
@NotNull private Editor createEditor(){ Editor editor = EditorFactory.getInstance().createEditor(myDocument,myProject); ((EditorEx) editor).setHighlighter(Highlighter); ((EditorEx) editor).setFile(myFile); ((EditorEx)editor).setContextMenuGroupId(IdeActions.GROUP_EDITOR_POPUP); ((EditorImpl) editor).setDropHandler(new FileDropHandler(editor)); TextEditorProvider.putTextEditor(editor,myTextEditor); return editor; }
/** * Updates editors' Highlighters. This should be done when the opened file * changes its file type. */ private void updateHighlighters(){ if (!myProject.isdisposed() && !myEditor.isdisposed()) { final EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); ((EditorEx)myEditor).setHighlighter(Highlighter); } }
private void setHighlighterSettings(@Nullable EditorColoRSScheme settings,@NotNull EditorPlace place) { if (settings == null) { settings = EditorColorsManager.getInstance().getGlobalScheme(); } Editor editor = place.getEditor(); DiffEditorState editorState = place.getState(); if (editor != null) { ((EditorEx)editor).setHighlighter(EditorHighlighterFactory.getInstance(). createEditorHighlighter(editorState.getFileType(),settings,editorState.getProject())); } }
public EditorHighlighter createHighlighter() { if (myFileType == null || myProject == null) return null; if ((myFile != null && myFile.getFileType() == myFileType) || myFile instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); } return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFileType); }
@NotNull private static Pair<JComponent,Integer> createEditorComponent(@NotNull Range range,@NotNull Editor editor,@NotNull LinestatusTracker tracker,@Nullable List<DiffFragment> wordDiff) { if (range.getType() == Range.INSERTED) return Pair.create(null,0); DocumentEx doc = (DocumentEx)tracker.getVcsDocument(); EditorEx uEditor = (EditorEx)EditorFactory.getInstance().createViewer(doc,tracker.getProject()); uEditor.setColoRSScheme(editor.getColoRSScheme()); FileType fileType = tracker.getVirtualFile().getFileType(); DiffUtil.setEditorCodeStyle(tracker.getProject(),uEditor,fileType); EditorHighlighterFactory HighlighterFactory = EditorHighlighterFactory.getInstance(); EditorHighlighter Highlighter = HighlighterFactory.createEditorHighlighter(tracker.getProject(),getFileName(tracker.getDocument())); uEditor.setHighlighter(Highlighter); if (wordDiff != null) { int vcsstartShift = tracker.getVcsTextRange(range).getStartOffset(); for (DiffFragment fragment : wordDiff) { int vcsstart = vcsstartShift + fragment.getStartOffset1(); int vcsEnd = vcsstartShift + fragment.getEndOffset1(); TextDiffType type = getDiffType(fragment); DiffdrawUtil.createInlineHighlighter(uEditor,vcsstart,vcsEnd,type); } } JComponent fragmentComponent = EditorFragmentComponent.createEditorFragmentComponent(uEditor,range.getVcsline1(),range.getVcsline2(),false,false); int leftBorder = fragmentComponent.getBorder().getBorderInsets(fragmentComponent).left; EditorFactory.getInstance().releaseEditor(uEditor); return Pair.create(fragmentComponent,leftBorder); }
private void configureByText(final String usageText,FileType fileType) { Document document = myEditor.getDocument(); String text = StringUtil.convertLineseparators(usageText); document.replaceString(0,document.getTextLength(),text); final EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); myEditor.setHighlighter(EditorHighlighterFactory.getInstance().createEditorHighlighter(fileType,null)); setupSpots(document); }
private void setupComponents() { myHelper.setupEditor(myConsoleEditor); myHelper.setupEditor(myHistoryViewer); myHistoryViewer.getComponent().setMinimumSize(JBUI.emptySize()); myHistoryViewer.getComponent().setPreferredSize(JBUI.emptySize()); myHistoryViewer.setCaretEnabled(false); myConsoleEditor.setContextMenuGroupId(IdeActions.GROUP_CONSOLE_EDITOR_POPUP); myConsoleEditor.setHighlighter( EditorHighlighterFactory.getInstance().createEditorHighlighter(getVirtualFile(),myConsoleEditor.getColoRSScheme(),getProject())); myConsoleEditor.getScrollPane().getHorizontalScrollBar().setModel( myHistoryViewer.getScrollPane().getHorizontalScrollBar().getModel()); setHistoryScrollBarVisible(false); myHistoryViewer.getContentComponent().addKeyListener(new KeyAdapter() { @Override public void keyTyped(KeyEvent event) { if (isConsoleEditorEnabled() && UIUtil.isReallyTypedEvent(event)) { myConsoleEditor.getContentComponent().requestFocus(); myConsoleEditor.processKeyTyped(event); } } }); EmptyAction.registeractionShortcuts(myHistoryViewer.getComponent(),myConsoleEditor.getComponent()); }
@Override protected EditorEx createEditor() { EditorEx editor = super.createEditor(); final String fileName = getFileName(); if (fileName != null) { editor.setHighlighter(EditorHighlighterFactory.getInstance().createEditorHighlighter(getProject(),fileName)); } editor.getSettings().setWhitespacesShown(false); editor.setHorizontalScrollbarVisible(true); editor.setVerticalScrollbarVisible(true); return editor; }
public ByteCodeViewerComponent(Project project,AnAction[] additionalActions) { super(new BorderLayout()); final EditorFactory factory = EditorFactory.getInstance(); final Document doc = ((EditorFactoryImpl)factory).createDocument("",true,false); doc.setReadOnly(true); myEditor = factory.createEditor(doc,project); EditorHighlighterFactory editorHighlighterFactory = EditorHighlighterFactory.getInstance(); final SyntaxHighlighter SyntaxHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(StdFileTypes.JAVA,null); ((EditorEx)myEditor).setHighlighter(editorHighlighterFactory.createEditorHighlighter(SyntaxHighlighter,EditorColorsManager.getInstance().getGlobalScheme())); ((EditorEx)myEditor).setCaretVisible(true); final EditorSettings settings = myEditor.getSettings(); settings.setLineMarkerAreaShown(false); settings.setIndentGuidesShown(false); settings.setLineNumbeRSShown(false); settings.setFoldingOutlineshown(false); myEditor.setBorder(null); add(myEditor.getComponent(),BorderLayout.CENTER); final ActionManager actionManager = ActionManager.getInstance(); final DefaultActionGroup actions = new DefaultActionGroup(); if (additionalActions != null) { for (final AnAction action : additionalActions) { actions.add(action); } } add(actionManager.createActionToolbar(ActionPlaces.JAVADOC_TOOLBAR,actions,true).getComponent(),BorderLayout.norTH); }
@Override public Lexer getIndexingLexer(final PsiFile file) { if (JspPsiUtil.isInjspFile(file)) { EditorHighlighter Highlighter = null; final Document document = PsiDocumentManager.getInstance(file.getProject()).getDocument(file); final EditorHighlighter cachedEditorHighlighter; boolean alreadyInitializedHighlighter = false; if ((cachedEditorHighlighter = EditorHighlighterCache.getEditorHighlighterForCachesBuilding(document)) != null && PlatformIdTableBuilding.checkCanUseCachedEditorHighlighter(file.getText(),cachedEditorHighlighter)) { Highlighter = cachedEditorHighlighter; alreadyInitializedHighlighter = true; } else { final VirtualFile virtualFile = file.getVirtualFile(); if (virtualFile != null) { Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file.getProject(),virtualFile); } } if (Highlighter != null) { return new LexerEditorHighlighterLexer(Highlighter,alreadyInitializedHighlighter); } } return null; }
/** * Updates editors' Highlighters. This should be done when the opened file * changes its file type. */ private void updateHighlighters(){ if (!myProject.isdisposed()) { final EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); ((EditorEx)myEditor).setHighlighter(Highlighter); } }
private void setHighlighterSettings(@Nullable EditorColoRSScheme settings,editorState.getProject())); } }
public EditorHighlighter createHighlighter() { if (myFileType == null || myProject == null) return null; if ((myFile != null && myFile.getFileType() == myFileType) || myFile instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFileType); }
private void configureByText(final String usageText,null)); setupSpots(document); }
@Override protected EditorEx createEditor() { EditorEx editor = super.createEditor(); final String fileName = getFileName(); if (fileName != null) { editor.setHighlighter(EditorHighlighterFactory.getInstance().createEditorHighlighter(getProject(),fileName)); } editor.getSettings().setWhitespacesShown(false); editor.setHorizontalScrollbarVisible(true); editor.setVerticalScrollbarVisible(true); return editor; }
public ByteCodeViewerComponent(Project project,AnAction[] additionalActions) { super(new BorderLayout()); final EditorFactory factory = EditorFactory.getInstance(); final Document doc = factory.createDocument(""); doc.setReadOnly(true); myEditor = factory.createEditor(doc,EditorColorsManager.getInstance().getGlobalScheme())); ((EditorEx)myEditor).setBackgroundColor(EditorFragmentComponent.getBackgroundColor(myEditor)); myEditor.getColoRSScheme().setColor(EditorColors.CARET_ROW_COLOR,LightColors.SLIGHTLY_GRAY); ((EditorEx)myEditor).setCaretVisible(true); final EditorSettings settings = myEditor.getSettings(); settings.setLineMarkerAreaShown(false); settings.setIndentGuidesShown(false); settings.setLineNumbeRSShown(false); settings.setFoldingOutlineshown(false); myEditor.setBorder(null); add(myEditor.getComponent(),BorderLayout.norTH); }
@Nonnull protected Runnable loadEditorInBackground() { EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myFile,myProject); EditorEx editor = (EditorEx)getEditor(); Highlighter.setText(editor.getDocument().getImmutableCharSequence()); return () -> editor.setHighlighter(Highlighter); }
@Override public Continuation performInReadAction(@Nonnull ProgressIndicator indicator) throws ProcessCanceledException { if (!isEverythingValid()) return null; EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); return new Continuation(() -> ((EditorEx)myEditor).setHighlighter(Highlighter)); }
private void setHighlighterSettings(@Nullable EditorColoRSScheme settings,@Nonnull EditorPlace place) { if (settings == null) { settings = EditorColorsManager.getInstance().getGlobalScheme(); } Editor editor = place.getEditor(); DiffEditorState editorState = place.getState(); if (editor != null) { ((EditorEx)editor).setHighlighter(EditorHighlighterFactory.getInstance(). createEditorHighlighter(editorState.getFileType(),editorState.getProject())); } }
public EditorHighlighter createHighlighter() { if (myFileType == null || myProject == null) return null; if ((myFile != null && myFile.getFileType() == myFileType) || myFile instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFileType); }
@Nullable private EditorFragmentComponent createEditorComponent(@Nullable FileType fileType,@Nullable List<DiffFragment> wordDiff) { if (myRange.getType() == Range.INSERTED) return null; EditorEx uEditor = (EditorEx)EditorFactory.getInstance().createViewer(myTracker.getVcsDocument(),myTracker.getProject()); uEditor.setColoRSScheme(myEditor.getColoRSScheme()); DiffUtil.setEditorCodeStyle(myTracker.getProject(),fileType); EditorHighlighterFactory HighlighterFactory = EditorHighlighterFactory.getInstance(); uEditor.setHighlighter(HighlighterFactory.createEditorHighlighter(myTracker.getProject(),getFileName(myTracker.getDocument()))); if (wordDiff != null) { int vcsstartShift = myTracker.getVcsTextRange(myRange).getStartOffset(); for (DiffFragment fragment : wordDiff) { int vcsstart = vcsstartShift + fragment.getStartOffset1(); int vcsEnd = vcsstartShift + fragment.getEndOffset1(); TextDiffType type = getDiffType(fragment); DiffdrawUtil.createInlineHighlighter(uEditor,type); } } EditorFragmentComponent fragmentComponent = EditorFragmentComponent.createEditorFragmentComponent(uEditor,myRange.getVcsline1(),myRange.getVcsline2(),false); EditorFactory.getInstance().releaseEditor(uEditor); return fragmentComponent; }
com.intellij.openapi.editor.highlighter.EditorHighlighter的实例源码
private EditorHighlighter createHighlighter(LanguageFileType fileType) { // FileType fileType = FileTypeManager.getInstance().getFileTypeByExtension(""); // if (fileType == null) { // fileType = FileTypes.PLAIN_TEXT; // } SyntaxHighlighter originalHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,null,null); if (originalHighlighter == null) { originalHighlighter = new PlainSyntaxHighlighter(); } EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); layeredLexerEditorHighlighter Highlighter = new layeredLexerEditorHighlighter(getFileHighlighter(fileType),scheme);// Todo: 2017/8/3 HTML Highlighter.registerLayer(TextElementType,new LayerDescriptor(originalHighlighter,"")); return Highlighter; }
private static int calcParensBalance(Document document,EditorHighlighter Highlighter,int rangeStart,int rangeEnd){ LOG.assertTrue(0 <= rangeStart); LOG.assertTrue(rangeStart <= rangeEnd); LOG.assertTrue(rangeEnd <= document.getTextLength()); HighlighterIterator iterator = Highlighter.createIterator(rangeStart); int balance = 0; while(!iterator.atEnd() && iterator.getStart() < rangeEnd){ IElementType tokenType = iterator.getTokenType(); if (tokenType == JavaTokenType.LPARENTH){ balance++; } else if (tokenType == JavaTokenType.RPARENTH){ balance--; } iterator.advance(); } return balance; }
public void testCpp() throws Exception { EditorHighlighter Highlighter = HighlighterFactory.createHighlighter(getProject(),"A.cpp"); // 0123456789012345678 9 0123 45 6 7 Highlighter.setText("#include try enum \"\\xff\\z\\\"xxx\""); HighlighterIterator iterator = Highlighter.createIterator(2); assertEquals(CustomHighlighterTokenType.KEYWORD_1,iterator.getTokenType()); iterator = Highlighter.createIterator(9); assertEquals(CustomHighlighterTokenType.KEYWORD_2,iterator.getTokenType()); iterator = Highlighter.createIterator(15); assertEquals(CustomHighlighterTokenType.KEYWORD_1,iterator.getTokenType()); iterator = Highlighter.createIterator(19); assertEquals(StringEscapestokenTypes.VALID_STRING_ESCAPE_TOKEN,iterator.getTokenType()); iterator = Highlighter.createIterator(23); assertEquals(StringEscapestokenTypes.INVALID_CHaraCTER_ESCAPE_TOKEN,iterator.getTokenType()); iterator = Highlighter.createIterator(25); assertEquals(StringEscapestokenTypes.VALID_STRING_ESCAPE_TOKEN,iterator.getTokenType()); iterator = Highlighter.createIterator(27); assertEquals(CustomHighlighterTokenType.STRING,iterator.getTokenType()); }
@Nullable private EditorHighlighter buildHighlighter(@Nullable Project project,@NotNull DocumentContent content1,@NotNull DocumentContent content2,@NotNull CharSequence text1,@NotNull CharSequence text2,@NotNull List<HighlightRange> ranges,int textLength) { EditorHighlighter Highlighter1 = DiffUtil.initEditorHighlighter(project,content1,text1); EditorHighlighter Highlighter2 = DiffUtil.initEditorHighlighter(project,content2,text2); if (Highlighter1 == null && Highlighter2 == null) return null; if (Highlighter1 == null) Highlighter1 = DiffUtil.initEmptyEditorHighlighter(text1); if (Highlighter2 == null) Highlighter2 = DiffUtil.initEmptyEditorHighlighter(text2); return new UnifiedEditorHighlighter(myDocument,Highlighter1,Highlighter2,ranges,textLength); }
@NotNull @Override protected List<EditorHighlighterProvider> buildExtensions(@NotNull String stringKey,@NotNull final FileType key) { List<EditorHighlighterProvider> fromEP = super.buildExtensions(stringKey,key); if (fromEP.isEmpty()) { EditorHighlighterProvider defaultProvider = new EditorHighlighterProvider() { @Override public EditorHighlighter getEditorHighlighter(@Nullable Project project,@NotNull FileType fileType,@Nullable VirtualFile virtualFile,@NotNull EditorColoRSScheme colors) { return EditorHighlighterFactory.getInstance().createEditorHighlighter( SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,project,virtualFile),colors); } }; return Collections.singletonList(defaultProvider); } return fromEP; }
private void setupHighlighterSettings(Editor left,Editor base,Editor right) { Editor[] editors = new Editor[]{left,base,right}; DiffContent[] contents = myData.getContents(); FileType[] types = DiffUtil.chooseContentTypes(contents); VirtualFile fallbackFile = contents[1].getFile(); FileType fallbackType = contents[1].getContentType(); for (int i = 0; i < 3; i++) { Editor editor = editors[i]; DiffContent content = contents[i]; EditorHighlighter Highlighter = createHighlighter(types[i],content.getFile(),fallbackFile,fallbackType,myData.getProject()).createHighlighter(); if (Highlighter != null) { ((EditorEx)editor).setHighlighter(Highlighter); } } }
@Nullable public static EditorHighlighter getEditorHighlighterForCachesBuilding(Document document) { if (document == null) { return null; } final WeakReference<EditorHighlighter> editorHighlighterWeakReference = document.getUserData(ourSomeEditorSyntaxHighlighter); final EditorHighlighter someEditorHighlighter = SoftReference.dereference(editorHighlighterWeakReference); if (someEditorHighlighter instanceof LexerEditorHighlighter && ((LexerEditorHighlighter)someEditorHighlighter).isValid() ) { return someEditorHighlighter; } document.putUserData(ourSomeEditorSyntaxHighlighter,null); return null; }
@Nullable public static Lexer getLexerBasedOnLexerHighlighter(CharSequence text,VirtualFile virtualFile,Project project) { EditorHighlighter Highlighter = null; PsiFile psiFile = virtualFile != null ? PsiManager.getInstance(project).findFile(virtualFile) : null; final Document document = psiFile != null ? PsiDocumentManager.getInstance(project).getDocument(psiFile) : null; final EditorHighlighter cachedEditorHighlighter; boolean alreadyInitializedHighlighter = false; if (document != null && (cachedEditorHighlighter = getEditorHighlighterForCachesBuilding(document)) != null && PlatformIdTableBuilding.checkCanUseCachedEditorHighlighter(text,cachedEditorHighlighter)) { Highlighter = cachedEditorHighlighter; alreadyInitializedHighlighter = true; } else if (virtualFile != null) { Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(project,virtualFile); } if (Highlighter != null) { return new LexerEditorHighlighterLexer(Highlighter,alreadyInitializedHighlighter); } return null; }
private static Editor createEditor(boolean isReadOnly,final Document document,final Project project) { EditorFactory editorFactory = EditorFactory.getInstance(); Editor editor = (isReadOnly ? editorFactory.createViewer(document,project) : editorFactory.createEditor(document,project)); editor.getContentComponent().setFocusable(!isReadOnly); EditorSettings editorSettings = editor.getSettings(); editorSettings.setVirtualSpace(false); editorSettings.setLineMarkerAreaShown(false); editorSettings.setIndentGuidesShown(false); editorSettings.setLineNumbeRSShown(false); editorSettings.setFoldingOutlineshown(false); editorSettings.setCaretRowShown(false); EditorColoRSScheme scheme = editor.getColoRSScheme(); VirtualFile file = FileDocumentManager.getInstance().getFile(document); if (file != null) { EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(file,scheme,project); ((EditorEx) editor).setHighlighter(Highlighter); } return editor; }
@Override public void updateView() { EditorColoRSScheme scheme = myOptions.getSelectedScheme(); myEditor.setColoRSScheme(scheme); EditorHighlighter Highlighter = null; if (myPage instanceof EditorHighlightingProvidingColorSettingsPage) { Highlighter = ((EditorHighlightingProvidingColorSettingsPage)myPage).createEditorHighlighter(scheme); } if (Highlighter == null) { final SyntaxHighlighter pageHighlighter = myPage.getHighlighter(); Highlighter = HighlighterFactory.createHighlighter(pageHighlighter,scheme); } myEditor.setHighlighter(Highlighter); updateHighlighters(); myEditor.reinitSettings(); }
@Override public void beforeCharDeleted(char c,PsiFile file,Editor editor) { if (c != '{') return; if (!(file instanceof GroovyFile)) return; final int offset = editor.getCaretModel().getoffset(); final EditorHighlighter Highlighter = ((EditorEx)editor).getHighlighter(); if (offset < 1) return; HighlighterIterator iterator = Highlighter.createIterator(offset); if (iterator.getTokenType() != GroovyTokenTypes.mRCURLY) return; iterator.retreat(); if (iterator.getStart() < 1 || iterator.getTokenType() != GroovyTokenTypes.mLCURLY) return; editor.getDocument().deleteString(offset,offset + 1); }
TodoTreeBuilder(JTree tree,DefaultTreeModel treeModel,Project project) { super(tree,treeModel,MyComparator.ourInstance,false); myProject = project; myfiletree = new filetree(); myDirtyFileSet = new HashSet<VirtualFile>(); myFile2Highlighter = new HashMap<VirtualFile,EditorHighlighter>(); PsiManager psiManager = PsiManager.getInstance(myProject); mySearchHelper = PsiTodoSearchHelper.SERVICE.getInstance(myProject); psiManager.addPsiTreechangelistener(new MyPsiTreechangelistener()); myFileStatusListener = new MyFileStatusListener(); setCanYieldUpdate(true); }
private EditorHighlighter createHighlighter() { if (myTemplate != null && myVeLocityFileType != FileTypes.UNKNowN) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,new LightVirtualFile("aaa." + myTemplate.getExtension() + ".ft")); } FileType fileType = null; if (myTemplate != null) { fileType = FileTypeManager.getInstance().getFileTypeByExtension(myTemplate.getExtension()); } if (fileType == null) { fileType = FileTypes.PLAIN_TEXT; } SyntaxHighlighter originalHighlighter = SyntaxHighlighterFactory.getSyntaxHighlighter(fileType,null); if (originalHighlighter == null) { originalHighlighter = new PlainSyntaxHighlighter(); } final EditorColoRSScheme scheme = EditorColorsManager.getInstance().getGlobalScheme(); layeredLexerEditorHighlighter Highlighter = new layeredLexerEditorHighlighter(new TemplateHighlighter(),scheme); Highlighter.registerLayer(FileTemplatetokenType.TEXT,"")); return Highlighter; }
/** * Force re-highlighting in all open editors that belong to specified project. */ public static void rehighlightOpenEditors(final @NotNull Project project) { ApplicationManager.getApplication().runWriteAction(new Runnable() { @Override public void run() { for (Editor editor : EditorFactory.getInstance().getAllEditors()) { if (editor instanceof EditorEx && editor.getProject() == project) { final VirtualFile vFile = ((EditorEx)editor).getVirtualFile(); if (vFile != null) { final EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(project,vFile); ((EditorEx)editor).setHighlighter(Highlighter); } } } } }); }
@Override public Result charTyped(char c,Project project,@NotNull Editor editor,@NotNull PsiFile file) { if (c != '{' || project == null || !HandlerUtils.canBeInvoked(editor,project)) { return Result.CONTINUE; } if (!(file instanceof GroovyFile)) return Result.CONTINUE; int caret = editor.getCaretModel().getoffset(); final EditorHighlighter Highlighter = ((EditorEx)editor).getHighlighter(); if (caret < 1) return Result.CONTINUE; HighlighterIterator iterator = Highlighter.createIterator(caret - 1); if (iterator.getTokenType() != GroovyTokenTypes.mLCURLY) return Result.CONTINUE; iterator.retreat(); if (iterator.atEnd() || iterator.getTokenType() != GroovyTokenTypes.mDOLLAR) return Result.CONTINUE; iterator.advance(); if (iterator.atEnd()) return Result.CONTINUE; iterator.advance(); if (iterator.getTokenType() != GroovyTokenTypes.mGSTRING_BEGIN) return Result.CONTINUE; editor.getDocument().insertString(caret,"}"); return Result.STOP; }
private static boolean handleBetweenSquareBraces(Editor editor,int caret,DataContext context,EditorActionHandler originalHandler) { String text = editor.getDocument().getText(); if (text == null || text.isEmpty()) return false; final EditorHighlighter Highlighter = ((EditorEx)editor).getHighlighter(); if (caret < 1 || caret > text.length() - 1) { return false; } HighlighterIterator iterator = Highlighter.createIterator(caret - 1); if (GroovyTokenTypes.mLBRACK == iterator.getTokenType()) { if (text.length() > caret) { iterator = Highlighter.createIterator(caret); if (GroovyTokenTypes.mRBRACK == iterator.getTokenType()) { originalHandler.execute(editor,context); originalHandler.execute(editor,context); editor.getCaretModel().moveCaretRelatively(0,-1,false,true); insertSpacesByGroovyContinuationIndent(editor,project); return true; } } } return false; }
private void updatePreviewHighlighter(EditorEx editor) { EditorColoRSScheme scheme = editor.getColoRSScheme(); editor.getSettings().setCaretRowShown(false); EditorHighlighter Highlighter = this.createHighlighter(scheme); if (Highlighter != null) { editor.setHighlighter(Highlighter); } }
@Override public EditorHighlighter getEditorHighlighter(@Nullable Project project,@NotNull FileType type,@Nullable VirtualFile file,@NotNull EditorColoRSScheme scheme) { return new RythmlayeredSyntaxHighlighter(project,type,file); }
@Override public EditorHighlighter getEditorHighlighter(@Nullable Project project,@NotNull EditorColoRSScheme scheme) { return new JetlayeredSyntaxHighlighter(project,file); }
private static int getExistingRParenthOffset(final Editor editor,final int tailOffset) { final Document document = editor.getDocument(); if (tailOffset >= document.getTextLength()) return -1; final CharSequence chaRSSequence = document.getChaRSSequence(); EditorHighlighter Highlighter = ((EditorEx) editor).getHighlighter(); int existingRParenthOffset = -1; for(HighlighterIterator iterator = Highlighter.createIterator(tailOffset); !iterator.atEnd(); iterator.advance()){ final IElementType tokenType = iterator.getTokenType(); if ((!(tokenType instanceof IJavaElementType) || !ElementType.JAVA_COMMENT_OR_WHITESPACE_BIT_SET.contains(tokenType)) && tokenType != TokenType.WHITE_SPACE) { final int start = iterator.getStart(); if (iterator.getEnd() == start + 1 && ')' == chaRSSequence.charat(start)) { existingRParenthOffset = start; } break; } } if (existingRParenthOffset >= 0){ final PsiDocumentManager psiDocumentManager = PsiDocumentManager.getInstance(editor.getProject()); psiDocumentManager.commitDocument(document); TextRange range = getRangetocheckParensBalance(psiDocumentManager.getPsiFile(document),document,editor.getCaretModel().getoffset()); int balance = calcParensBalance(document,Highlighter,range.getStartOffset(),range.getEndOffset()); if (balance > 0){ return -1; } } return existingRParenthOffset; }
public void testHaskel() throws Exception { EditorHighlighter Highlighter = HighlighterFactory.createHighlighter(getProject(),"A.hs"); // 0123456789012345678 9 0123 45 6 7 Highlighter.setText("{-# #-} module"); HighlighterIterator iterator = Highlighter.createIterator(2); assertEquals(CustomHighlighterTokenType.MULTI_LINE_COMMENT,iterator.getTokenType()); iterator = Highlighter.createIterator(12); assertEquals(CustomHighlighterTokenType.KEYWORD_1,iterator.getTokenType()); }
public void testbrokenText() { myFixture.configureByText("a.java","import java.util.ArrayList;" + "class A {" + " ArrayList<caret><String"); final Editor editor = myFixture.getEditor(); final EditorHighlighter editorHighlighter = ((EditorEx)editor).getHighlighter(); final HighlighterIterator iterator = editorHighlighter.createIterator(editor.getCaretModel().getoffset()); boolean matched = BraceMatchingUtil.matchBrace(editor.getDocument().getChaRSSequence(),myFixture.getFile().getFileType(),iterator,true); assertFalse(matched); }
public void testBinaryStatement() { myFixture.configureByText("a.java","import java.util.ArrayList;" + "class A {" + " int i = 3 <caret>< 4 ? 5 > 6 : 1 : 1 : 1;" + "}"); final Editor editor = myFixture.getEditor(); final EditorHighlighter editorHighlighter = ((EditorEx)editor).getHighlighter(); final HighlighterIterator iterator = editorHighlighter.createIterator(editor.getCaretModel().getoffset()); boolean matched = BraceMatchingUtil.matchBrace(editor.getDocument().getChaRSSequence(),true); assertFalse(matched); }
public TwosideDocumentData(@NotNull UnifiedFragmentBuilder builder,@Nullable EditorHighlighter Highlighter,@Nullable UnifiedEditorRangeHighlighter rangeHighlighter) { myBuilder = builder; myHighlighter = Highlighter; myRangeHighlighter = rangeHighlighter; }
public CombinedEditorData(@NotNull CharSequence text,@Nullable UnifiedEditorRangeHighlighter rangeHighlighter,@Nullable FileType fileType,@NotNull TIntFunction convertor1,@NotNull TIntFunction convertor2) { myText = text; myHighlighter = Highlighter; myRangeHighlighter = rangeHighlighter; myFileType = fileType; myLineConvertor1 = convertor1; myLineConvertor2 = convertor2; }
public UnifiedEditorHighlighter(@NotNull Document document,@NotNull EditorHighlighter Highlighter1,@NotNull EditorHighlighter Highlighter2,int textLength) { myDocument = document; myPieces = new ArrayList<Element>(); init(Highlighter1.createIterator(0),Highlighter2.createIterator(0),textLength); }
@Nullable public static EditorHighlighter initEditorHighlighter(@Nullable Project project,@NotNull DocumentContent content,@NotNull CharSequence text) { EditorHighlighter Highlighter = createEditorHighlighter(project,content); if (Highlighter == null) return null; Highlighter.setText(text); return Highlighter; }
@Nullable public static EditorHighlighter createEditorHighlighter(@Nullable Project project,@NotNull DocumentContent content) { FileType type = content.getContentType(); VirtualFile file = content.getHighlightFile(); if ((file != null && file.getFileType() == type) || file instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(project,file); } if (type != null) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(project,type); } return null; }
public static boolean checkCanUseCachedEditorHighlighter(final CharSequence chars,final EditorHighlighter editorHighlighter) { assert editorHighlighter instanceof LexerEditorHighlighter; final boolean b = ((LexerEditorHighlighter)editorHighlighter).checkContentIsEqualTo(chars); if (!b) { final Logger logger = Logger.getInstance(IdTableBuilding.class.getName()); logger.warn("Unexpected mismatch of editor Highlighter content with indexing content"); } return b; }
public static List<IElementType> getAllTokens(EditorHighlighter Highlighter) { List<IElementType> tokens = new ArrayList<IElementType>(); HighlighterIterator iterator = Highlighter.createIterator(0); while (!iterator.atEnd()) { tokens.add(iterator.getTokenType()); iterator.advance(); } return tokens; }
@NotNull private Editor createEditor(){ Editor editor = EditorFactory.getInstance().createEditor(myDocument,myProject); ((EditorMarkupModel) editor.getMarkupModel()).setErrorStripeVisible(true); EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myFile,EditorColorsManager.getInstance().getGlobalScheme(),myProject); ((EditorEx) editor).setHighlighter(Highlighter); ((EditorEx) editor).setFile(myFile); ((EditorEx)editor).setContextMenuGroupId(IdeActions.GROUP_EDITOR_POPUP); ((EditorImpl) editor).setDropHandler(new FileDropHandler(editor)); TextEditorProvider.putTextEditor(editor,myTextEditor); return editor; }
/** * Updates editors' Highlighters. This should be done when the opened file * changes its file type. */ private void updateHighlighters(){ if (!myProject.isdisposed() && !myEditor.isdisposed()) { final EditorHighlighter Highlighter = EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); ((EditorEx)myEditor).setHighlighter(Highlighter); } }
private void applyHighlighter() { EditorEx editor = myEditorSource.getEditor(); if (editor == null) return; EditorHighlighter Highlighter = myHighlighterFactory.createHighlighter(); if (Highlighter != null) editor.setHighlighter(Highlighter); editor.getSettings().setCaretRowShown(false); }
public EditorHighlighter createHighlighter() { if (myFileType == null || myProject == null) return null; if ((myFile != null && myFile.getFileType() == myFileType) || myFile instanceof LightVirtualFile) { return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFile); } return EditorHighlighterFactory.getInstance().createEditorHighlighter(myProject,myFileType); }
/** * Finds out whether there's a boundary between two lexemes of different type at given offset. */ public static boolean isLexemeBoundary(@NotNull Editor editor,int offset) { if (!(editor instanceof EditorEx) || offset <= 0 || offset >= editor.getDocument().getTextLength()) return false; if (ChararrayUtil.isEmptyOrSpaces(editor.getDocument().getImmutableCharSequence(),offset - 1,offset + 1)) return false; EditorHighlighter Highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator it = Highlighter.createIterator(offset); if (it.getStart() != offset) { return false; } IElementType rightToken = it.getTokenType(); it.retreat(); IElementType leftToken = it.getTokenType(); return !Comparing.equal(leftToken,rightToken); }
private void paintBorderEffect(Graphics2D g,ClipDetector clipDetector,int clipStartOffset,int clipEndOffset) { HighlighterIterator it = Highlighter.createIterator(clipStartOffset); while (!it.atEnd() && it.getStart() < clipEndOffset) { TextAttributes attributes = it.getTextAttributes(); if (isBorder(attributes)) { paintBorderEffect(g,clipDetector,it.getStart(),it.getEnd(),attributes); } it.advance(); } }
public void paintHighlighters(EditorHighlighter Highlighter) { int startOffset = startOfLineByOffset(myStartOffset); if (startOffset < 0 || startOffset >= myEditor.getDocument().getTextLength()) return; RangeIterator iterator = new RangeIterator(new FoldingOrNewLineGaps(myEditor),SAME_COLOR_BoxES,Highlighter.createIterator(startOffset),Box_FILTER); iterator.init(myRange); while (!iterator.atEnd()) { iterator.advance(); paintBorder(myGraphics,myEditor,iterator.getStart(),iterator.getEnd(),iterator.getTextAttributes().getEffectColor(),iterator.getTextAttributes().getEffectType()); } }
@NotNull private static Pair<JComponent,Integer> createEditorComponent(@NotNull Range range,@NotNull LinestatusTracker tracker,@Nullable List<DiffFragment> wordDiff) { if (range.getType() == Range.INSERTED) return Pair.create(null,0); DocumentEx doc = (DocumentEx)tracker.getVcsDocument(); EditorEx uEditor = (EditorEx)EditorFactory.getInstance().createViewer(doc,tracker.getProject()); uEditor.setColoRSScheme(editor.getColoRSScheme()); FileType fileType = tracker.getVirtualFile().getFileType(); DiffUtil.setEditorCodeStyle(tracker.getProject(),uEditor,fileType); EditorHighlighterFactory HighlighterFactory = EditorHighlighterFactory.getInstance(); EditorHighlighter Highlighter = HighlighterFactory.createEditorHighlighter(tracker.getProject(),getFileName(tracker.getDocument())); uEditor.setHighlighter(Highlighter); if (wordDiff != null) { int vcsstartShift = tracker.getVcsTextRange(range).getStartOffset(); for (DiffFragment fragment : wordDiff) { int vcsstart = vcsstartShift + fragment.getStartOffset1(); int vcsEnd = vcsstartShift + fragment.getEndOffset1(); TextDiffType type = getDiffType(fragment); DiffdrawUtil.createInlineHighlighter(uEditor,vcsstart,vcsEnd,type); } } JComponent fragmentComponent = EditorFragmentComponent.createEditorFragmentComponent(uEditor,range.getVcsline1(),range.getVcsline2(),false); int leftBorder = fragmentComponent.getBorder().getBorderInsets(fragmentComponent).left; EditorFactory.getInstance().releaseEditor(uEditor); return Pair.create(fragmentComponent,leftBorder); }
@Override @Nullable protected EditorHighlighter createHighlighter(final EditorColoRSScheme scheme) { FileType fileType = getFileType(); return FileTypeEditorHighlighterProviders.INSTANCE.forFileType(fileType).getEditorHighlighter( ProjectUtil.guessCurrentProject(getPanel()),fileType,scheme); }
@Override public Editor openTextEditor(@NotNull OpenFileDescriptor descriptor,boolean focusEditor) { final VirtualFile file = descriptor.getFile(); Editor editor = myVirtualFile2Editor.get(file); if (editor == null) { PsiFile psiFile = PsiManager.getInstance(myProject).findFile(file); LOG.assertTrue(psiFile != null,file); Document document = PsiDocumentManager.getInstance(myProject).getDocument(psiFile); LOG.assertTrue(document != null,psiFile); editor = EditorFactory.getInstance().createEditor(document,myProject); final EditorHighlighter Highlighter = HighlighterFactory.createHighlighter(myProject,file); ((EditorEx) editor).setHighlighter(Highlighter); ((EditorEx) editor).setFile(file); myVirtualFile2Editor.put(file,editor); } if (descriptor.getoffset() >= 0){ editor.getCaretModel().movetoOffset(descriptor.getoffset()); } else if (descriptor.getLine() >= 0 && descriptor.getColumn() >= 0){ editor.getCaretModel().movetoLogicalPosition(new LogicalPosition(descriptor.getLine(),descriptor.getColumn())); } editor.getSelectionModel().removeSelection(); myActiveFile = file; return editor; }
com.intellij.openapi.editor.highlighter.HighlighterClient的实例源码
@Override public void setEditor(@NotNull HighlighterClient editor) { Lexer l = getLexer(); if (l instanceof layeredLexer) { editor.getDocument().putUserData(KEY,editor.getDocument().getText().indexOf(PyNames.UNICODE_LIteraLS) == -1); } super.setEditor(editor); }
@Override public void setEditor(@NotNull HighlighterClient editor) { }
@Override public void setEditor(@NotNull HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
public HighlighterClient getClient() { return myEditor; }
@Override public void setEditor(@NotNull HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
@Override public void setEditor(@NotNull HighlighterClient editor) { myDocument = editor.getDocument(); }
@Override public void setEditor(@NotNull final HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
@Override public void setEditor(@NotNull HighlighterClient editor) { myEditor = editor; }
@Override public void setEditor(HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
@Override public void setEditor(HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
public HighlighterClient getClient() { return myEditor; }
@Override public void setEditor(final HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
@Override public void setEditor(@Nonnull HighlighterClient editor) { }
@Override public void setEditor(@Nonnull HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
public HighlighterClient getClient() { return myEditor; }
@Override public void setEditor(HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
@Override public void setEditor(@Nonnull final HighlighterClient editor) { LOG.assertTrue(myEditor == null,"Highlighters cannot be reused with different editors"); myEditor = editor; }
今天的关于如何在 PytorchLightning 中运行单轮验证?的分享已经结束,谢谢您的关注,如果想了解更多关于com.intellij.lang.javascript.highlighting.JSHighlighter的实例源码、com.intellij.openapi.editor.highlighter.EditorHighlighterFactory的实例源码、com.intellij.openapi.editor.highlighter.EditorHighlighter的实例源码、com.intellij.openapi.editor.highlighter.HighlighterClient的实例源码的相关知识,请在本站进行查询。
本文标签: