I think the possible valid answers are: “vi”, “emacs”, “both”, “seriously it’s 2024”, and " huh?"

  • sincle354
    link
    fedilink
    49 months ago

    Both because they are the ultimate tools in maneuvering a terrible, terrible development environment. For reference, Sigasi Studio costs 2,000$ PER YEAR, and it still doesn’t work for our dev environment!

    Let me paint a picture: Corporate job that won’t let you download anything except whatever you can smuggle through a git checkout. It took a month to convince IT to download vim 9.0 on the server. The programming language? VHDL and SystemVerilog and UVM. Horrible language support that relies on proprietary compilers/simulators, and always the ones you aren’t using. The one you are using is so obtuse that it has literally 50 configuration files for a single project. All of it is run with a janky python script with half of the flags not working. LSP support is out of the question since it dynamically pulls files from god knows where with at least 10 layers of …/ relative pathing.

    All I can do on vim is

    • ctrl+p for fuzzy file finding and a massive blacklist of intermediate files to ignore,

    • a custom :Make command with custom errorformat that you can navigate through,

    • Universal Ctags with per library indexes to reference those far off files,

    • and a fuckton of grepping for when Go To Definition (ctrl+]) grabs the wrong location.

    Vim’s autocomplete is almost always good enough. If my laundry list of plugins break, I can literally fix them on the spot and even submit the merge request on github. If you take into consideration all of this configuration and learning effort, I still save hours of navigating through the hundreds of files I have to essentially reverse engineer. My coworkers are all electrical engineers and it shows They’re using godforsaken nedit with no syntax highlighting…