theia icon indicating copy to clipboard operation
theia copied to clipboard

Bad Tabs(Indentation) auto-detection.

Open mifth opened this issue 1 year ago • 2 comments

Bug Description:

Hi, I found that Theia has bad tabs auto-detection. Instead of tabs I get spaces.

Theia, downloaded yesterday. image

image

VSCode works ok. image

image

I tested this file: https://github.com/mifth/Dialogue-Creator/blob/main/addons/dialoguecreatorgame/Scripts/Dialogue/DCGDialogueData.gd

Steps to Reproduce:

  1. Install the Godot extension.
  2. Download the project or file above. https://github.com/mifth/Dialogue-Creator
  3. Open the file

Additional Information

  • Operating System: Win 11
  • Theia Version: 1.51.0

mifth avatar Jul 13 '24 23:07 mifth

Does it seem to be the same issue as: https://github.com/eclipse-theia/theia/issues/13929?

JonasHelming avatar Jul 22 '24 08:07 JonasHelming

@JonasHelming possibly but this can be a bit different. In my case the IDE should choose what to use. Either Spaces or Tabs.

In the bug you mentioned it's more about the config. In my case the config is not used but the IDE should determine indentation mode when a file is being opened.

mifth avatar Jul 23 '24 09:07 mifth

This seems like an old issue: we update the monaco text model options when we open an editor (and also on editor preferences). However, I don't think this should be necessary: we are configuring a monaco IConfigurationService that is based on our preferences implementation. If that service functions correctly (including language-specific settings and change propagation), we should not have to update the model by hand.

tsmaeder avatar Aug 02 '24 09:08 tsmaeder

Btw: we're updating the options without taking the detectIndentation preference into account. But the correct fix is simply to remove the manual update code.

tsmaeder avatar Aug 02 '24 09:08 tsmaeder

I'm pretty sure that a fix is just 2 lines of code somewhere. :)

Just my thoughts. At the moment, it's hard to use Theia with Godot as I have to change Spaces to Tabs manually for an every .gd file which has been opened. Godot uses Tabs by default.

And I don't want to use only Tabs for everything (for example the default Python style uses Spaces). So, I switched to VSCode back for a while as it's pretty straightforward. But I and Godot community are looking forward at using Theia in our production!

mifth avatar Aug 02 '24 11:08 mifth

I can confirm that it's fixed. Thanks a lot!

mifth avatar Oct 31 '24 15:10 mifth