Author Topic: My IDE just froze up, but get this...  (Read 3318 times)

0 Members and 1 Guest are viewing this topic.

Offline Pete

  • Forum Resident
  • Posts: 2361
  • Cuz I sez so, varmint!
    • View Profile
My IDE just froze up, but get this...
« on: January 30, 2021, 10:37:09 pm »
After using Task Manager to kill it, I opened QB64 and used the auto-recovery, but when it opened, it opened in the same frozen state. This is a first.

I have to assume the recovery opens and immediately begins the checking / compiling process, so, to get myself out of hot water, I simply opened up another QB64 IDE, and turned syntax checking off. Redid the recovery process and got it back.

I tracked down the line that caused it to freeze: My error on a long line of code, that had an array, which should have been... and mx% >= myarray%(ubound(ifield$)) but I goofed and coded that last part of a long line as: and mx% >= myarray%(ubound(ifield$(1)))

That was a mistake, but it gave the compiler a case of the bits. Complete freeze. It won't freeze if that error is made all by itself, as a single conditional statement. I already checked that. BTW, the program was around 2096 lines.

Also, is there a place in the Internal folder I could have extracted that recovery file? If it's the Undo2.bin file, I would have to try maybe notepad++, as Notepad can't handle the size of that file. Of course if there are a lot of added control charters to the recovery, it probably wouldn't be worth bothering with.

If anyone with a Wiki account wants to add the uncheck syntax checking to another instance, close it, and then try the recovery, it might save someone else who may encounter this rare IDE freezing situation.

Pete

Want to learn how to write code on cave walls? https://www.tapatalk.com/groups/qbasic/qbasic-f1/

Offline SMcNeill

  • QB64 Developer
  • Forum Resident
  • Posts: 3972
    • View Profile
    • Steve’s QB64 Archive Forum
Re: My IDE just froze up, but get this...
« Reply #1 on: January 30, 2021, 10:44:29 pm »
Quote
I have to assume the recovery opens and immediately begins the checking / compiling process, so, to get myself out of hot water, I simply opened up another QB64 IDE, and turned syntax checking off. Redid the recovery process and got it back.

Note that this probably only works if you have universal settings.  If you go into the config file, you can set the flag for IDE independent settings.  If that’s enabled, you’d probably need to modify your config file manually as the 2nd IDE would be independent of the 1st.
https://github.com/SteveMcNeill/Steve64 — A github collection of all things Steve!

Offline SpriggsySpriggs

  • Forum Resident
  • Posts: 1145
  • Larger than life
    • View Profile
    • GitHub
Re: My IDE just froze up, but get this...
« Reply #2 on: January 30, 2021, 10:44:58 pm »
Perhaps you ran my code for 1 Terabyte file creation? ;)
Shuwatch!

Offline SMcNeill

  • QB64 Developer
  • Forum Resident
  • Posts: 3972
    • View Profile
    • Steve’s QB64 Archive Forum
Re: My IDE just froze up, but get this...
« Reply #3 on: January 30, 2021, 10:46:21 pm »
Perhaps you ran my code for 1 Terabyte file creation? ;)

Takes 22 minutes to run, by the way.  ;D
https://github.com/SteveMcNeill/Steve64 — A github collection of all things Steve!

Offline Pete

  • Forum Resident
  • Posts: 2361
  • Cuz I sez so, varmint!
    • View Profile
Re: My IDE just froze up, but get this...
« Reply #4 on: January 30, 2021, 10:51:13 pm »
Perhaps you ran my code for 1 Terabyte file creation? ;)

So you're the bastard who posted that! :D :D :D No, I certainly didn't copy it or run it, because I read it, first. I did get a kick out of it though. Especially since I'm 5000 lines into a WP project with GUI, and that guy is taking up forum space with some ^%$^%#^# empty file routine, and he didn't even code it efficiently. SEEK my ascii. 22 minutes Steve. You have a fast system. Mine would probably take an hour, ten.

Anyway, yeah Steve, I thought about manually changing the config file, but opening a second instance of the IDE and closing it did that for me, apparently. I'm just glad I figured it out, and got it back, before I scrapped the auto recovery. I love that feature.

Pete
Want to learn how to write code on cave walls? https://www.tapatalk.com/groups/qbasic/qbasic-f1/

