flat assembler
Message board for the users of flat assembler.

Index > Projects and Ideas > Thoughts about the next source editor component

Author
Thread Post new topic Reply to topic
JohnFound



Joined: 16 Jun 2003
Posts: 3499
Location: Bulgaria
JohnFound 07 Apr 2011, 20:50
As the work on FreshLib progress, I begin to think about the new Fresh source editor. It is key component for the next step - portable Fresh IDE, so I want to consider and design it carefully before starting to write the code.
Note, I am talking here, about the "editor" as a component, not as a program. The features of the IDE are subject of another discussion (probably very long).

What features the editor component should provide:

1. Should be able to interpret some special parts of the text and to display and edit them visually (for example bitmap defined as "db" of "file" directives is displayed as an image in the editor and can be edited in place)
This functionality should be provided through plug-in interface that to allow arbitrary data format to be supported. Actually all "visual programming" will be provided this way - forms, menus, pictures etc.
Of course, in any moment the user should be able to switch to "source" view and to edit the source manually.

2. Besides of colors and fonts customizations, it should support customization of the keyboard shortcuts.

3. Should support some plug-in interface that to allow processing of the text from external add-ons. For example - searching in the text will be implemented through external search tool.

4. Should support multiply syntax highlighters for different languages.

5. One interesting feature, that allows use of proportional fonts for programming: elastic tabstops. As long as the assembly is "column based language" this feature could be really useful, even with mono spaced fonts. What you think about it?

6. ... suggest what you think the editor component should be able to do...
Post 07 Apr 2011, 20:50
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 6115
Location: Poland
MHajduk 08 Apr 2011, 11:28
Does the Fresh support the UTF-8 encoded source files? I didn't notice this feature when I had this IDE installed about a month or two ago.

I'd like to have such an opportunity. Smile The best solution I've found till now is PSPad which allows me to edit fasm source files containing strings in a few languages.
Post 08 Apr 2011, 11:28
View user's profile Send private message Visit poster's website Reply with quote
JohnFound



Joined: 16 Jun 2003
Posts: 3499
Location: Bulgaria
JohnFound 08 Apr 2011, 12:45
Yes, I simply forgot to enumerate it in the first post. Wink (Actually FreshLib uses UTF-8 as internal string format.)

6. Should process UTF-8 encoded source files.

7. ....
Post 08 Apr 2011, 12:45
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8356
Location: Kraków, Poland
Tomasz Grysztar 08 Apr 2011, 12:52
"Elastic tabstops" is a really great idea. fasm's edit control uses the "smart tabs" technique derived frm DOS Navigator because of the limitations of DOS format I wanted to follow; but for modern edit control the elastic tabstops look like a must-have. Smile

Especially since fixed-width fonts and full Unicode support do not really pair well in the general case, IMO.
That makes me wonder: how should one deal with elastic tabstops in mixed RTL/LTR text? I never thought about this one before.
Post 08 Apr 2011, 12:52
View user's profile Send private message Visit poster's website Reply with quote
JohnFound



Joined: 16 Jun 2003
Posts: 3499
Location: Bulgaria
JohnFound 08 Apr 2011, 13:31
Tomasz Grysztar wrote:
"Elastic tabstops" is a really great idea.

I like it very much. But there is something not very proper with the presented algorithm implementation.
I tried to type some FASM code, but the result was far from ideal. The main problem is that the empty lines breaks the column size and as a whole the source code ends separated in blocks with different column sizes.
IMHO, the algorithm needs some adaptation to assembly language syntax.
Post 08 Apr 2011, 13:31
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
Teehee



Joined: 05 Aug 2009
Posts: 570
Location: Brazil
Teehee 11 Apr 2011, 19:08
7. highlight all references of the current selected word.

You can see it in notepad++. I like this feature.

_________________
Sorry if bad english.
Post 11 Apr 2011, 19:08
View user's profile Send private message Reply with quote
JohnFound



Joined: 16 Jun 2003
Posts: 3499
Location: Bulgaria
JohnFound 29 Apr 2011, 21:47
The work on FreshEdit is in progress now. Here you can see one of the first screen shots.
At the front is the test application in ELF format, running in Ubuntu Linux.
At the back - the same application compiled to EXE and running in Win32.
The loaded file is UTF8 encoded.
The Unicode font is "Fixedsys Excelsior 3.01".

The FreshEdit component is fully portable. It does not contains any OS dependent code, besides of FreshLib library.
Actually I am little bit surprised how easy is to create portable assembly code with FreshLib. Twisted Evil

The work continues. The next goal is to make syntax highlighter interface that to works for any language syntax.


Description:
Filesize: 15.98 KB
Viewed: 10898 Time(s)

FreshEdit.gif


Post 29 Apr 2011, 21:47
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.