Forum: Compiler & IDEs Segger Embedded Studio: Einstellungen.


von Schwierig (ruelps)


Lesenswert?

Hallo,

auch wenn VS Code immer mehr an allen Fronten "kommt", habe ich für ein 
sehr simples nRF52-Projekt (ca. 50 Zeilen Code...) SES genommen, da es 
für mich am Schnellsten funktionierend aufzusetzen war. Selbst Nordic 
ist ja da mittlerweile umgeschwenkt.

Das Meiste konnte ich inzwischen sehr schnell an meine Wünsche anpassen 
(clang-format, Keyboard shortcuts usw.), aber bei folgenden Sachen hakt 
es:
1.) So ziemlich jede IDE ergänzt automatisch eine schließende Klammer; 
Anführungszeichen usw.. Außer eines Featurerequests vor ein paar Jahren 
habe ich nichts dazu gefunden. Auch springen die meisten Editoren nach 
einem Enter oder Tab hinter das automatisch eingefügte Zeichen.
2.) Nach autocompletion automatisch ein Leerzeichen einfügen. Ist doch 
immer erforderlich.
3.) Jedes Fenster mit einem eigenen "X" zum Schließen versehen. Immer 
nach ganz rechts oder über rechte Maustaste und schließen bin ich halt 
nicht gewohnt.
4.) Wenn zur Übersichtlichkeit z.B. HEX-Werte nach 2 Zeichen durch ein 
Hochkomma, oder Tausender-Trennzeichen eingefügt werden, wird das als 
Fehler erkannt.

Kann man die Sachen irgendwo einstellen oder gibt es diese Featutes 
wirklich nicht?

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Hi,

danke für die Fragen.


> 2.) Nach autocompletion automatisch ein Leerzeichen einfügen. Ist doch
> immer erforderlich.
Joa, ich würde jetzt nicht sagen immer, aber wäre nicht verkehrt, wenn 
das einstellbar wäre.

> 3.) Jedes Fenster mit einem eigenen "X" zum Schließen versehen. Immer
> nach ganz rechts oder über rechte Maustaste und schließen bin ich halt
> nicht gewohnt.
Ich bin mir nicht ganz sicher, ob ich das richtig verstehe. In jedem 
Fenster sollte es doch rechts oben das "X" geben auf das man klicken 
kann, um das Fenster zu schließen? Ich arbeite auch den ganzen Tag mit 
ES und sehe gerade kein Fenster, bei dem das nicht so ist.

> 4.) Wenn zur Übersichtlichkeit z.B. HEX-Werte nach 2 Zeichen durch ein
> Hochkomma, oder Tausender-Trennzeichen eingefügt werden, wird das als
> Fehler erkannt.
Gibt es IDEs/Compiler, die das zulassen? Ich hätte jetzt nicht erwartet, 
dass das funktioniert, weil das kein gültiger C Syntax ist.

Am schnellsten bekommst du qualifizierte Antworten von den ES Kollegen, 
wenm du deine Fragen hier stellst: https://forum.segger.com/

Oder hier wenn du eine ES Lizenz besitzt: 
https://www.segger.com/support/technical-support/

Viele Grüße,
Til

: Bearbeitet durch User
von Harald K. (kirnbichler)


Lesenswert?

Til S. schrieb:
> Ich bin mir nicht ganz sicher, ob ich das richtig verstehe.

Ich vermute, daß Tabs gemeint sind. Diese "modernen" IDEs erlauben 
üblicherweise keinen Gebrauch von Fenstern mehr, sondern sind auf das 
GUI-Konzept von Windows 1.x zurückgefallen, bei dem man Fenster nur 
nebeneinander ("tiltes"), aber nicht überlappend anordnen darf.

Als Zuckestück gibt es dann halt Tabs, aber mit denen sieht man auch 
immer nur genau ein Dokument zur gleichen Zeit.

Solche Interfaces sehen immer ganz beeindruckend aus, wenn man sie auf 
niedrigauflösenden Monitoren (z.B. XGA) verwendet, aber wer macht das 
noch?

Um auf die Tabs zurückzukommen: Das "X" zum Schließen des aktiven Tabs 
wird in manchen IDEs nicht im Tab-Titel untergebracht, sondern oben 
rechts am Ende der Tableiste.

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Ok, danke, aber ich verstehe immer noch nicht so ganz das Problem.
Das Fenster nicht überlappen können, sehe ich eher als Vorteil. Ich kann 
aber natürlich beliebig viele z.B. Editor Fenster gleichzeitig 
nebeneinander haben.

Alternativ kann ich Fenster in Tabs haben, um Platz auf dem Monitor zu 
sparen. Wo das X platziert ist, ist so ein bisschen Designentscheidung 
aber hat mich bei ES noch nie gestört.

Ist natürlich nur mein persönlicher Geschmack und ich kann gut 
verstehen, wenn man das anders sieht.

von Vanye R. (vanye_rijan)


Lesenswert?

> Das Fenster nicht überlappen können, sehe ich eher als Vorteil.

Nein, das ist der GROSSE Nachteil von dem ganzen Windowsmist.
Unter Linux bin ich es gewohnt das ich auch immer kleine Stuecke
eines Fenster habe/sehe, selbst wenn die im fokus sind. (focus follows 
maus)
So kann man z.B in einem fenster etwas eintippen was man im darueber 
liegenden
Fenster sieht, oder auch umgekehrt.
Das ist der Grund wieso ich bei Windows immer Schaum vor dem Mund habe, 
vor allem wenn man gerade keinen 30" Monitor hat.