Offline SMcNeill

  • QB64 Developer
  • Forum Resident
  • Posts: 3972
    • View Profile
    • Steve’s QB64 Archive Forum
Re: My IDE just froze up, but get this...
« Reply #5 on: January 31, 2021, 04:52:31 am »
For anyone curious, here's what a QB64 config file looks like:

Code: QB64: [Select]
  1. '[CONFIG VERSION]
  2. ConfigVersion = 1
  3.  
  4. '[GENERAL SETTINGS]
  5. MultiHighlight = TRUE
  6. KeywordHighlight = TRUE
  7. BracketHighlight = TRUE
  8. ShowLineNumbersUseBG = TRUE
  9. ShowLineNumbersSeparator = TRUE
  10. ShowLineNumbers = TRUE
  11. ShowErrorsImmediately = TRUE
  12. EnableQuickNav = TRUE
  13. SaveExeWithSource = FALSE
  14. WhiteListQB64FirstTimeMsg = TRUE
  15. ExeToSourceFolderFirstTimeMsg = TRUE
  16. PasteCursorAtEnd = TRUE
  17. DisableSyntaxHighlighter = FALSE
  18. DebugInfo = FALSE 'INTERNAL VARIABLE USE ONLY!! DO NOT MANUALLY CHANGE!
  19. BackupSize = 100 'in MB
  20. AllowIndependentSettings = FALSE
  21.  
  22. '[IDE COLOR SETTINGS]
  23. BackgroundColor2 = _RGB32(0,49,78)
  24. BackgroundColor = _RGB32(0,0,39)
  25. TextColor = _RGB32(216,216,216)
  26. QuoteColor = _RGB32(255,167,0)
  27. NumbersColor = _RGB32(216,98,78)
  28. HighlightColor = _RGB32(0,88,108)
  29. KeywordColor = _RGB32(69,118,147)
  30. MetaCommandColor = _RGB32(85,206,85)
  31. CommentColor = _RGB32(98,98,98)
  32. SchemeID = 1
  33.  
  34. '[IDE DISPLAY SETTINGS]
  35. IDE_LeftPosition =  713
  36. IDE_TopPosition =  259
  37. IDE_UseFont8 = FALSE
  38. IDE_IndentSUBs = TRUE
  39. IDE_NormalCursorEnd = 8
  40. IDE_NormalCursorStart = 8
  41. IDE_SUBsLength = TRUE
  42. IDE_SortSUBs = FALSE
  43. IDE_CodePage = 0
  44. IDE_CustomFont = FALSE
  45. IDE_CustomFont$ = "c:\windows\fonts\lucon.ttf"
  46. IDE_CustomFontSize = 21
  47. IDE_AutoFormat = TRUE
  48. IDE_AutoIndent = TRUE
  49. IDE_IndentSize = 4
  50. IDE_Height =  38
  51. IDE_Width =  118
  52. IDE_AutoPosition = TRUE
  53.  
  54. '[MOUSE SETTINGS]
  55. SwapMouseButton = FALSE
  56.  
  57. '[CUSTOM DICTIONARIES]
  58. CustomKeywords$ = "@"
  59. CustomKeywordsSyntax$ = "@custom@keywords@separated@by@the@at@sign@"
  60.  

It's created on QB64-style syntax, so just about anyone who's used QB64 for any length of time should be able to easily tell what the variables are, and what they relate to.

The settings that we're talking about here on line 21: AllowIndependentSettings = FALSE.  If this is set to TRUE, then *every* instance of your IDE will have it's own unique config.txt set.  They'll be labeled config(1).txt, config(2).txt, config(3).txt, and so on.  Pete's trick of opening a second version and changing the settings won't work, if you've turned this option on.  You'd need to manually go in and edit the config(whatever).txt yourself.

Now, the auto formatter (which is what Pete was somehow having issues with) option is down at line #48:
IDE_AutoFormat = TRUE

He changed his via a second instance of running QB64 (his independent settings is FALSE, by default), but he could've easily just went into the qb64\internal folder, opened the config.txt file there, and then set it to FALSE himself.  Honestly, that's all it takes to make the changes inside QB64's settings, and it gives an option as something to try, if you run into the same issue as what Pete had, some time in the future.
https://github.com/SteveMcNeill/Steve64 — A github collection of all things Steve!