Skip to content
Sign UpLog In
This post is read-only. Explore Repls and connect with other creators on Community.View Community
The info in this post might be out of date, check out our docs instead. View docs
4

Best way to make an advanced text editor?

maxina
maxina

So editors/ides like vs code, vim, sublime etc. What are the best languages/guis/technologies for making an advanced text editor?

2 years ago

Voters

Comments

TopNew
1
RYANTADIPARTHI
RYANTADIPARTHI

i think html, js, and css are the best language to make one. As a helper, here's a link on how to make a good one.

https://www.thatsoftwaredude.com/content/8912/create-a-basic-text-editor-in-javascript

2 years ago
1
maxina
maxina

@RYANTADIPARTHI
Well I don't really want it to be in the browser and JavaScript isn't too fast for big files

2 years ago
1
RYANTADIPARTHI
RYANTADIPARTHI

@maxina
well, you can also use python, or C. Maybe even java. Those are good too.

2 years ago
1
maxina
maxina

@RYANTADIPARTHI
I want a GUI that will give me a lot of control over the text box

2 years ago
1
RYANTADIPARTHI
RYANTADIPARTHI

@maxina
you can use styling for that. Css identifier. like an id or class. Choose width, and height.

2 years ago
1
maxina
maxina

@RYANTADIPARTHI
So you can set the location of the mouse in the textbox like the line and column?

2 years ago
1
RYANTADIPARTHI
RYANTADIPARTHI

@maxina
it comes automatically if oyu are using the right tools.
In js, position of mouse and all comes automatically.

2 years ago
1
maxina
maxina

@RYANTADIPARTHI
Like I want there to be key binds that the user can use and set the cursor mark somewhere else in the text

2 years ago
1
RYANTADIPARTHI
RYANTADIPARTHI

@maxina
yes, comes normally. If it doesn't, ping me again.

2 years ago
1
maxina
maxina

@RYANTADIPARTHI
What do you mean by it comes normally?

2 years ago
1
RYANTADIPARTHI
RYANTADIPARTHI

@maxina
i meant in js, you usually get links for the first step. In that process, the cursor, and all comes normally.

2 years ago
1
CHRISTIANMATTHY
CHRISTIANMATTHY

I've made a Vim-like text editor (cough https://replit.com/@CHRISTIANMATTHY/pybless ), and it is a pain, but I used python and Curses. It is nice to use, I am just usually dumb tho

2 years ago
1
maxina
maxina

@CHRISTIANMATTHY
I don't understand how to use it I just see a blank screen in replit.com and when I run it on my computer it says "AttributeError: 'NoneType' object has no attribute 'fileno'".

2 years ago
1
CHRISTIANMATTHY
CHRISTIANMATTHY

@maxina
I would use it on repl.it, and read the readme

2 years ago
1
CHRISTIANMATTHY
CHRISTIANMATTHY

@maxina
I posted the wrong one too, whoops

2 years ago
1
maxina
maxina

@CHRISTIANMATTHY
OOHHh I see it now wow that's so cool! I was trying to use that module on my computer and I kept getting errors though, any idea why?

2 years ago
1
CHRISTIANMATTHY
CHRISTIANMATTHY

On Windows, you need to pip install windows-curses and remove the window resizing part.

@maxina

2 years ago
1
maxina
maxina

@CHRISTIANMATTHY
oh do I need to run it in command prompt?

2 years ago
1
maxina
maxina

@CHRISTIANMATTHY
oh ok I got it running in my ubuntu terminal and it's less laggy than in replit.com. Very cool!

2 years ago
1
Nicolaijeddfj
Nicolaijeddfj

please help me i am under the wataaaaaa

2 years ago
1
Wumi4
Wumi4

If you want to create a CLI text editor (like Vim) then I think a system language (like C) fits the most. Here is a really good tutorial if you want to build one: https://viewsourcecode.org/snaptoken/kilo/

2 years ago
1
xxpertHacker
xxpertHacker

Well, I'll tell you, to start, any language that has immutable strings will have garbage performance. Ex: JavaScript, Java, Python, etc. Find and replace operations are slow without mutable strings. Then again, they're just slow in general.

2 years ago
1
maxina
maxina

@xxpertHacker
So I shouldn't use any of those?

2 years ago
1
xxpertHacker
xxpertHacker

@maxina
You can, but when operating with large amounts of data, the performance will drop, unless you're using weird techniques to optimize everything, and even then it might be unpredictable.

But it's all your choice ¯\_(ツ)_/¯

Sublime was written in C++ and Python.
VSC was written in JS (iirc), and it can easily become sluggish with a good sized workload.

2 years ago
1
maxina
maxina

@xxpertHacker
Ok do you knows any GUIs I should use?

2 years ago
1
xxpertHacker
xxpertHacker

@maxina
Nope, but I agree with what SixBeebs had said, that's the most important part.

Depends on the language you're using though.

2 years ago
1
SixBeeps
SixBeeps

I've heard of IDEs being written in Electron and React before, but really any language with a GUI framework should be fine. Heck, you could even do it in browser

2 years ago
1
maxina
maxina

@SixBeeps
Well I tried using Tkinter, but it is pretty limited

2 years ago
1
maxina
maxina

@SixBeeps
I wanna build a Vim sort of editor

2 years ago
Load more