I know StructuredSelection will be used when you select a file in Package Explorer for example, and TextSelection will be used when you select some text in Editor, but not clear about MarkSelection, when it will be used?
MarkSelection is generated by TextViewer (so usually a text editor) and reports a change to a 'mark' selection. It will only be sent to selection change listeners for the text viewer.
The TextViewer.setMark method causes the mark selection changed event to be generated. This only seems to be used by incremental search and for marked regions used in Emacs style editing.
Related
I would like to remember my team the ports used for debugging, for several projects.
A Ctrl-F in a directory, and I have my results under IntelliJ_2021.1.3 Ultimate I'm using,
but I have no way to paste them, like they are on this window, either with Ctrl-C or Ctrl-Ins , on another location in order to send a mail to my teammates.
Does a workaround exist, or has this feature been implemented in a later version I should try to upgrade to?
I don't think there is a simple and direct way to do what you want. However, there is a workaround:
Run your search, and then from the Find in Files window click the Open in Find Window button:
Right-click anywhere within that Find window listing the occurrences, then select Export to Text File from the context menu:
An Export Preview window will open, showing the search results in expanded hierarchical form, reflecting the structure under the directory you searched. Within that window you can select any contiguous portion of text, then right click and select Copy from the context menu:
You can then paste the selected text into any other window, and massage the results as necessary:
Notes:
This is only a workaround because unfortunately I don't see a way to directly copy the results in your screen shot, in which each line shows a both a search occurrence and its file location. That information is still in the copied text, but it may take a bit of effort to get it in the form you want.
The Copy button in the Export Preview window ignores any text selection and blindly copies everything, so use Copy from the context menu instead if selecting a subset of the text.
I used IntelliJ IDEA 2023.1 EAP (Ultimate Edition). I don't know whether this functionality exists in your version.
I would like that when I write the name of a property and I tab to autocomplete, it put "this" prefix automatically.
For exemple:
If I tab, I get this:
I would like to have this instead:
There are my visual studio settings, Resharper settings and editorConfig:
(Edit: I've opened a feature request: https://developercommunity.visualstudio.com/t/Visual-Studio-2022-auto-prefix-propertie/10221630)
(Edit 2: The language is C#)
This would need to be a feature request. You can submit that through VS with the Suggest A Feature on the feedback menu.
When you press tab to commit the completion item, the text to insert (or "insertion text") for that item has already been calculated. In most cases, it is the text seen (known as the display text), but sometimes the insertion text can be different (or even include edits other places in the document!). There is also the possibility, depending on how each language implements the completion feature, that the language can make additional calculations and edits as part of committing the item.
In either event (pre-computed or computed during commit), the language feature would need to make changes to include the this. prefix as part of the completion commit edit.
A possible alternative to waiting for a new feature would be to write an editor extension that monitors the buffer changes, and when it sees an applicable member inserted without the required this. prefix, it could then trigger its own edit automatically to insert it.
In the settings window of Phpstorm, there is a dropdown box labelled scheme
What does it do?
What does it do?
You may be surprised .. but it allows you to choose another (different) Code Style scheme for this project.
PhpStorm supports globally defined schemas (by default it provides only one -- "Default") which can be used by any project and project-specific schema called "Project" which available for this project only (and stored together with other project-specific settings).
You can read more in official help page.
The Code Style is used for code formatting: be it automatic as you type / use live templates etc .. or manual reformat via Code | Reformat Code...
It's used to
choose the code style scheme to be used as the base for your custom coding style for the selected language (Source).
In other words: after selecting a scheme, you can set different formatting options, like tabs vs spaces, tab size or line breaks etc. To use those settings in your current project, you need to click Manage, select your edited scheme and click Copy to Project. After this, you can press Ctrl + Alt + L (Code > Reformat Code...) in the editor to reformat a file according to those scheme settings.
I could not find the live templates for Java! Who can tell me how to set? Thanks.
They're inside all the nodes that are not specific to another language than Java: iterations, output, plain, surround, etc.
As JB Nizet wrote there is not a special node for Java (but you can create one). If you want your own Live Template for Java created do the following.
Open Settings window (File -> Settings)
Click on Editor -> Live Templates
Choose Template Group in which you want to add your Live Template
(you can create your own Template Group if you wish)
Click on + icon and choose Live Template
Specify the Abbreviation, Description and Template text.
Do not forget to define the context (in your case Java)
Example
Here is an example of how to create your own TODO text
Open the Setting window with Live Templates editor (as specified above).
Click on + icon and select Template Group.
Name this group Java.
Click on + icon again and select Live Template.
Specify your Live Template and DEFINE CONTEXT.
In my case writing mtodo and pressing enter will result in:
// TODO myName
You can even use variables. Write in your Template text e.g. $DATE$ and $TIME$
// TODO myName $DATE$ $TIME$
Click on Edit variables button and assign to each variable (defined by dollar sign) and expression (predefined function).
Now mtodo will result in
// TODO myName 13.10.2015 15:39
Predefined functions could be found here. The example was created using IntelliJ IDEA 15 EAP.
For those of you who have taken Postfix completion for Live templates, it is worth mentioning they are different. from not-choosing pretty good answers from #JB Niznet and #vitfo, I guess that's the case for OP writer. The document, here, says:
Postfix code completion is similar to live templates, it transforms the current expression without selecting it. For example, you can type .if after an expression to invoke the corresponding postfix completion and wrap the expression with an if statement.
You can check out a list of postfix completions:
Open the Preferences window
Click on Editor -> General -> Postfix completion
By default, there is no JAVA group in this setting page.
However, these default settings distribute on each feature group. For example, iterations:
IntelliJ IDEA 2019.2.4 (Ultimate Edition)
For each model element, there is the option in EA 10 to create internal requirements, constraints and scenarios. All of them end up in reports if you use the pre-defined Basic Template.
However, if you select "structured specification" instead of the default "description" text field for a scenario, then I end up with the steps of the structured specification being ignored in the report output.
How can I have them included in reports?
It sounds like you need to create your own reporting template. This may seem a bit daunting first time out and the template editor is pretty ornery, but luckily you can use an existing template as a starting point.
Hit F8 to bring up the Generate Documentation dialog, then select the Templates tab. Click New, specify a name and select a template you like to be copied. Don't bother with a template group, and leave the fragment checkbox unchecked.
In the editor, scroll down about halfway (assuming you selected to copy the Basic template) and locate the yellow scenario > tag.
Now in the checkbox tree on the left, scroll down do Package - Element - Scenario. Note that Scenario is checked, but Structured Scenarios is not. Check it.
In the editor, note the new structured scenarios > tag. Remove the right-click-to-insert text, then right-click and select Insert Field, then State etc.
It's more than a little fiddly, but if the Basic template is good enough to begin with you should be able to add the structured scenarios with a minimum of effort.
For more information, see the help file under Reporting - RTF Documents. Note that the individual fields aren't listed in the help file, you need to open up the template editor to see what specific information you can extract to your report.