Aber das wichtiges bei jede IDE ist sowieso immer der Emacs-Modus damit
man keine neuen Befehle lernen muss und die Hand immer auf der Tastatur
bleiben kann. .-)

Vanye

von Harald K. (kirnbichler)


Lesenswert?

Vanye R. schrieb:
> Nein, das ist der GROSSE Nachteil von dem ganzen Windowsmist.

Das hat exakt gar nichts mit Windows zu tun, die entsprechende 
Designphilosophie exisitert exakt genauso auch unter Linux/Unix.

Überlappende Fenster kann Windows sehr wohl - nur die IDE-Entwickler 
sind irgendwelche Leute, die es nie anders gelernt haben.

Deswegen gibt es auch kaum noch Editoren, die "virtual whitespace" 
unterstützen - wer damit schon seit > 30 Jahren arbeitet, vermisst es, 
wer es nicht kennt, kann es naturgemäß nicht vermissen und versteht die 
Diskussion auch nicht.

von Schwierig (ruelps)


Lesenswert?

Til S. schrieb:
>> 2.) Nach autocompletion automatisch ein Leerzeichen einfügen. Ist doch
>> immer erforderlich.
> Joa, ich würde jetzt nicht sagen immer, aber wäre nicht verkehrt, wenn
> das einstellbar wäre.

O.K., da rudere ich auch etwas zurück. Habe heute bewußt mal drauf 
geachtet und tatsächlich öfters den Fall gehabt, wo das nicht so 
sinnvoll gewesen wäre. Konkret z.B. autocomplete des letzten Parameters 
einer Funktion. Aber das überflüssige Leerzeichen würde beim nächsten 
Speichern dann der Formatter wieder wegholen.

Til S. schrieb:
>> 3.) Jedes Fenster mit einem eigenen "X" zum Schließen versehen. Immer
>> nach ganz rechts oder über rechte Maustaste und schließen bin ich halt
>> nicht gewohnt.
> Ich bin mir nicht ganz sicher, ob ich das richtig verstehe. In jedem
> Fenster sollte es doch rechts oben das "X" geben auf das man klicken
> kann, um das Fenster zu schließen? Ich arbeite auch den ganzen Tag mit
> ES und sehe gerade kein Fenster, bei dem das nicht so ist.

In der Tat mißverständlich formuliert: Wie schon vermutet, sind es die 
Tabs in einem Fenster. Ich habe z.B. main.c offen und öffne daraus über 
"Go To Definition" ein weiteres Tab eben mit der Definition. Dieses 
wieder zu schließen ist gemeint.

Til S. schrieb:
>> 4.) Wenn zur Übersichtlichkeit z.B. HEX-Werte nach 2 Zeichen durch ein
>> Hochkomma, oder Tausender-Trennzeichen eingefügt werden, wird das als
>> Fehler erkannt.
> Gibt es IDEs/Compiler, die das zulassen? Ich hätte jetzt nicht erwartet,
> dass das funktioniert, weil das kein gültiger C Syntax ist.

Also STM32CubeIDE und MCUXpresso als Eclipse-basierte haben damit kein 
Problem. Der C-Standard gestattet das ja auch explizit, wird also hier 
eher ein Problem des Parsers oder so sein. Beispiel:
uint32_t freq = 1'000'000;

Am allermeisten aber stört mich wirklich das Fehlen der automatischen 
Ergänzung von schließenden Klammern, doppelten Anführungszeichen usw..
Eingangs erwähntes Featurerequest: 
https://forum.segger.com/index.php/Thread/7105-SOLVED-Auto-insert-braces-and-C-template/

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Schwierig schrieb:
> Also STM32CubeIDE und MCUXpresso als Eclipse-basierte haben damit kein
> Problem. Der C-Standard gestattet das ja auch explizit, wird also hier
> eher ein Problem des Parsers oder so sein. Beispiel:
> uint32_t freq = 1'000'000;

Aber erst ab C++ 14.

Versuch mal bitte in den ES Project Settings unter Compiler -> C++ 
Language Standard das auf "c++ 14" umzustellen. Default bei einem neuen 
Projekt ist "gnu++ 98".

von Schwierig (ruelps)


Angehängte Dateien:

Lesenswert?

Das funktioniert, danke. Der Compiler schluckt es, der Editor meckert es 
aber weiterhin an. Kann ich aber mit leben.

Dritter und letzter Versuch, hast Du ja bisher erfolgreich ignoriert ;-)

Schwierig schrieb:
> Am allermeisten aber stört mich wirklich das Fehlen der automatischen
> Ergänzung von schließenden Klammern, doppelten Anführungszeichen usw..
> Eingangs erwähntes Featurerequest:
> 
https://forum.segger.com/index.php/Thread/7105-SOLVED-Auto-insert-braces-and-C-template/

von Schwierig (ruelps)


Lesenswert?

Witzig: Nach einem Neustart des Programms ist auch die Warnung weg.

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Schwierig schrieb:
> Dritter und letzter Versuch, hast Du ja bisher erfolgreich ignoriert ;-)
>
> Schwierig schrieb:
>> Am allermeisten aber stört mich wirklich das Fehlen der automatischen
>> Ergänzung von schließenden Klammern, doppelten Anführungszeichen usw..
>> Eingangs erwähntes Featurerequest:
>>
> 
https://forum.segger.com/index.php/Thread/7105-SOLVED-Auto-insert-braces-and-C-template/

Ignoriert nicht aber ich bin in dem Fall auch nur Kunde und nicht 
Entscheider ;-). Ich gebe es aber gerne nochmal an die Kollegen weiter.

von Schwierig (ruelps)


Lesenswert?

Besten Dank.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.