Konfiguration MSEide

Forum für alles rund um die MSEide und MSEgui
mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Konfiguration MSEide

Beitrag von mse »

Marsmännchen hat geschrieben:Also bringen die Leerzeilen die IDE offenkundig durcheinander?

git master fb5cb7f8933424f03432ecb67db4c152265d40c1 verschiebt den cursor mit der Ein-/Ausrückung wenn kein Block markiert ist.

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Konfiguration MSEide

Beitrag von Marsmännchen »

Hi,

ich habe mir jetzt die letzten Änderungen runtergeladen:
git pull origin master
Von https://gitlab.com/mseide-msegui/mseide-msegui
* branch master -> FETCH_HEAD
Aktualisiere 54bd24b63..fb5cb7f89
Fast-forward
lib/common/designutils/msesyntaxedit.pas | 16 ++++++++--
lib/common/graphics/msegraphics.pas | 6 ++++
lib/common/graphics/msex11gdi.pas | 2 ++
lib/common/kernel/mselibc.pas | 4 +++
lib/common/kernel/msestrings.pas | 55 ++++++++++++++++++++++++++------
5 files changed, 71 insertions(+), 12 deletions(-)


Ich hoffe, das war so richtig.

Danach konnte ich bezüglich (un)indent folgendes Verhalten feststellen:
Bei gefüllten Zeilen funktionieren die Shortcuts tadellos.
Bei leeren Zeilen reagieren die Shortcuts nicht.
Bei leeren Zeilen in die man einen Tabulator setzt spinnen die Shortcuts wie zuvor beschrieben. Wenn man dann zum Tabulator noch einige Zeichen hinzufügt, dann spinnen die Shortcuts anfangs (Historyfunktion? Es sieht so aus, als ob die vorherigen Eingaben quasi nachverfolgt werden, aber invertiert) und danach funktionieren sie tadellos.

Ich hoffe, das hilft dir weiter, besser kann ich es nicht beschreiben.
Ich mag Pascal...

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Konfiguration MSEide

Beitrag von mse »

Funktionieren jetzt die Tooltips und das blinkende Caret?

Das ursprüngliche Verhalten mit Ctrl+I/Ctrl+U war, dass die Cursorposition unabhängig davon ob ein Block selektiert ist stehen bleibt. Darum hast du in einer Zeile ohne Text von Ctrl+I nichts bemerkt, da die Zusätzlichen Leerzeichen nicht sichtbar sind. Mit der End-Taste hätte man sehen können, dass die Zeile tatsächlich länger wurde. Das habe ich nun dahingehend geändert, dass der Cursor mit der Ein-/Ausrückung mitgeht, wenn Start und Stop eines selektierten Bereiches in der gleichen Zeile stehen oder gar keine Selektion besteht.
Wenn du in einer leeren Zeile eine Tabulator eingibst, Springt der Cursor zur nächsten Tabulator-Spalte, welche normalerweise die 4. Spalte ist. Dies kann unter 'Project'-'Options'-'Editor'-'Source'-'Tabstops' eingestellt werden. Drückst du nun Ctrl+I, werden links vom Tabulator ein oder mehrere Leerzeichen eingefügt, der Cursor ist immer rechts des Tabulators. Diese Cursor Position ändert sich erst, wenn links vom Tabulator 4 Leerzeichen eingefügt werden, dann springt der Cursor zur 2. Tabulatorstelle, der achten Zeichenspalte. Wenn du 'Project'-'Options'-'Editor'-'Source'-'Show tabs' aktivierst, kannst du den Effekt verfolgen.

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Konfiguration MSEide

Beitrag von Marsmännchen »

Nein, Tooltips sind weiterhin abwesend. Caret blinkt nicht.

Ich war mir nicht sicher, ob ich MSEide nach dem Git-Update nicht neu kompilieren muss. Ich habs versucht und die Kompilierung ist gecrasht:
Compiling ./lib/common/kernel/msestat.pas
Fatal: Compilation aborted
An unhandled exception occurred at $08093E3E:
EListError: List index exceeds bounds (0)
$08093E3E
$081B4FB7
$081A90E8
$081B5528
$081B4C16
$081B5339
$081B4FB7
$081A90E8
$081B5528
$081BD00B
$081BDAE9
$081A90E8
$081B5528
$081BD00B
$081BDAE9
$081A90E8
$081B5528

Error: /usr/bin/ppc386 returned an error exitcode


EDIT: Ich hab jetzt zur Kontrolle mal Lazarus aufgerufen. Dort funktionieren Tooltips und Caret wie erwartet. Also muss mein System sowas grundsätzlich anbieten. Ich hatte schon Xfce in Verdacht, damit was zu tun zu haben, weil es ja ein sehr schlankes Desktopsystem ist.
Ich mag Pascal...

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Konfiguration MSEide

