nrubin29
nrubin29

Reputation: 1612

IntelliJ Plugin Get Code From Current Open File

Basically, I want to know how to do this (Eclipse Plugin Get Code from Current Open File) in IntelliJ.

Upvotes: 10

Views: 4622

Answers (2)

rob74
rob74

Reputation: 5238

Just in case somebody is looking for this - if you want the file name of the currently open file, you have to jump through some additional hoops:

Document currentDoc = FileEditorManager.getInstance(project).getSelectedTextEditor().getDocument();
VirtualFile currentFile = FileDocumentManager.getInstance().getFile(currentDoc);
String fileName = currentFile.getPath()

(found this by entering "getSelectedTextEditor filename" in Github search - sometimes all you need is a pointer in the right direction...)

Upvotes: 16

axelrod
axelrod

Reputation: 3978

In what context? If you are inside an action, you can simply take everything from the ActionEvent, for example:

e.getData(LangDataKeys.EDITOR).getDocument().getText();

(When e is AnActionEvent).

Otherwise, you can get it from the project:

FileEditorManager.getInstance(project).getSelectedTextEditor().getDocument().getText();

Upvotes: 12

Related Questions