• @aport@programming.dev
    link
    fedilink
    352 years ago

    Alternatively you can use and support a true community-driven editing environment dedicated to preserving your freedom, like vim/neovim or emacs.

    • @I_like_cats@lemmy.one
      link
      fedilink
      372 years ago

      But that’s something new to learn and configure. I just want to code why should I spend my time learning another text editor when vscodium is fine

      • @nonearther@lemmy.ml
        link
        fedilink
        English
        112 years ago

        Who doesn’t want to go through learning of text editor and pain of configuring instead of actually coding?

      • exu
        link
        fedilink
        English
        32 years ago

        Well, if you learned emacs, you could do everything in it and won’t have to change ever again! /s kinda

      • @sugar_in_your_tea@sh.itjust.works
        link
        fedilink
        0
        edit-2
        2 years ago

        Same reason why a carpenter should learn to properly use hand tools, or a teacher should keep up on literature. In other words, master your tools. It doesn’t matter which tool you use, provided you can use it to its full potential.

        I occasionally use VSCode, but I mostly use ViM because that’s my tool of choice.

        For another reason, if your ever in the situation where you need to work on something on a remote server or an unfamiliar machine, knowing ViM means you can at least be somewhat productive when you don’t have your normal tools available.

        • @I_like_cats@lemmy.one
          link
          fedilink
          12 years ago

          I know vim. I’m using vscodium with a vim plugin. I was coding in pure vim for half a year because my Laptop with 4 gigs of RAM couldn’t handle vscode. I just don’t want to configure vim so it does all the stuff VScodium does for me

          • That’s fine, use what works best. I think there’s value in getting at least the basics working, such as syntax highlighting and linting in case you want or need to use it again.

            The question was why one should learn to use something like ViM or emacs, not why anything else is a poor option. Master your tools, regardless of what they are.

    • @baseless_discourse@mander.xyz
      link
      fedilink
      10
      edit-2
      2 years ago

      I would love to use emacs, unfortunately coding in TypeScript is much more pleasant to me than coding in elisp or lua.

      Not to say Typescript is a good experience either, I always feel like fighting the language than actually coding. Just saying they are better than elisp or lua.

      Also I find vscode has better mouse interaction, but maybe emacs got better with time.

      • @sugar_in_your_tea@sh.itjust.works
        link
        fedilink
        1
        edit-2
        2 years ago

        Are you talking about configuring the editor? Ideally, that’s not a common task, so it really shouldn’t matter much if it uses TypeScript, elisp, vimscript, or lua.

        And if you’re primarily using the mouse, you’re missing most of the point of editors, especially emacs and ViM. The real power of those editors comes from keyboard shortcuts and combos, not from plugins and menus.

        • @baseless_discourse@mander.xyz
          link
          fedilink
          3
          edit-2
          2 years ago

          Yes, ideally a editor would work without any configuration, but unfortunately I haven’t met any emacs user with sub 200 line dot files.

          I personally cannot remember more than 20 hotkeys to save my life.

          Also I find the most time-consuming part of my work is actually thinking, not clicking around with a mouse. so I don’t really need to spend month to remember all the hotkey just to save 2 seconds clicking. In fact, slow down and click couple buttons to commit gives me a bit to rest and enjoy the moment when I have finished a task…

          • @sugar_in_your_tea@sh.itjust.works
            link
            fedilink
            1
            edit-2
            2 years ago

            It’s not about optimizing code entry, but optimizing reading code, since you read code a lot more than you write it.

            I’m not super familiar with emacs, I’m a vim person, but here are a few examples of mouse vs keyboard navigation.

            Search for text in a file:

            Mouse:

            1. select the text
            2. click “find in page”
            3. click “next”

            Shortcut:

            1. Ctrl + F
            2. Click “next”

            Vim:

            1. Type * on the word you want
            2. Type n for next, N for previous

            Find matching brace/bracket/parenthesis:

            Mouse:

            1. Click on brace
            2. Scroll until you find the match

            Shortcut: not sure

            Vim:

            1. Type %

            Navigate to the top/bottom of the file:

            Mouse: scroll or click the sidebar

            Shortcut: not sure

            Vim: gg for the top of file, G for the bottom

            Go to a specific line:

            I.e. If from output from a script, like a test failure.

            Mouse: scroll or if you have a plugin, click on the red part (i.e. test or lint failure)

            Shortcut: in VSCode, Ctrl + click on file name

            Vim: <number>G or :<number>

            And so on. Vim is optimized for code navigation, a mouse is optimized for intuitive navigation (but slower), and shortcuts kinda fill in the gaps.

            If you just want to get up and running quickly, something like VSCode is a good option. That’s what I did when I decided to help my team out with some FE TypeScript code, when I normally use something else. I actually installed a vim plugin for VSCode to get the best of both worlds.

            But if you really want a fluid code navigation and editing experience, master something like ViM or emacs.

            Oh, and I didn’t mention one of the most powerful things in both ViM end emacs: macros. I use them a ton when manipulating text, such as converting JSON to a class/struct, or doing repetitive syntax changes that are just out of reach of a regex.

            • @PrometheusG@lemmy.one
              link
              fedilink
              32 years ago

              Proper VS Code shortcuts for the above cases…

              Find next: Ctrl-f, F4

              Find matching brace: Ctrl-]

              Navigate to Top or Bottom: Ctrl-Home Ctrl-End

              I think it’s the same number of keys pressed as vim in every case.

              • Probably, and we could go back and forth based on features. My main point was that using the keyboard is generally more efficient than using the mouse, especially since my hand is already there.

                So for software you use every day, master it. Master the keyboard shortcuts, learn how to customize things, etc. Maybe VSCode has an option for macros, IDK (I’ve used them with the ViM mode, so that’s at least one option). Using the mouse should be a fallback, not the first option.

            • You raise a valid point. Personally, I used to read and write a lot of code, but I no longer do that. I still maintain a open source project, but my job no longer involves writing code that runs.

              IIRC, the most useful functionality I used to use are:

              • peak/goto definitions,
              • mouse over to peak doc and type signature,
              • find usage in project,
              • refractor the name/signature of a function,
              • real time linting and quick fix.

              I am quite curious on why go to beginning or end of the file useful? Also I am not sure that the basic find/replace is more useful than find usage/refactor.

              • peak/goto definition

                Plugins are available for most popular languages. I rarely need to see the type of a value, and if I want to see the signature of a function, I usually want to go to the implementation as well.

                find usage

                I just use grep. I’m already in a terminal, so I have all of those features available. Since I use tmux, I just switch over to another pane and run my search there. For changing the name of a function (which is very rare), I just use sed or do the change manually with vim $(grep ...) if it’s more than just a name change (usually I’m changing the signature too).

                real time linting

                I use a plugin for that, and it works really well.

                beginning or end of file useful

                Beginning of file: look for an import/constant

                End of file: add new function, or a shortcut to the last brace to jump to the start of the class/function. I try to keep files small and single-purpose, so it’s usually what I want (jump to end and match braces).

                And yeah, I occasionally miss context-aware search/refactor, but again, it’s so rare that it’s not a big deal. I save far more time with macros than I lose doing manual renames. If I know I’ll be doing a lot of that (and usually it comes in bursts), I have VSCode installed as well. But I don’t launch it very often.

                My whole workflow is very command-line oriented, so using a GUI tool just gets in the way for me.

    • @Parsnip8904@beehaw.org
      link
      fedilink
      42 years ago

      lapce is a vscode replacement that has all the sugar that people love and it’s blazingly fast. It’s still in alpha but I’m very hopeful for it’s future.

      • @NixDev@programming.dev
        link
        fedilink
        72 years ago

        I have looked at lapce and I am hopeful it will mature enough to replace vscode. I haven’t had the time to see if it works enough to replace vscode for my daily work, but I am planning on trying it again soon.

        Fleet seems promising but not sure how I feel about another JetBrains editor.

        • @Parsnip8904@beehaw.org
          link
          fedilink
          12 years ago

          Glad you liked it :) It still has issues but the development is happening at breakneck pace. I’m planning on daily driving it once it goes beta.

          I also have conflicting feelings about jetbrains IDEs. Does fleet have a community edition? I use pycharm sometimes but also hate it sometimes.

          • @NixDev@programming.dev
            link
            fedilink
            22 years ago

            Right now fleet is basically a community edition. They had stated there will be a paid version. So I am wondering how many features will be locked behind a paywall. Hopefully they have all the features from the beta available and just add some enterprise features to the paid version.

            I really miss atom, would have been great if MS didn’t kill that project. It would be interesting to see how it would have compared to code.

            • @Parsnip8904@beehaw.org
              link
              fedilink
              12 years ago

              Hopefully it’ll stay that way. Otherwise there is EAP I suppose. That’s what I do with webstorm.

              For me it’s Sublime text. It’s blazingly fast and robust, but because it isn’t as popular as code and not open, there aren’t as many plugins. I honestly think that if it had been opensource, it would have captured the market share that vscose holds now.

    • Carlos Solís
      link
      fedilink
      22 years ago

      Personally though, I use Kate. Ain’t got time to learn new keybindings

      • @Pierre@beehaw.org
        link
        fedilink
        12 years ago

        That is incorrect. Both are pretty barebones from the start and have a big pool of extensions to get the functionality that you need. It might be more involved on the vim/nvim side, but that is more of an accessibility VS personalization thing.

        There are even sort of distributions for nvim that bring you all the common functionalities already configured.

  • Dr. Wesker
    link
    fedilink
    192 years ago

    Am I correct that you also don’t get access to the extensions marketplace, though?

      • @CaptDust@sh.itjust.works
        link
        fedilink
        2
        edit-2
        2 years ago

        VSDbg is closed source, technically licensed under visual studio, and only for MS products. Then they sprinkle some key check that prints a message telling you to use it in an official environment or whatever. It’s dumb and needs resolved as part of their OSS efforts but seems more unlikely with each passing year.

  • @Contend6248@feddit.de
    link
    fedilink
    62 years ago

    Sadly with much less extensions, i use it just to compile and flash my marlin 3D printer and every extension needed has to be set up manually, for some reason even then i can’t get it to work.

    • @elfahor@lemmy.blahaj.zone
      link
      fedilink
      42 years ago

      You can change your product.json to gain access to the Microsoft extension repositories. I still don’t do it because fuck ms, for the few extensions that I do need I download them as .vsix on the web frontend.

  • @Gargari@lemmy.ml
    link
    fedilink
    English
    22 years ago

    What you think Tauri’s potential in cross-platform ui like editors development?

  • @ricecake@lemmy.ml
    link
    fedilink
    22 years ago

    github codespaces are where i do a lot of my stuff now 😢

    does anyone know if codeberg has a web based ide?

  • @kyub@discuss.tchncs.de
    link
    fedilink
    English
    13 months ago

    As others have mentioned there are unfortunately issues in detail when using an inofficial version of VSCode and even more issues when using the original VSCode of course. I get that it’s currently the most popular code editor but it’s really not recommended to use it. It’s kind of painfully obvious that Microsoft is driving the development of VSCode, and MS is simply not your friend. Not even when it gives you a permissively-licensed open source tool. It’s still kind of poisoned albeit at a low dosage, making it hard to detect. The type of poison we’re talking here are opt-out (if you’re lucky) telemetry (of course!), features or extensions which are ONLY compatible with the OFFICIAL build of VSCode so you can’t 100% work around VSCode’s issues by “being smart” and using a better-preconfigured inofficial build, and as an Electron-based application it’s very bloated and prone to security issues. And, of course, Microsoft steers its development so it may at any point introduce additional anti-features (which is likely, since this is MS we’re talking about here) and also steer its users away from using inofficial builds which might in theory fix some of those anti-features. It smells, and it’s not a particularly smart long-term time investment option.

    My recommendations are:

    If you want another relatively easy option learn the Vim keybindings (not that hard) and then use Neovim or NVim or however it’s called officially. It can be made into a full-fledged IDE with tons of modern features including LSP and Treesitter quite quickly and painlessly. As a bonus you become familiar with Vim which is present on basically all Linux/Unix/*BSD based operating systems on the planet, so it’s useful to know its basics.

    If you don’t mind the harder but more rewarding option, learn and configure Emacs (maybe start with Doom Emacs, it’s easier at the start and uses the Vim keybinds by default). Some other “starter kits” or “distributions” exist as well of course, e.g. Bedrock or Crafted Emacs. Emacs can do literally everything and more, it just needs a lot of time to tweak it, it uses a weird language, and the learning curve at the very start is basically a straight wall into the sky including an overhang. But once you’ve climbed that, it’s an amazing tool for life, going beyond just code editing. Emacs has been around ~40 years and is even growing stronger recently so it’s rock solid and highly dependable, a real tool for life. Also it’s community-maintained, GNU-backed FOSS without weird drawbacks. Since its default keybinds (as well as many other defaults) are ancient (terrible) you should either customize them in various possible ways or use evil-mode which allows you to use basically all of Vim’s keybinds inside Emacs as well.