private static void installFormatter(Project project) { CodeStyleManager currentManager = CodeStyleManager.getInstance(project); if (currentManager instanceof GoogleJavaFormatCodeStyleManager) { currentManager = ((GoogleJavaFormatCodeStyleManager) currentManager).getDelegate(); } setManager(project, new GoogleJavaFormatCodeStyleManager(currentManager)); }
private String doTest(@Nullable Character c, String testName) { if (c == null) { WriteCommandAction.runWriteCommandAction(myFixture.getProject(), () -> { CodeStyleManager.getInstance(getProject()).reformat(myFixture.getFile()); }); } else { myFixture.type(c); } return String.format("%s-after.go", testName); } }
@Override public void execute(@NotNull Editor editor, char c, @NotNull DataContext dataContext) { if (myOriginalHandler != null) myOriginalHandler.execute(editor, c, dataContext); if (c != 'e') return; Project project = editor.getProject(); if (project == null) return; int offset = editor.getCaretModel().getOffset(); if (offset < 4) return; TextRange from = TextRange.from(offset - 4, 4); String text = editor.getDocument().getText(from); if ("case".equals(text)) { PsiDocumentManager.getInstance(project).commitDocument(editor.getDocument()); ApplicationManager.getApplication().runWriteAction(() -> { if (project.isDisposed()) return; PsiFile file = PsiUtilBase.getPsiFileInEditor(editor, project); if (file == null) return; CodeStyleManager.getInstance(project).adjustLineIndent(file, from); }); } } }
private void doTestBBEFile(File resource, @Nullable Character c) { String relativeFilePath = resource.getPath().replace(getTestDataPath(), EMPTY_STRING); myFixture.configureByFile(relativeFilePath); if (c == null) { WriteCommandAction.runWriteCommandAction(myFixture.getProject(), () -> { CodeStyleManager.getInstance(getProject()).reformat(myFixture.getFile()); }); } else { myFixture.type(c); } myFixture.checkResultByFile(relativeFilePath, relativeFilePath.replace("examples", "expectedResults"), true); // To debug - Comment the above line and uncomment these lines and add expected result. // String result = ""; // myFixture.checkResult(result); } }
@Override protected void run() throws Throwable { CodeStyleManager.getInstance(getProject()).reformatText(myFixture.getFile(), ContainerUtil.newArrayList(myFixture.getFile().getTextRange())); } }.execute();
CodeStyleManager.getInstance(context.getProject()).adjustLineIndent(document, offsetToMove);
@NotNull public static PsiElement createBundleFile(@NotNull PhpClass bundleClass, @NotNull String template, @NotNull String className, Map<String, String> vars) throws Exception { VirtualFile directory = bundleClass.getContainingFile().getContainingDirectory().getVirtualFile(); if(fileExists(directory, new String[] {className})) { throw new Exception("File already exists"); } String COMPILER_TEMPLATE = "/fileTemplates/" + template + ".php"; String fileTemplateContent = getFileTemplateContent(COMPILER_TEMPLATE); if(fileTemplateContent == null) { throw new Exception("Template content error"); } String[] split = className.split("\\\\"); String ns = bundleClass.getNamespaceName(); String join = StringUtils.join(Arrays.copyOf(split, split.length - 1), "/"); vars.put("ns", (ns.startsWith("\\") ? ns.substring(1) : ns) + join.replace("/", "\\")); vars.put("class", split[split.length - 1]); for (Map.Entry<String, String> entry : vars.entrySet()) { fileTemplateContent = fileTemplateContent.replace("{{ " + entry.getKey() + " }}", entry.getValue()); } VirtualFile compilerDirectory = getAndCreateDirectory(directory, join); if(compilerDirectory == null) { throw new Exception("Directory creation failed"); } Project project = bundleClass.getProject(); PsiFile fileFromText = PsiFileFactory.getInstance(project).createFileFromText(split[split.length - 1] + ".php", PhpFileType.INSTANCE, fileTemplateContent); CodeStyleManager.getInstance(project).reformat(fileFromText); return PsiDirectoryFactory.getInstance(project).createDirectory(compilerDirectory).add(fileFromText); }
@Nullable public static VirtualFile createFile(@NotNull Project project, @NotNull FileType fileType, @Nullable VirtualFile root, @NotNull String fileNameWithPath, @Nullable String content) { if(root == null) { return null; } String[] filenameSplit = fileNameWithPath.split("/"); String pathString = StringUtils.join(Arrays.copyOf(filenameSplit, filenameSplit.length - 1), "/"); VirtualFile twigDirectory = VfsUtil.findRelativeFile(root, filenameSplit); if(twigDirectory != null) { return null; } VirtualFile targetDir; try { targetDir = VfsUtil.createDirectoryIfMissing(root, pathString); } catch (IOException ignored) { return null; } PsiFileFactory factory = PsiFileFactory.getInstance(project); final PsiFile file = factory.createFileFromText(filenameSplit[filenameSplit.length - 1], fileType, content != null ? content : ""); CodeStyleManager.getInstance(project).reformat(file); PsiDirectory directory = PsiManager.getInstance(project).findDirectory(targetDir); if(directory == null) { return null; } PsiElement add = directory.add(file); if(add instanceof PsiFile) { return ((PsiFile) add).getVirtualFile(); } return null; }
CodeStyleManager.getInstance(project).reformat(file); initialBaseDir.add(file); });
@Override protected void run(@NotNull Result result) throws Throwable { StringBuffer textBuf = new StringBuffer(); textBuf.append("\n"); textBuf.append(methodCreated.getText()); editor.getDocument().insertString(insertPos, textBuf); final int endPos = insertPos + textBuf.length(); CodeStyleManager.getInstance(project).reformatText(phpClass.getContainingFile(), insertPos, endPos); PsiDocumentManager.getInstance(project).commitDocument(editor.getDocument()); Method insertedMethod = phpClass.findMethodByName(functionName); if(insertedMethod != null) { editor.getCaretModel().moveToOffset(insertedMethod.getTextRange().getStartOffset()); editor.getScrollingModel().scrollToCaret(ScrollType.RELATIVE); } }
CodeStyleManager.getInstance(project).reformat(fileFromText);
@Override protected PsiFile doReformat(Project project, PsiFile psiFile) { CodeStyleManager.getInstance(project).reformatText(psiFile, 0, psiFile.getTextLength()); return psiFile; } }
@NotNull @CheckReturnValue public String format(@Nonnull String text) { final String name = Extensions.append(NAME, fileType); final PsiFile file = fileFactory.createFileFromText(name, fileType, text); final CodeStyleManager styleManager = CodeStyleManager.getInstance(file.getProject()); styleManager.reformat(file); return file.getText(); } }
/** * NOTE: this must run in a runWriteAction Create a file using intellijs built in system with the * defined type and format it. */ public static PsiFile createFormattedFile( Project project, String filename, FileType fileType, String fileContents) { final PsiFile rawFile = PsiFileFactory.getInstance(project).createFileFromText(filename, fileType, fileContents); final PsiFile formattedFile = (PsiFile) CodeStyleManager.getInstance(project).reformat(rawFile); return formattedFile; }
private void doIndent(@NotNull PsiFile file, @NotNull Editor editor, @NotNull DataContext dataContext, EditorActionHandler originalHandler, Document document) { originalHandler.execute(editor, editor.getCaretModel().getCurrentCaret(), dataContext); PsiDocumentManager.getInstance(file.getProject()).commitDocument(document); try { CodeStyleManager.getInstance(file.getProject()).adjustLineIndent(file, editor.getCaretModel().getOffset()); } catch (IncorrectOperationException e) { LOG.error(e); } } }
@Override protected void run() throws Throwable { CodeStyleManager.getInstance(getProject()).reformatText(myFixture.getFile(), ContainerUtil.newArrayList(myFixture.getFile().getTextRange())); } }.execute();
@Override protected void run() throws Throwable { CodeStyleManager.getInstance(getProject()).reformatText(myFixture.getFile(), ContainerUtil.newArrayList(myFixture.getFile().getTextRange())); } }.execute();
protected void doTest(String actual, String expected) { PsiFile file = myFixture.addFileToProject("test.cypher", actual); myFixture.configureFromExistingVirtualFile(file.getVirtualFile()); WriteCommandAction.runWriteCommandAction(getProject(), () -> { PsiFile f = myFixture.getFile(); CodeStyleManager.getInstance(getProject()) .reformatText(f, singletonList(f.getTextRange())); }); myFixture.checkResult(expected); } }
private void run(String test, Consumer<CommonCodeStyleSettings> settings) { myFixture.configureByFiles(test + "/Source.proto"); CodeStyleSettings codeStyleSettings = CodeStyle.getSettings(getProject()); CommonCodeStyleSettings protoSettings = codeStyleSettings.getCommonSettings(ProtoLanguage.INSTANCE); settings.accept(protoSettings); WriteCommandAction.writeCommandAction(getProject()) .run(() -> CodeStyleManager.getInstance(getProject()).reformat(myFixture.getFile())); myFixture.checkResultByFile(test + "/Expected.proto"); }
protected void doFormatTestWithoutInitialization(@NotNull String resultFileName, @NotNull String resultSuffix) { WriteCommandAction.writeCommandAction(getProject()).run(() -> { PsiFile file = myFixture.getFile(); if (file.getViewProvider() instanceof InjectedFileViewProvider) { //noinspection ConstantConditions file = file.getContext().getContainingFile(); } TextRange rangeToUse = file.getTextRange(); CodeStyleManager.getInstance(getProject()).reformatText(file, rangeToUse.getStartOffset(), rangeToUse.getEndOffset()); }); String resultFilePath = getTestDataPath() + "/" + resultFileName + resultSuffix + ".txt"; UsefulTestCase.assertSameLinesWithFile(resultFilePath, myFixture.getFile().getText()); assertNoErrorElements(); }