View Full Version : Alternative IDEs
ErosOlmi
27-08-2009, 19:58
This new forum is dedicated to suggest any alternative to official thinBasic editor: thinAir.
Feel free to suggest anything you can find useful in handling thinBasic source code.
zlatkoAB
27-08-2009, 22:24
Maby i'm stupid or maby i'm used...
ThinAir have same charm like thinBasic itself.
So i vote for thinAir,rewrite new one 8)
John Spikowski
28-08-2009, 14:37
You might want to consider using FBEdit. It's an outstanding IDE.
Hi there
It will be a good idea to develop Autocomplete function in thinair : it offers more praticity to developers.
Thanks
Michael Hartlef
26-12-2016, 23:14
Eros, which language is used for creating thinAir?
ErosOlmi
27-12-2016, 11:11
Eros, which language is used for creating thinAir?
It is written using PowerBasic 10
Main editor is developed using an old Edit Control called CODEMAX. When I started in 2004 it was quite good but later it was discontinued.
I'm currently switching to Scintilla Editor to allow more advanced functionalities.
http://www.scintilla.org/
Michael Hartlef
27-12-2016, 11:29
It is written using PowerBasic
ever thought about porting it to thinbasic?
ErosOlmi
27-12-2016, 11:58
ever thought about porting it to thinbasic?
Temptation is there :)
Challenge is very high
It could be a source code project that can also give more life to community.
reneminer has developed thinICE IDE in TBGL making great effort on it especially in parsing and data structures.
http://www.thinbasic.com/community/showthread.php?12611-preview-thinICE
It can be a source of inspiration
I think a good Editor Wrapper like Scintilla is needed because developing one from the beginning is a BIG project alone.
Michael Hartlef
27-12-2016, 12:16
I thought regarding Scintilla, you had made the efforts in the past, didn't you?
ErosOlmi
27-12-2016, 14:54
Yes, I did something some years ago but gave up.
Now I'm moving to Scintilla definitely in order to get unicode, folding, code completion, ...
Michael Hartlef
27-12-2016, 22:26
Wow, auto complete would be definitely an enhancement. So does unicode.
ReneMiner
26-05-2020, 22:15
If you are one of the users who like to configure and more or less customize the tools to work with, i searched for alternatives too. A simple, but already old one i stumbled across- and i only mention it because thinBasic is supported was ConText. The Keyword-base would need a refresh since its 10 years old or more. Its a good try-out and a lightweight-experimental sandbox-editor where you can not do too much wrong and it's good to gather some success-fulfilled experience if you want to customize an advanced editor to your needs.
So for alternatives i could recommend 3 editors- the most known by everyone is Notepad++ (https://github.com/notepad-plus-plus/notepad-plus-plus)but even i did not finish the Autocomplete.xml list yet. Also FunctionList is a hard work if you want the subitems of a class (functions of a type) properly ordered on the codetree. Also customizing the menu and to shell a thinBasic-script requires some tricks as involving clipboard. So recommend to use a macro- store clipboard-content before calling a script to run - later restore clipboard content.
Another pretty nice alternative IDE is SynWrite (https://sourceforge.net/projects/synwrite/). While there were rumors about the programmer to have changed to join coda-editor-project he seems to have returned and obviously continued after long break to maintain Synwrite.
Very easy to configure and customize ( after configuring Notepad++ or Scite (what a hell) - this is really a walk in the park.
It needs basic knowledge of RegEx to customize and uses python-flavour. It even includes python and makes Synwrite to be able to program itself. Multiple lexers are usable at the same time. Means to thinBasic: it could split the lexers according to modules or included languages as ASM or O2 and within the code (or if Uses "UI", "TBGL") it would load lexers for O2-Basic, UI or TBGL-modules. RegEx are way eaysier to use than Notepad++ (since npp has quite a few bugs and special behaviours) or scite ( where at all could one enter it?)
And my late discovered alternate IDE suggest: RJ TextEditor. (https://www.rj-texted.se/)
It's - i guess a guy from northern europe who developed - and still is improving it.
It's a very sophisticated Texteditor- the first i've found out with it was that it required only a click to run a thinbasic-script.
Ok- its just starting it inside the implemented explorer- but no other editor where i've found it that easy.
It enables multiple lexers usage and some other features that i found make synwrite already stand out
- but this one stands out from the outstanding-
It provides implemented editors to almost everything - even to cusomize it (syntax, highlighting etc.menus - less RegEx in foreground but in the end it has it all.
It {includes|uses} "fastscript" - a scripting language that is one language but offers 4 different kinds of syntax to customize the editor - so as you prefer basic, java, c++ or pascal-syntax: you can choose what dialect you like to use for configuring this editor talk to it.
Rickard's Editor also provides an up-to date offline help-file separate from the download and if you have not tried it-
it's about time.
Anyway its a difficult decision:
+ Easy first time handling and automatic fool-proofness, auto-saves & backups pretty stable, just to edit scripts only and often use other kind of text too? 2 tabs at same time to edit your code serves? You're happy if creating macros is supported and you know to use them to your advantage? Then grab Notepad++
- but beginners will struggle to configure it for some mega-compatible programming language as thinBasic because we have many different rules and syntax. Notepad++ is not yet able to handle 2 keywords as 1 expression. In some boxes of the configurator the new approach to unite 2 keywords by putting them into quotes works- in the neighbouring box the same approach does not work. The count of keywords for the lexer is limited. You can choose % as a general prefix to avoid limitations and speed issues because it will have problems to handle more than 4500 numeral equates that thinBasic brings.
But it's quite usable.
+ simple to configure, much more settings and possibilities to customize than notepad++ and whatever your plans might be- there is a way to achieve it in SynWrite. Also many more tabs and tools open next to each other, you might edit- half a dozen scripts displayed at the same time and have more- self created toolbars or own features implemented to the editor.
-need some more time to find around than in npp, but after just looking at scite its like a beam of light in darkness . At a certain point you will not get further to customize it if you're not firm in python or don't know how to substitute a missing knowledge about python but there are forums with users that know. And there's google. Google knows it all.
+ RJ TextEdit - you can find all required help offline in one verbose file. And still there's the option to ask questions in the dedicated forum - about the editor itself or about the scripting language.
I did not get to count how many scripts at once can be edited. Nor how many tools, external helpfiles or ways to run a tB-Script can be implemented. Enough to serve all needs i would say. Fully customizable. As synwrite it offers to configure complete menus and toolbars including custom icons - the usage of multiple lexers at same time which will not run into a limit because its smart to load only required keyword-databases according to your setup.
- so many options and possibilities, you will never finish if your goal is perfection. Some of the menus in the provided customizer-tools-collection are bit misleading if there use is meant to a certain language only. But on the other hand - you always find new ways of using it when you customize it to do that what you thought it would do.
Scite?
- difficult in everything- no idea where to start or how to proceed- still getting surprised - but for beginners and intermediate NO WAY. Do not look for Scite if you're not a proven genius or moody sometimes. It will frustrate you and endangers your pc's health because you might throw something...
You should be better than advanced - and in that case i suggest: program your own editor.
You could extract the scintilla textcontrol only or use richtext-fields (big burden) or create own controls using openGL, DirectDraw or DirectX and start from scratch. Or try one of the above ;)
DirectuX
27-05-2020, 08:55
Hi Rene,
thank you for this review.
Should I share my opinion, I would say that, all the efforts that involve modding an external editor could be of a good use updating, by example but not only, thinAir's syntax files. Sadly, these files, at the moment, are not shared in a community-oriented edition fashion. Lastely, Eros announced, in this very forum, that "[He] want[s] our thinAir experience as great as possible". I'm confident.
nice editors, i have downloaded the SynWrite and the RJ TextEd , its newest versions supports OS'es from antiquity to the virus year !!.
the ability to use all different kinds of unicode and also the older ansi is a feature
i have made this experiment using SynWrite (applicable also to the recent thinAir): and using the character "Я" https://www.compart.com/en/unicode/U+042F
string s = "Я"
long a, b
a = peek(BYTE, strptr(s))
b = peek(BYTE, strptr(s)+1)
msgboxw 0, str$(a)+" "+str$(b) '208 175
msgboxw 0, peek$(strptr(s),2)
msgboxw 0, asc(s) '1071 '0x042F
saved it as utf-8, and then from command prompt thinbasic test1, i have noticed
1- the source code file encoding in utf-8 and the Я is encoded as 0xD0 0xAF
2- while the character in memory is encoded as UTF-16 Encoding: 0x042F = 1071
3- the Asc function return the UTF-16 encoding so it is 0x042F = 1071
that seems the right things, but i will never understand this deeply and why all this complexity, it could be UTF-16 is speedier than UTF-8.
correct me if there is errors in Logic or understanding
ReneMiner
29-05-2020, 11:48
... but i will never understand this deeply and why all this complexity, it could be UTF-16 is speedier than UTF-8...
If i would say i understand some- or anything about it - it were a lie.
But correct me if i am wrong: utf8 using 8Bit? thats what 8 is for? I don't get it. There also was a format associated to OEM - did they rename it or was it forgotten?
Its getting a very complex topic with all these different formats and if someone running linux or a mac we are lost completely.
ASCII - is 8 bit. That i know.
Guessing:
(Unicode = UTF8) = False
(Unicode = UTF16) = False
(Unicode = Widestring) = False
(Unicode = ANSI) = True
?
I dont know if any of my guesses is right. It makes the use of a textbox really complicated and i don't know how to detect for sure which format i am dealing with if the user inserts text from clipboard.
Does a textbox (or any control) automatic convert text from clipboard - or does the clipboard?
Do we need all these different formats within core or were it better to have a module for text-conversion/detection?
If my app except the filename will not accept any text-input- do i have to bother what characters-formats i am dealing with. Why doesn't someone, who really understands about it forge a rule and invent once and for all an extenteable char-format even (64-Bits or better 256 Bits per) char that can include all known formats and takes care about conversion? so we only have to deal with 2 formats Ascii and the "including all-charsets-of-the world-format" (which i thought would be unicode).
But obviously seems not to serve, maybe far eastern languages that have more than 42,000 different signs was not thought of when they invented Unicode? So it were smart to have a charset with enough space for additional languages so we can include the 276837612 currently unknow languages of the alien tribes from other planets that will visit the earth within thenext 10,000 years- just to make sure no more changes required.
DirectuX
29-05-2020, 13:22
utf8 using 8Bit? thats what 8 is for? I don't get it.
[...]
Guessing:
(Unicode = UTF8) = False
(Unicode = UTF16) = False
(Unicode = Widestring) = False
(Unicode = ANSI) = True
?
I dont know if any of my guesses is right.
Guessing ? Wikipedia has the answers:
Comparison_of_Unicode_encodings (https://en.wikipedia.org/wiki/Comparison_of_Unicode_encodings)
&
UTF-8 (https://en.wikipedia.org/wiki/Utf8)
And about ANSI & WideString, Character encoding (https://en.wikipedia.org/wiki/Character_encoding) is the page to read.
ReneMiner
29-05-2020, 17:40
that's my problem- if i want to write a script i come to line 100 or 150 but then something as this many charformats forces me to stop and waste time to study something thats obviously deprecated - since when i have the idea - someone else already realized it.
So i better search for the multinational charset that uses 8 Bytes per char and takes care of conversion, puts all new charformats into its database and only uses either AscII or its own -all other including formats.
For programming when its all about bytes and data the String will rarely contain anything else than bytes. For display and calculation it would put all text into a new string-alike variable-type where each char has like a QWord per char. Name it QTFIALOTWCDT as "QWordTextFormatIncludingAllLanguagesOfTheWorldChainDataType" or whatever.
That's a job for thincore and a functional user-defined datatype...
______________________________________________________________________________________________________________
Back to topic:
I tried out guess more than 100 different text-editors. Many of them were good but disqualified because of usage-limitations if you do not register and give them personal data about yourself, or they ask money to keep features working after a certain time. Others offer limited trial versions. A few were really good - the best trial/feature-linited texteditor if've found so far was PilotEdit(Lite). The trial gives no access to the codetree but anything else seemed useable to me.
Not bad also "Sublime" but its too much connected to JAVA/javascript and configurating possibilities do not serve to make it a full functional editor for thinBASIC.
Anyway i looked for full-free-features and open to configure so it can be made a real alternative but not an "OK-ar least it works"-substitution - replacement for thinAir.
Notepad++ can be a part-time replacement and is useable to write a script once in a while. Macros and an arsenal of text-editing features make it a great tool to substitue features that are not functional in current version of thinAir.
(But: Notepad++ can not sort by alphabet ignoring the case. So words/lines starting lowCase "a" will follow UCase "Z" Also you should be aware of this behaviour when ordering keywords for Autocomplete.xml It must be sorted this way- else it will not work. To edit for
thinBasic itself it needs rarely sorted lines, and if you need -> store text to clipboard or save it and put filename on the clipboard and check the clipboard from your thinBasic-sorting-function. NPP has issues when it comes to passed parameters and before i've found out the cause and how to avoid issues notepad++ itself suggested to create a macro and use the clipboard)
2 other Editors above really could be a base for a full functional, all requirements covering Editor to work with thinBasic-scripts.
For me these are a point to start from to have an Editor that might handle besides thinBasic all the common files as Ini- or configuration-files, Registry, Commandline + batch , XML and RegEx- and at the same time it were possible to use the same editor for all included languages as we have Oxygen and Assembler or to code Freebasic-to be compiled-Sections.
SynWirte and RJ Textedit were capable to contain the additional highlighter and codetips if available.
RJ's Editor is smart enough to handle expressions of more than 1 literal word Like "Array Extract|Array Join|Array Scan|Array Shuffle|Array Sum|..." to become a keyword if both words together. You can leave a space inbetween
(i think there's no RegEx required here to set a count of optional $SPC or $TAB that were possible too)
Synwrite for sure can according to
USES "Console", "UI"
USES "TBGL" load the required keywords separate. It can switch to freebasic if the parser hits "#Compiled" and back to thinBasic again on "#EndCompiled".
If we agree to use #Region "Language={O2Basic|O2Asm|Freebasic...}" then it will return to thinBasic-highlighting on "#EndRegion". anyway the one who creates the lexer or configures the editor will make the rules.
The easier to understand these rules- the better chances if thinking "durable addon"
Since i am still not finished configuring all required features with a satisfying result within NPP, i will not come up with some already finished configurations for the other 2 editors that survived the extinction on my harddrive. As many features can be added one by one there is the option to provide lexer-files, code-highlighting, codetree etc. in separate addOn-packages and we could dedicate a thread for each useable editor that supplies some feature-files. Important only to tell users exactly how to implement/where to store these files.
If you - reader - configure some editor and its that you have separate files containing the configuration, me and a few others i guess will be thankful if you show us what you got or what you expect to find within an editor that is used to write thinBasic-scripts with. Let us know how you imagine it has to be. Overtake and go into leading position.
If it is like notepad++ where some features have to be added to already existing files (as functionlist.xml or context-menu, main-menu)
try to make it injectable for the current as well as for upcoming new versions of the editor.
DirectuX
29-05-2020, 23:53
replacement for thinAir
Please, to begin with, what for ?
ReneMiner
31-05-2020, 23:42
Guess thats a misunderstanding. I meant Not to have some half-functional substitution to replcace thinair. Mostly for me a reason to Look Out for some Editor ist because i heard /read that scintilla - which is the Base of thinair is Not as user-friendly and was Not finished until now. And this Editor Lacks Functions for search/replace. No regex whichis pretty important when porting Code from other languages. No macro-recoder, No autosave and the worst.: Not running stabile and scite is Not capable to handle complexity of thinBasic-language nor the amount of thinbasic-keyword-expressions. The scintilla-control itself seems useful but scite would never be my first choice. Thats mainly the reasons to Look for alternative editors to Code thinBasic. Not to replace thinAir but to substitute still Missing Features.
DirectuX
01-06-2020, 23:47
Guess thats a misunderstanding. I meant Not to have some half-functional substitution to replcace thinair. Mostly for me a reason to Look Out for some Editor ist because i heard /read that scintilla - which is the Base of thinair is Not as user-friendly and was Not finished until now. And this Editor Lacks Functions for search/replace. No regex whichis pretty important when porting Code from other languages. No macro-recoder, No autosave and the worst.: Not running stabile and scite is Not capable to handle complexity of thinBasic-language nor the amount of thinbasic-keyword-expressions. The scintilla-control itself seems useful but scite would never be my first choice. Thats mainly the reasons to Look for alternative editors to Code thinBasic. Not to replace thinAir but to substitute still Missing Features.
At least upon documentation, I didn't agree on the missing feature in bold.
The scintilla-control itself seems useful but scite would never be my first choice. Thats mainly the reasons to Look for alternative editors to Code thinBasic. Not to replace thinAir but to substitute still Missing Features.
You mean to replace scintilla by something else in thinAIR code ? <-- that's the misunderstanding.
ReneMiner
02-06-2020, 12:49
Not really. Maybe you do not differ: Scintilla is the brand, the developers.
They have a control alike a tuned up RichTextField.
That control is the main-element of SciTE (Scintilla Text Editor) which comes with a predefined window and plenty of functions but this Editor is imo mostly a HTML-Editor already. It's very difficult to add things that the creators of scite did not concern things as keyword-expressions consisting of more than 1 keyword (Array Scan..) not to mention 3 or more keywords (Control Add Button...) and that we have no Tags as <start-Tag> ...</end-Tag>
nor class-embracements like C++/C# or java have where the body of a class or function is between { and }.
So they cut down little by little of the functions and possibilities that the "scintilla textbox control" offers.
Scite comes with lua as embedded scripting language and i find it quite difficult to use another language then the targeted one to edit (here thinBasic)- especially it should be configurable and customizable by thinbasic-users and for me it's a question of style and convincement about the languages integrity that we as users customize a thinBasic-code-editor only using thinBasic-language and its modules. The Editors foundation must be the library it would be built with if we would use thinBasic to create the editor. Obviously it has to be UI-Module empowered by thinCore and it must contain additional modules as OS and Tokenizer etc.
So we should have the scintilla-control wrapped as a thinBasic-module alike "UIAdv" depending on "UI" and containing either own derived functions of OS and tokenizer or reference these modules internally when we write:
Uses "Scintilla".
They do not offer scintilla.dll as a download separate any more -i know it was available in the past but i was not able to find it - except versions from around 2010 and older (i think i saw it in powerbasic-forum) .
i could not find a hint yet how to get the control without the burden of scite.
Petr Schreiber
02-06-2020, 20:15
Hi Rene,
the alpha version of thinAir definitely has stability issues, we are working on it. However - it is something not unusual for release rated as alpha/beta. I definitely want stable thinAir for stable thinBASIC release.
As for Search/Replace, it is available - Ctrl + R, am I missing something?
The editor will get better in 1.11.7.0, but we are currently a bit flooded with Eros at work, that is all.
Currently, the fixed issues we have implemented and you can look forward for next alpha release is (spoilers ahead):
- fixed temporary execution of scripts via Shift+F5
- right click context action for #includedir
- uncomment out missing the first selected line
- better reporting of missing files (not msgbox for each missing file, but one aggregated message)
- process monitoring mixed /\
- better tooltip for UDTs
- hopefully better version of confusing >>>> indicator
...and hopefully more. As you can see, we take issue solving seriously, and focus on stability a lot.
My personal opinion on Scintilla is - it is good, has good documentation. I think we just scratched the surface of possibilities. I think we will manage to improve its use a lot, Eros is of great help explaining how it works.
All we need is a free evening here and there, to keep improving it. With this tiny time dotation, doing a complete rewrite would halt the development completely - at this time. That does not mean we are not checking the alternatives.
In such situations the thing which makes sense is to open the development and that is exactly what Eros did, allowing me to help with thinAir. I am amazed how much work he did on it, and I hope to be of some help.
Petr
ReneMiner
24-06-2020, 19:51
am using it for quite a while already . First i thought maybe my windows is buggy but since weeks - morethan a month or so i have win10 pro installed . system completely renewed. Thinair crashes faster then it loads.
Its only a bit lexer (not full autocomplete ) but syntax highlighting and also loading other stuff as xml or ini and batch-stuff. So i have 2 parsers thinbasic and standard wich highlights also diskpart and bcdedit, cmd & batch & registry- all in one with a bit basic-basic.
I know it could be better- the functionlist does not do like i want but at least lists the functions.
Only the code "Function" must not start after a full line comment what usually is done to seperate
some code-parts. And it should start in the first column.
The functionlist i had a bit ... not better... it was listing also const and controlID and it was possible to expand these to see every single equate... TWICE! bit funny but if not that what else will life offer for free?
I only have a theme with a dark background and bright font - see image - look the style-menu where
to select the theme with predefined high contrast for few other languages also. Just look where i made the circles in that image. And the zip contains folders that tell you in what folders those things go. If no folder (as Function-List) it goes right besides notepad++.exe.
Recommend to backup your functionlist - maybe you dont like mine or you have to merge it in parts with some other... just in case.
Theres portable as well as full installation of npp. So depends where you have it i think if installed its somewhere at username\appdata\local|roaming in that area...
ReneMiner
24-06-2020, 20:31
A really very good Editor - even worth to pay 40€ for it - thats what they ask and thats a great offer-
HIPPO-EDIT (https://wiki.hippoedit.com/start)
What is so good about it? if you had seen the many different lexers and wordlists and oh my god - sometimes very poooor regex then you will see instantly.
Very far in front: detects combination of multiple keywords without parenthesis as in tB Array Scan or control Add Button etc. The functionlist-tree: what a hell in notepad++! There you just name it label, assign a keyword , add some information or reminders - easy as eating cookies. But as said it is not for free. You can earn yourself a license by providing some resources as drawings or translations.
Codeblocks to predefine as simple as drawing a line, makros , plenty of spaces to integrate tools. Very good documentation and barely needed by all those goodies: a sophisticated regex-flavor and scripting built-in. Sadly its not one that can be free provided but its worth a look - to get an idea how simple approaches sometimes can solve problems that seem to be impossible to solve in some other "untools".
Risk a look ifyou like- it has a full functional but time-limited trial-version.
zlatkoAB
25-06-2020, 09:10
40euro...ok but i don't see anything ultra better than in others
zlatkoAB
25-06-2020, 09:14
My personal opinion on Scintilla is - it is good, has good documentation.
Yes Petr it is good ,,but not every version, i recently have stupid problems with 3.7.4.0 version then i switched back to
3.1.0.0 for my own editor
ReneMiner
25-06-2020, 19:21
40euro...ok but i don't see anything ultra better than in others
try to configure it... then you will know. Before i ever touch scintilla again i would pay
zlatkoAB
27-06-2020, 21:47
well i simply don't need this advanced features of any IDE or editor ,so that i why i made my own for work with Oxygen basic
yeah it is not powerful but for me and for i am doing is good enough.
ReneMiner
02-07-2020, 15:21
I think if thinBasic.dll were not(pre) COM- piled...
- many words giving IT a multiple meaning - If it were Not COM -fix- so previously COM-compiled thinBasic could easily outlever and replace vbscript and Powershell and the MS command-line AS Well.
And it ist certainly 150% compatible to what the ancient Windows Script Host requires. Ancient peace of non-.net-managed windows Heart that could Open a tiny gate not only to embed thinbasic
within that Code-Editor but as well as it ist able to learn faster and more targeting its own evolution to become better it would certainly pick the language that gives it the most direct control. Windows 2030 shall already get programmed by the previous Windows Version only. And it collects Data already for that purpose. Every time your PC asks If it shall Report a Problem to Microsoft it gathers a little experience again...
:D
Seriously someone who has an Idea how could kick the "visual Out of its own Studio" and Take Control over IT. Secretly. While IT evaluates IT were using a Tool its being used by that tool
I just tried VS Code successfully.
1. Set the syntax highlighting to VB for extensions like "*.tbasic", "*.inc", "*.unit".
2. There is an extension for vs code called code-runner. Install it.
3. code-runner had a option named "executorMapByFileExtension". Set it like this.
.tbasic" : "C:\\thinBasic\\thinBasic.exe" $fileName
Now, you have syntax highlighting and code running in vs code.
Problems.
. All VB keywords are highlighted. Keywords like "Uses", "EndIf" will be displayed in normal color.
Here is my screen shot.
ReneMiner
27-04-2021, 20:04
It looks good at least... I played the vs code also, dis-assembled it with an axe and chopped it to small pieces to find the point where i could hook thinBasic. VS Code - obviously is the code editor shipped with visual studio and there are plenty of extensions that remove the managed-.net-language which has nothing to do with basic. IMO except Smallbasic microsoft has not published any language that could be named basic since 1998.
Anyway there are so many as typescript, lua, vbscript to name a few that are embedded in a way the core-commands of .net-language are completely useless and its only those widepages.filling.long.and.verbose.dot-separated.snake.usedto.access.stuff.as.System.FileIO.Collections.FileWhateverthingsclass.ofthedirectoryinfoqueryinformationsclassrepositoryobject=iUnknown that still remain -
i am certain the WSH can be used to open the door for thinbasic to jump into and be the language used to perform the reaction on the events that are fired -independent from any language- against the window- and control-objects to invoke the execution of a function or sub by tossing that -what we decode in a callback-function from 10 long variables and in some cases from a notifications-udt- is thrown as some event and eventargs named parameters into a function where one of those half-languages will try to filter bugs and handle exceptions over anything else. the language is that weak that it would not run without a human supervisor who compiles and starts it.
Thats why its called "managed" code:
the code needs a manager who will schedule when the code must run and who will be there to show himself responsible and can be blamed eventually for the insufficience because he just did not trap enough errors. Being stupid is not the languages fault at all
To say it in italian:
microsofte have a maserati in the garage that never gets to drive unlimited from the own machina but gets pulled on a rope by a 125' fiat that has all flat tires
The reason I wanted to switch to a new IDE is,
1. When I scroll up & down with the laptop's touchpad, it scrolls horizontally.
2. If I change the editor font, It won't save that change. I edited the INI file and wrote my font name. But no luck.
3. Intellisense is poor.
So for these reasons, I first tried in Sublime Text. It's more faster than VS Code. But I couldn't find any option to change the syntax highlighting permanently. It wants me to change the syntax highlighting each time I open the file. (Just like RJTextEd)
After ST3, I choose VS Code and it worked like a charm.
ReneMiner
29-04-2021, 09:17
...
... If I change the editor font, It won't save that change. I edited the INI file and wrote my font name. But no luck.
...
in Thinair_ Its construction site. You can no more use the old ini but pick a theme - kind of xml-files
right-click into the editor window to (re-)load a theme. turn of codetips and avoid the mouse to point on the code- sometimes needs hours until thinair becomes responsive again while its trying to figure which of the keywords where its inbetween it is supposed to open in hel. Mostly chooses completely wrong help file . not even #Compiled nor #Endcompiled within my code. I wondered why it was always trying to open freebasic help when i do not use freebasic. Anyway i did change something and have no more files in the thinBasic-help-subdir which is already a big relief since its not loading and opening helpfiles by iteself.
For the spellchecking / especially syntax-checking i dont know. i tried already to remove all files from thinairs syntax subdir to avoid that it gets stuck while i am not finished typing seems it localizes a bug in that what i just wrote and then... remains in this state.
I returned to use synwrite. its after all the best alternative even its no more developed. You could as well look for cuda-editor which is the project that the author of synwrite prefered to develop - but to be honest, synwrite may have a few bugs but as cuda is still maintained - the lexers can be used from cuda in synwrite or vice versa - even languages that did not exist when synwrite was developed are available through cuda. And i've found something that you will not believe.
I place a few links here somehow all have some syn- syn - syntax related ah, just look.
Very interesting: you can use any of them - even the syntax editors are quite a bit different - one of them has really good explanation and ... with that syntax editor sdk and all those different projects
i did not link cuda here did i? In case you need a lexer ...
autohotkey i would recommend and the AutoGUI: ressource hacker was yesterday.
Today we clone complete IDEs
Use the AutoGUI-clone window-function and create a copy of --- a window?
yes yes, go ahead just try...clone your editor :D
some materials look around - there's plenty.
surprise surprise (http://www.exontrol.com/exedit.jsp)#1 (http://www.econtrol.ru/syntedit.html)
cypr~ise no pyccku #2 (https://www.download3k.ru/Install-EControl-Syntax-Editor.html)
what the hell is synedit? (https://github.com/TurboPack/SynEdit)
now its getting confusing.another synedit-project...
the tiny letter t makes a difference (https://www.openhub.net/p/synedit)?
obviously... they can not remain in one place... (https://sourceforge.net/projects/synedit/)
unicode? Certainly. the old highliter is a lightweight (http://web.archive.org/web/20090610040212/http://www.delphist.com:80/UniHighlighter.html) compared to the newer ones.
It does not have the burdens. Its faster than anything that came after it.
ThinBasic will always be 32Bit WinAPI compatible but for development that shall run on all machines
using a x64 makes sense.
Just dont only pick the x64-downloads- get the x86 as well if available
a bit
we are out of control? (https://yunqa.de/delphi/products/tntunicodecontrols/index) Only get the zip 2.3.0. here...
if these are registered (regsvr32 /i full\path\file.ext) to the system
>>> autogui-clone-utility might learn a few more spells ...
required classnames watch it: case sensitive!t
a few more nuts and bolts...
oh - aint that..???...yes it is (http://www.exontrol.com/exedit.jsp) check for the activeX/com - if your system is x64 then get both
x86 and x64. if not, get both also and strive for a new machine soon
what for? check UIAdv and UI samples for a Webbrowser-utility... makes the editor scripteable and
integrates help-files directly into the editor.
Btw. Webview2-control (based on chromium edge) is available also at microsoft. If you like it more than the control based on IE you would pull its teeth in the registry to avoid Bing and add
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Search]
"BingSearchEnabled"=Dword:0x00000000
so it will not repeatedly open the internet if supposed to search inside of local help-materials
Will not succeed without the advice of Nir Sofer, (https://www.nirsoft.net/vb/classfile.html) this is the clue - or the glue ?
- the dirt that is to dig before some nuggets can appear.
Now have fun with your new scripteable high-performance coding-editor kit
Synwrite is a good base although a few features are not enabled.
look for textfiles anywhere in synwrite's subfolders
watch for words as "hidden" or "secret".
here you can get some idea - its great cow basic integrated to what was synwrite previously. (https://sourceforge.net/p/gcbasic/discussion/629990/thread/02712ddc/) Not a language to type but drag and drop symbols together to something like flowcharts. The perfect example to display the nonsense:
Synwrite is a texteditor... the code of gcb is created through drag & drop of icons... do you get it?
In VSCode i have the problem its using wide-string that means that i pass my code to thincore like
t.h.i.s . w.e.r.e . s.o.m.e . c.o.d.e. dots are the hi byte / low byte is first
put an array of words upon it then it were this:
t.
h.
i.
s.
.
w.
e.
r.
e.
.
s.
o.
m.
e.
.
c.
o.
d.
e.
that looks as a byte-array with 2 dimensions.... how could thincore filter so it uses only the half of the script?
Its pretty annoying having to convert it always and if i forget to ... probably best to create a shortcut and pass the filename to it.
a small script will parse the script for included files and create copies of them with an extension as tb8, tb8C, tb8I, tb8U or .in8 and replaces the "asic" with 8, save it to ascii/utf8 and delegate the call further to thinBasic.exe to run them...
Maybe Eros finds a way to let thinBasic.exe check if a script uses 1, 2 or 4 bytes per char and let it load only the necessary 25% or 50%
by making it a 2-dimesional byte-array, i e.
BpC (Bytes per Char )
cocs (count of chars) =lenf(scriptcontent)/BpC
dim bChar(BPC, cocs) : the script were only bchar(1,1) to bChar(1, cocs) - i guess it would not even need to save it...
ReneMiner
19-07-2021, 07:43
I was very astonished yesterday when i checked out UltraEditStudio. https://www.ultraedit.com/
Not astonished about i had fallen for another peace of trialware once more nor that it is a texteditor with htm-abilities that promises to handle all of my tasks i may have on github - where i still not have understood how it works- all i ever downlad there are zip-files that contain lots of clutter but except for petr's Ebook about udts and relax - some independent compiler that evolutes its very own programming language - i never was able to download anything that let me do more than unzip it.
However this UEStudio looked ok from screenshot - i was searching for some GUI-design software - and i did not see it were a trial since on the other site it was labelled "free software" i downloaded and started to check it out. Very nice startup showed me as first the 6 major settings to apply and it was really easy to configure and to check out all the options and possibilities it offers, natural feeling without much reading where the limits are- it has integrated hundreds of languages and filetypes but lets you define at most 10 filetypes only.
Not a trial-limit though... and when i had to check/ uncheck languages that i would want to use it for i was confronted with a list that seemed not to have an end. And when the end was near i was surprised since i was convinced that i had to build some lexer and add some keyword-lists in order to use it for thinBasic. But: it was there already! Actually the first time i've found an editor that is able to highlight syntax and offers code-tips for thinBasic without the need to configure it.
(exception was the "Context"-editor once - that came with thinBasic too - i think Petr made the syntax-files for that like 15 years ago and context-developement was stopped around 10 years ago. Anyway i did not find the thinbasic-files for context before i was done creating these myself because the shipped lexer-files were hidden in some archive and there were no docs to it.)
So for the lazy or lack of time users - try for free if it fits your needs and maybe it's exactly the Editor made for you - or the editor that gives you the ideas that let you start to develop your own. It's worthy to have a look at it. If its worthy your money remains your decision.