I’m getting back into coding and I’m going to start with python but I wanted to see what are some good IDEs to write the code. Thanks in advance.

41 points

Codium. It’s VSCode without the proprietary stuff

permalink
report
reply
16 points

Beat me to it mate.

Here is the link. https://vscodium.com/

permalink
report
parent
reply
6 points

Also Eclipse Theia, it has the same interface and functionality and it is compatible with most VSCode extensions (probably over 98% of them?).

permalink
report
parent
reply
3 points

I find codium is pretty great overall. It’s become my daily driver now.

permalink
report
parent
reply
1 point
*
Deleted by creator
permalink
report
parent
reply
1 point
*

Nevermind @slazer2au@lemmy.world answered it.

permalink
report
parent
reply
33 points
*

My husband, who mostly codes in assembly these days (he’s mostly retired so his hobby is old atari, amstrad, and spectrum computers), went from VSCode, to Sublime, to now Kate. He prefers to use 100% open source apps, without strings attached. VSCode is nice, but it has lots of weird stuff in it that aren’t necessarily up to the spirit of open source. So Kate works perfectly for him, although VSCodium would do well as well (it’s just that Kate has better syntax highlighters for his weird assembly). Also VSCode/ium is using about 250 MB of RAM, while Kate about 45 (and Sublime only about 32).

permalink
report
reply
26 points

(he’s mostly retired so his hobby is old atari, amstrad, and spectrum computers)

Your husband is an absolute legend.

permalink
report
parent
reply
2 points

without strings attached

How does he read??

permalink
report
parent
reply
27 points

Vim/neovim

permalink
report
reply
17 points

I’d suggest going with LazyVIM / SpaceVIM as a starting point, though, as configuring vim from blank state is an art itself and requires quite some time and dedication.

permalink
report
parent
reply
6 points

starting off with nothing but vim/nvim really isn’t bad

permalink
report
parent
reply
1 point

I still have no understanding of how to do literally anything in vim, I couldn’t even close out lol.

permalink
report
parent
reply
1 point

configuring vim from blank state is an art itself and requires quite some time and dedication.

Not really sure where you got this from. It’s quite simple to me. The default vim config works completely fine for me if I’m eg in a VM and I don’t want to copy all my vimrc and plugins over, if it’s a machine I’ll be using more long-term then it’s quite quick to configure a few settings to be how I prefer them to be. Main changes I make to a default config is enabling line numbers (idk anyone who wouldn’t want line numbers tbh) and setting them to be relative, set scrolloff=9999, use 4 spaces for indent, enable line and column highlighting, set a theme, and a couple odd scripts, but again the default is perfectly usable and the tweaks in my vimrc are just to my personal taste.

permalink
report
parent
reply
1 point

+1 for LazyVim

permalink
report
parent
reply
17 points

I use Helix. It’s kinda like a preconfigured Neovim. I really like it, my only complaint is that it (currently) doesn’t have a filetree

permalink
report
reply
5 points

Seconded. I’m coming from Emacs (+evil), so I’m still missing a few features (proper git integration a-la magit, collaborative editing a-la crdt.el, remote editing a-la tramp). However what is already there works way better/faster/more consistent than any other editor IMHO, and I’ve tried neovim with plugins too. I particularly enjoy the ability to traverse the AST rather than text (Alt+l/p/o/i by default, but I have it remapped to Alt+h/j/k/l). Really looking forward to https://github.com/helix-editor/helix/pull/8675, I’ll probably write a couple plugins if this ever lands.

permalink
report
parent
reply
1 point

You can already do so incredibly much by hooking up a few extra LSPs and keybinds (calling external scripts/programs)!

What I’m personally still missing though:

  • Code Folding
  • More refined subprocess handling, i.e. term-buffer switching or floating term (when excuting gitui via keybind for example)
  • Emacs Org-Mode like context aware styling, for i.e. Bold or Italic text hints from LSP
    • Font changes (restricted through terminal)
    • Different Font/Line sizes for i.e. headings (restricted through terminal)
    • Inline images (sixel!)
  • Dedicated optional client, a-la Neovide with cursor animations (helps orientation with jumps etc.), and to alleviate the previous terminal restrictions
permalink
report
parent
reply
1 point

You can already do so incredibly much by hooking up a few extra LSPs and keybinds (calling external scripts/programs)!

Yes, agreed. But I would still love some git integration that can’t be emulated like this. For now git cli + lazygit for more easier refinement works fine, but it’s not ideal.

Emacs Org-Mode like context aware styling, for i.e. Bold or Italic text hints from LSP

Hmm, isn’t this already the case for, like, markdown? Or what do you mean by context-aware?

permalink
report
parent
reply
4 points

I use Yazi and its amazing. Here’s their docs on how to set it up as a file picker in helix.

https://yazi-rs.github.io/docs/tips/#helix-with-zellij

permalink
report
parent
reply
1 point

I wanted to try to use this with yazi, to get the file picker without having to rely on zellij (or any other terminal multiplexer)…

https://www.youtube.com/watch?v=X9_z_gynvmM

permalink
report
parent
reply
3 points

Same here

permalink
report
parent
reply
1 point

I came to the conclusion that a fuzzy finder (SPC-f) + goto definition (g-d)/implementation (g-i) is better than a filetree in all my usecases…

permalink
report
parent
reply
15 points
*

I really like Kate as an advanced editor with syntax highlighting, auto-completion, plugin support. I would then use the Terminal pane at the bottom to run my code during development.

However, if you want a full IDE with included dependency management, test runner, and debugger it’s probably not enough.

One of my professors said you don’t need an IDE, the Linux system already is a development environment. Not sure that I fully agree with that, especially thinking of things like Android Studio that include the virtual machine smartphone, but it’s still an approach thing that is worth trying out.

permalink
report
reply
5 points

Nobody needs an IDE. After all, you can just open a blank file and get straight to work. I could also just use Linux without a DE. Who needs all those graphics, amirite? I could also use a can with some string instead of a phone—or better yet, just shout really loud!

(/j)

permalink
report
parent
reply
1 point

use Linux without a DE. […] (/j)

… actually (tip fedora hat) not but seriously actually most of what we NEED is fine that way. It sounds ludicrous then you try Sxmo on a phone and you can’t help but GENUINELY wonder “Damn… did I get scammed all those years?”

permalink
report
parent
reply
2 points

One of my professors said you don’t need an IDE, the Linux system already is a development environment.

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be. But I think part of the appeal of an IDE is how all the parts integrate (the “I” in “IDE”) so a bunch of packages thrown together might not provide the same cohesive feeling.

permalink
report
parent
reply
4 points

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be.

I’d just like to interject for a moment…

permalink
report
parent
reply
2 points

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be.

Yeah I thought about the same thing when posting, if anything it would have to be the the combination of tools available on Linux. Like GNU binutils, GCC, GNU emacs, GDB, Git. But that’s how I remember him saying it. Either my memory is wrong, or he just wasn’t that precise in his language.

But I think part of the appeal of an IDE is how all the parts integrate (the “I” in “IDE”) so a bunch of packages thrown together might not provide the same cohesive feeling.

I agree, it may not be what you want if you’re looking for an IDE.

But, like me back then, if you’re new to the Linux ecosystem, it’s good to hear at least once that you don’t strictly need to look for an IDE. And that you can instead use disparate CLI tools together, to make for an experience that some people end up preferring.

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 6.8K

    Monthly active users

  • 6.8K

    Posts

  • 185K

    Comments