Beitrag von mse »

Marsmännchen hat geschrieben:Nein, Tooltips sind weiterhin abwesend. Caret blinkt nicht.

Ich war mir nicht sicher, ob ich MSEide nach dem Git-Update nicht neu kompilieren muss.

Aha, dann arbeitest du natürlich noch mit der ursprünglichen MSEide. Ja, nach "git pull" muss MSEide neu kompiliert werden.
Ich habs versucht und die Kompilierung ist gecrasht:
Compiling ./lib/common/kernel/msestat.pas
Fatal: Compilation aborted
An unhandled exception occurred at $08093E3E:
EListError: List index exceeds bounds (0)


Das ist wieder das bekannte FPC-Problem mit den vorkompilierten Units. Den Effekt des Kompilierens in MSEide mit 'Build' statt 'Make' kannst du in der Kommandozeile durch beifügen von -B erzeugen, dann werden alle Units kompiliert und FPC sollte nicht mehr abstürzen.

Code: Alles auswählen

 
fpc -B -Fulib/common/* -Fulib/common/kernel/linux apps/ide/mseide.pas
 

Du kannst einen FPC-Bugreport machen:
http://bugs.freepascal.org/my_view_page.php
Dieses Problem schleppt FPC schon seit mehr als zehn Jahren mit sich herum.
EDIT: Ich hab jetzt zur Kontrolle mal Lazarus aufgerufen. Dort funktionieren Tooltips und Caret wie erwartet. Also muss mein System sowas grundsätzlich anbieten. Ich hatte schon Xfce in Verdacht, damit was zu tun zu haben, weil es ja ein sehr schlankes Desktopsystem ist.

Das Problem war, dass der Datetyp "__time_t" in 32-Bit FreeBSD 32-Bit gross ist statt 64-Bit wie auf 64-Bit FreeBSD. Das musste in mselibc.pas nachgetragen werden. Du bist ja der erste FreeBSD-32 Nutzer, darum musste MSEide+MSEgui zuerst portiert werden.

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Konfiguration MSEide

Beitrag von marcov »

mse hat geschrieben: Du bist ja der erste FreeBSD-32 Nutzer, darum musste MSEide+MSEgui zuerst portiert werden.


Solche Dingen sind möglich FreeBSD major Version abhängig, und der Trend ist natürlich 64-bit überall (y2k38) sie auch http://bugs.freepascal.org/view.php?id=30314

Was ist der Mantis # fuer das zehn Jahre Problem?

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Konfiguration MSEide

Beitrag von mse »

marcov hat geschrieben:Solche Dingen sind möglich FreeBSD major Version abhängig, und der Trend ist natürlich 64-bit überall (y2k38) sie auch

In FreeBSD 11 ist es noch 32-Bit.
Was ist der Mantis # fuer das zehn Jahre Problem?

Du weisst sicher, worum es geht. ;-)
Die FPC unit-Verwaltung müsste neu gemacht werden, dazu hat aber niemand Lust. Bug-Reports darüber gibt es mehrere.

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Konfiguration MSEide

Beitrag von marcov »

mse hat geschrieben:Die FPC unit-Verwaltung müsste neu gemacht werden, dazu hat aber niemand Lust. Bug-Reports darüber gibt es mehrere.


Ja, aber die manifestieren sich anders (*.ppu modified, und dann eich versuch zu Rekompilierung und dann eine "kann unit xxx nicht finden" Ähnliche Fehler.

Diese Exception ist nicht Typisch denke ich.

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Konfiguration MSEide

Beitrag von mse »

Nach meiner Erfahrung sind es immer" SIGSEGV" oder "index out of bounds" Exceptions. Was auch vorkommt sind Fehler wegen "class does not implement interface xxx" welche mit -B verschwinden.

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Konfiguration MSEide

Beitrag von Marsmännchen »

Okay, jetzt ist die Kompilation glatt durchgelaufen, Tooltipps und Caret funktionieren wie erwartet :D . Dann werde ich weiter mit MSEide rumspielen.

mse hat geschrieben:Du bist ja der erste FreeBSD-32 Nutzer, darum musste MSEide+MSEgui zuerst portiert werden.

Hilfe :shock: ! Ist mir ja peinlich so einen Aufwand zu machen. Zumal jetzt mein neuer Laptop unterwegs ist und ich daher demnächst auf 64bit umsteige. Ich hoffe bloß, dass noch ein paar 32bit-Interessenten kommen und du dir die Mühe nicht umsonst gemacht hast. :oops:
Ich mag Pascal...

Antworten