Search Issue Tracker
MonoDevelop autocompletes "defines/conditionals" wrong
Reproducible in MonoDevelop when editing C# script. MonoDevelop automatically formats code by removing tabs and spaces before "#if", "#define" and other commands. After writing "#if" in the new line and pressing space to autocomplete, some letters are duplicated and concatenated at the end (if there were no tabs or spaces added by the user, but only spacing added automatically by the MonoDevelop). The number of added letters depends on the number of tabs previously present in an empty line.
This is not reproducible with Unity 4.2.2f1
Unity Version 4.3.1f1 (cebd4d9b5122)
1. Open any script in MonoDevelop
2. Inside any function press enter at the end of a line to start a new empty line
3. Notice that MonoDevelop has automatically added a few tab characters to add proper indentation
4. Type #if and press space to autocomplete
5. Notice that #if was moved to the beginning of the line (indentation was removed) and after the space was pressed, some letters were concatenated at the end. For example if previously new line was indented with two tabs, then the line looks like this now "#ifif". If the line was indented by only one tab, then the line is "#iff".
The case was resolved by the developer with the following message:
this only happens in a very specific scenario:
- the code is indented
- the user types the whole preprocessor keyword
- the amount that the code is indented is fewer characters than the length of the keyword
- this area of the code has been rewritten in upstream
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [CPULM] Enabling indirect denoising and gaussian AO filter causes bright halos
- Fix doc and typo in Scene TemplatePipeline
- Analytics spams error console when it cannot connect
- New Lighting Settings wipes the settings in the Lighting Window
- Splash screen animation continues playing in the background while resolution is being changed upon launching the player