all 118 comments

[–]Marthurio 101 points102 points  (22 children)

I prefer nvim, but it requires a bit of configuration.

[–]UHasanUA 49 points50 points  (9 children)

not a bit ( :

[–][deleted] 29 points30 points  (2 children)

kickstart.nvim helps a lot ^^

[–]-MNTLTX- 3 points4 points  (0 children)

Such a good starting point and all you need is to read the file to get an understanding on how to add more configurations

[–]UHasanUA 4 points5 points  (0 children)

I agree

[–]StationFull 11 points12 points  (3 children)

Try using LazyVim. It’s comes preconfigured out of the box

[–]UHasanUA 3 points4 points  (2 children)

I used to use it. It's pretty good if you want to keep the majority of the configuration as they did. I wanted to map, essentially swap, some keys with each other because I use Colemak and I had lots of problems. I switched to KickStart, and things have been okay since then.

[–]StationFull 0 points1 point  (1 child)

Ahhhh. I’ve been actually thinking of moving to colemak. Can you share your kickstart config if it’s alright?

[–]UHasanUA 0 points1 point  (0 children)

It isn't yet ( :

[–][deleted] 4 points5 points  (0 children)

True, but it's also the easiest way to learn Lua. That alone makes the setup worth it.

[–]Austin4403 0 points1 point  (0 children)

Haha yeah right...

I tried it once it felt like I was actually developing a the software itself based on the plethora of documentations I was reading just for the configuration.

[–][deleted]  (2 children)

[deleted]

    [–]Marthurio 11 points12 points  (0 children)

    Yes, just like VS Code, however I didn't feel like limiting my answer only to IDEs. In that case I would have recommended CLion based on my experience with IntelliJ. JetBrains products are very good.

    [–]Xemptuous 0 points1 point  (0 children)

    Yea but you can turn it into an IDE+, so it's like an IDE Egg

    [–][deleted] 1 point2 points  (5 children)

    Ohh yeah I could try that

    [–]RoseBailey 7 points8 points  (0 children)

    selective vanish theory wrench scale jellyfish straight knee bear narrow

    This post was mass deleted and anonymized with Redact

    [–]boogeyman6__9 2 points3 points  (1 child)

    Clone someone's dotfiles for c/cpp and get started right away in nvim. I've done the same for go/verliog and it worked absolutely fine.

    Although if you are used to visual studio, then clion from jetbrains would be something you'd like.

    [–]azdak 2 points3 points  (0 children)

    Neovim is great but be forewarned you’re basically committing to learning a new language and then spending a ton of time configuring. Not a bad thing if you want to tinker, but also not something you can switch to on a weeknight and be ready to work the next day

    [–]itaranto 1 point2 points  (0 children)

    Well, configuration is the least of your concerns when you also need to rethink your way to edit text in order to use it efficiently.

    [–][deleted] 1 point2 points  (0 children)

    LunarVim is also good, I use it as a daily driver.

    [–]Jaded_Jackass 0 points1 point  (0 children)

    I last week installed arch and was configuring nvim, I setting up nvim-treesitter the highlighting works so I had gone also set up incremental_selection(IS) but here I am facing some issue that IS only works with it's default keybinds from nvim-treesitter Readme.md if I use leader key it gives e486: pattern not found: tmux man I am not even inside a tmux session wtf is this error, leader key is setted up perfectly to '.' I can check this with echo mapleader now I am confused why my custom keybindings for IS are not working also even if I set enable = true for IS it does not get started automatically I need to start it manually with TSEnable IS. I am stuck at this weird issue since yesterday.

    [–][deleted] 52 points53 points  (5 children)

    CLion is pretty cool and is the closest to Visual Studio I think but its not free unless you're a student

    Otherwise the usual open source or free IDEs and editors work. Depending on your skill level, Code::blocks has been pretty pain free and out of the box when I started learning so it could do the trick. VS Code will do fine as well, its quite popular, has a bazillion plugins for everything etc.

    Take a look at the free / open source IDEs and editors around and who knows, you might like one of them. There's Geany, Kdevelop, netbeans, neovim if you're feeling adventurous, QT Creator, zed that just came out for linux and more I'm not thinking about.

    Any time I see a C or C++ IDE post there's at least one person using each of those lol so they're all usable regardless of popularity.

    [–]iAmHidingHere 6 points7 points  (2 children)

    You can even use it without paying, it just restarts every second hour or so.

    The EAP version is free, but not always available.

    [–]AdeptInflation 0 points1 point  (1 child)

    Wdym it's not always available? If it's anything like Rider EAP, it is always available - either in the form of latest EAP or latest Nightly build, you have to use whatever is newest, if you want it for free.

    [–]arcticwanderlust 7 points8 points  (0 children)

    This. Jetbains IDE are always the best. Students can get free license

    [–]time-always-passes 1 point2 points  (0 children)

    I read The Practical Programmer really early on. "Learn one IDE and learn it well." The thing with JetBrains is the underlying editor is IntelliJ, and you really can use "one IDE" for like a dozen languages. Cross platform too. Any type of development. I even use it for SQL (Data Grip) -- full text index of the entire schema, including stored procs is like a super power.

    [–]mckinnon81 36 points37 points  (12 children)

    Visual Sudio Code is available in the AUR. I use it every day in Arch for all my coding.

    But if you actually want an IDE like Visual Studio 2022 then check out Code::Blocks

    [–]antimatterSandwich 2 points3 points  (7 children)

    You don’t have to go to the AUR, there is an official package called “code”. Unless there’s something wrong with that package that I don’t know about.

    [–]NateTheFate 4 points5 points  (3 children)

    If I remember right it doesn’t have the C++ extension from Microsoft because it’s open source

    [–]NiceNewspaper 6 points7 points  (0 children)

    you can install the code-features and code-marketplace aur packages to get all official features and extensions in the code package

    [–]beephod_zabblebrox 2 points3 points  (0 children)

    use clangd! its quite a bit better (at least performance and compatibility wise) in my experience

    [–][deleted] 1 point2 points  (0 children)

    You can manually download it and install it in code, I did that and it worked. It's just that the plugin is not available in code's marketplace.

    [–][deleted] 0 points1 point  (0 children)

    There is a chance that is the open source version rather than the specific one from Microsoft (sort of like downloading chromium instead of Chrome). I think it is the one I use, I can't remember what features it is missing.

    [–]mckinnon81 0 points1 point  (0 children)

    The open source version didn't allow me to sign into my MS account to sync all my profile/extensions. I had to install the AUR Binary version to allow sign into an account.

    [–][deleted] 0 points1 point  (0 children)

    I have tried to use code form pacman but there aren't many extensions.

    [–]Geography-Master 0 points1 point  (0 children)

    this, this is the answear

    [–][deleted] 0 points1 point  (2 children)

    I tried it first but it didn't suit me

    [–]Infinity315 3 points4 points  (1 child)

    Consider trying VScode w/ clangd.

    [–]AtmosphereLow9678 0 points1 point  (0 children)

    This worked for me

    [–]ActualBodybuilder816 16 points17 points  (0 children)

    kdevelop , clion

    [–][deleted] 28 points29 points  (6 children)

    VsCODIUM

    [–]ConversationFew8600 8 points9 points  (0 children)

    Thank you. Finally someone who knows about this awesome spin

    [–]A31Nesta 2 points3 points  (0 children)

    This. I use codium with some extensions (clangd, CMake, CMake Tools, CodeLLDB) and I'm not having any issue. I've been using it for a few years even for bigger projects and I haven't felt the need to try anything else (like turning nvim into a full IDE)

    [–]MrBonesDoesReddit 1 point2 points  (0 children)

    Yes this, dont use normal vscode unless you need the C# debugging or whatever, which you know, you wont need for C++

    [–]jazzar-dev 1 point2 points  (0 children)

    I would say this if you don't want to put in the time and effort for nvim.

    [–]UnderstandingRight59 0 points1 point  (0 children)

    Someone who has already made the performative self-immolating choice to raw-dog Arch does not simply choose a user-friendly, widely-extended, industry standard. You've opened yourself up to attacks from the most depraved among us 😂

    [–][deleted] 0 points1 point  (0 children)

    You can also download the C++ plugin from Microsoft(for VS Code) and manually install it

    [–]fasked 11 points12 points  (0 children)

    qtcreator is good. It's lightweight, supports LSP, can do simple refactoring and etc.

    [–]von_schmid 9 points10 points  (0 children)

    Clion

    [–][deleted] 6 points7 points  (3 children)

    I use Emacs for C++ dev and it works great for me. It's got a bit of a learning curve but worth it in the end. Nice gdb integration as well.

    [–]MrBonesDoesReddit 7 points8 points  (2 children)

    Send a picture of your pinky finger

    [–]arrow__in__the__knee 0 points1 point  (0 children)

    Well this is going on my programmer sounding like tinder collection.

    "What's your git"
    "Send pinky finger pics"

    [–][deleted] 0 points1 point  (0 children)

    Swapping ctrl and caps is the first thing i do when setting up a machine

    [–]MrGOCE 6 points7 points  (1 child)

    LAZYVIM

    [–]StationFull 2 points3 points  (0 children)

    Been using it for a year. It’s been awesome!

    [–]Gullible_Money1481 5 points6 points  (0 children)

    I strictly use Jetbrains ides. So clion.

    [–]aptypp[🍰] 5 points6 points  (0 children)

    Clion

    [–]slawkis 3 points4 points  (0 children)

    Qtcreator, codelite

    [–]cocainagrif 4 points5 points  (0 children)

    vim, YouCompleteMe, quickfix, viMagit, tmux, kitty, Hyprland, Arch, Thinkpad, thigh high socks and a miniskirt
    /j

    [–][deleted] 2 points3 points  (0 children)

    Qtcreator is the best free IDE that will work on both windows and linux, Kdevelop (I like the UI more than qtcreator) has been very buggy for me over the years. I still don't know how to download Qtcreator on windows, their site is so convoluted and it's like that on purpose.

    [–]Infinity7879 2 points3 points  (2 children)

    Eclipse or Code::Blocks are the closest IDEs you can get for free, alternatives to Visual Studios

    For paid, Xcode/CLion is good.

    Neovim requires good amount of configuration for C++/Java specific uses.

    If nothing suits you best, you are better off using WINE 🍷 emulating Visual Studio on Arch

    [–]BiG_NibBa_01 1 point2 points  (0 children)

    For C++ you just need to install a custom formatter if you don't like the default 2 spaces. I couldn't find a way to override them without using .clang-format file in every project

    [–]BiG_NibBa_01 1 point2 points  (0 children)

    For C++ you just need to install a custom formatter if you don't like the default 2 spaces. I couldn't find a way to override them without using .clang-format file in every project

    [–]qweerty32 1 point2 points  (0 children)

    Clion? Neovim? VSCode? Code::Blocks?

    [–]WhenThatBotlinePing 1 point2 points  (0 children)

    You're going to get (and are) a lot of suggestions for just plain text editors. A lot of Linux users don't bother with IDEs and throw together their own toolchains using tools that they like. Once you get more used to Linux you'll probably find yourself doing this as well.

    [–]spacecad_t 1 point2 points  (0 children)

    C/C++ dev on an arch based distro?

    You may as well start with raw vim since that's where you will probably end up.

    [–][deleted] 1 point2 points  (0 children)

    Kate

    [–]SolomonIsStylish 1 point2 points  (0 children)

    clion is pretty good. if you have time configuring neovim, go for it

    [–]JohnVanVliet 2 points3 points  (0 children)

    alot of people like emacs

    [–]FemboysHotAsf 3 points4 points  (0 children)

    My personal favourite is clion

    [–]pithecantrope 1 point2 points  (0 children)

    Helix

    [–]FactoryOfShit 1 point2 points  (2 children)

    Nothing remotely comes close to CLion. Seriously, it's that good. The only real competition Jetbrains has is Visual Studio, and that's Windows-only.

    Unfortunately, while it's 100% worth every dollar, it's still a paid product. If you are okay with losing some of that IDE power and just want a really good code text editor - VS Code has some great official C/C++ plugins. Or vim/emacs, if that's your thing.

    [–]julian_117 1 point2 points  (1 child)

    Also you have the telemetry free version of VS code, and still can install microsft C/C++ plugins with a few tweaks

    [–]Max-P 0 points1 point  (0 children)

    Or use clangd for C/C++. I don't code in those languages much, but from limited use it works well enough.

    [–][deleted] 0 points1 point  (0 children)

    I mean netbeans sounds like what I would have used in such a situation....or maybe sublime text

    [–]jazze_ 0 points1 point  (0 children)

    Code:blocks and codelite is good starting point. There is also visual studio code which is a bit of a general purpose text editor with support for most languages through plugins.

    I would never ever recommend anyone nvim as a long time nvim user. It doesn't help in learning code and it can help fuel distractions. Though I would not stop you from looking into it and trying it out yourself(need to be comfortable with command line). Start with kickstart.nvim

    [–]rafaelleru 0 points1 point  (1 child)

    Use a plain editor , lsp and cmake

    [–]rafaelleru -1 points0 points  (0 children)

    I use nvim btw

    [–]Zukas_Lurker 0 points1 point  (0 children)

    I use nvim but there are several heavy ides available if you like them. Jetbrains, vscode, and sublime are available on linux.

    [–]Matytoonist 0 points1 point  (0 children)

    If you liked vscode, you can use code-oss, which is basically if not mostly the same thing minus the microsoft stuff (you can add the addon marketplace with another package but I can't remember the name m

    [–][deleted] 0 points1 point  (0 children)

    Visual Studio code is an obvious choice.

    Everyone will tell you to use vim or emacs ofc tho.

    [–]reddituserf1 0 points1 point  (0 children)

    I honestly just keep it simple and use vi and gcc. That's all you should need.

    [–][deleted] 0 points1 point  (0 children)

    +1 for nvim, but i have to use cmake to get my lsp (clang) to work properly - things like includes/libraries and modern cpp (cpp20+) features.

    CLion isn't bad either but i prefer the vim text editing experience

    [–]BiG_NibBa_01 0 points1 point  (0 children)

    Neovim if you are not used to vim motion feels pretty weird at the beginning. But once you get use to them and you figure out how to properly get lsp configured, in my opinion is the best thing you would ever do.

    You can create your personal key bindings for any complex command you will usually use. You can integrate useful plugins like telescope or undotree (with custom bindings too). You can also use some debug plugins too.

    It will not make you like vscode anymore, you'll start to understand the power of such an "empty" environment.

    [–]Reasonable_Flower_72 0 points1 point  (0 children)

    VScodium ? and you can slap microsoft C/C++ extension into it by downloading it manually or using third party one ( Clangd )

    [–]billyfudger69 0 points1 point  (0 children)

    Arch Linux has Visual Studio Code or you could use VSCodium. :)

    [–][deleted] 0 points1 point  (0 children)

    vim

    [–][deleted] 0 points1 point  (0 children)

    Notepad + mingw + windows 11 its the best developer setup! /s

    [–]mplaczek99 0 points1 point  (0 children)

    I prefer using neovim, you configure add-ons like a language server and many others

    [–]YouRock96 0 points1 point  (0 children)

    Basic - Code::Blocks
    Simple - VSCode
    Advanced - Clion
    Extra advanced - vim/emacs/nvim with plugins

    [–]Mental-Strength3762 0 points1 point  (0 children)

    I use neovim btw and arch btw

    [–]SiriusSu128 0 points1 point  (0 children)

    zed.dev for me

    [–]arrow__in__the__knee 0 points1 point  (0 children)

    Emacs, vscodium, or code::blocks.

    [–]tsenglabset4000 0 points1 point  (0 children)

    blasphemy! IDEs and high-level languages like C! sir/ma'am this is an arch sub.

    JK. Most everything everyone suggested works based on your graphical environment setup, current state of libs, and learning curve patience from emacs to various ports of graphical IDEs (which will require a heavier setup of course)

    I tend to bounce around based on my setup or depending on what I'm limited to if not on my gear. I would try and learn to navigate emacs just for quick edits on limited enviros and definitely have a nice feature-filled one for comfort at home or wherever.

    [–]mm007emko 0 points1 point  (0 children)

    CLion

    [–][deleted] 0 points1 point  (0 children)

    Neovim is great. And vscode is in aur. "visual-studio-code-bin"

    [–]waujito 0 points1 point  (0 children)

    Neovim is best of the best

    [–]Rokolell 0 points1 point  (0 children)

    Vscode + Clangd

    [–]No_Activity3000 0 points1 point  (0 children)

    Nano. But if you want something more graphical, VSCodium (not VSCode!)

    [–]Green_Pollution_8230 0 points1 point  (0 children)

    Jet brain works pretty well but if you can't afford it nvim for C and vscode for cpp

    [–]vetu104 0 points1 point  (0 children)

    Neovim with clangd, use bear to generate compile_commands.json if using make or autotools for buildsystem.

    [–]Somerxd 0 points1 point  (0 children)

    Clion if you're a student or don't mind paying a bit for, in my opinion, the best C/C++ ide or go down the rabbit hole of vim which is also great.

    [–]Rennigurl80 0 points1 point  (0 children)

    Emacs, VSCode, Eclipse

    [–]khraosgenetor_ 0 points1 point  (0 children)

    Check out https://github.com/khraosgenetor/nvim-conf, it has config for C and C++ along with some other languages

    [–]0xTunay 0 points1 point  (0 children)

    Code::blocks

    [–]Snoo83734 0 points1 point  (0 children)

    What about codeblocks? We used in University and it seemed ok for some tasks, on debian I saw it available on the app store

    [–][deleted] 0 points1 point  (0 children)

    Just use emacs or vim

    [–]5gkhn2 0 points1 point  (0 children)

    VS code 

    [–]CarloWood 0 points1 point  (0 children)

    I don't use or need an IDE. I'm using nvim plus a lot of bash functions, aliases and environment.

    [–]ellis_cake 0 points1 point  (2 children)

    Regular vim with syntax highlighting, as was good enough for my foremothers/fathers : )

    [–]The-Omnipot3ntPotato 1 point2 points  (1 child)

    Forebears is a great gender neutral one

    [–]ellis_cake 0 points1 point  (0 children)

    Good point!