chomsky-yes-honey

  • trompete [he/him]@hexbear.net
    link
    fedilink
    English
    arrow-up
    13
    ·
    15 days ago

    While I’m Emacsposting, my favourite trivia, which unfortunately is no longer true for a couple of versions:

    Because starting Emacs from scratch took quite a long time, thanks to copious amounts of elisp that needed to be executed every time, they implemented a clever shortcut to avoid this long startup: Start up emacs at the end of the build process and then have it dump core, then load this coredump when the user executes Emacs.

    In case someone doesn’t know what a coredump (aka memory or crash dump) is, it is a snapshot image of a process’s memory, written to a file. Most commonly taken when the program crashes, so as to facilitate debugging the cause of the crash. Re-loading the core dump basically allowed Emacs to start right back where it had deliberately crashed, thus skipping a bunch of its slow initialization.

    Every time I sit there waiting for Civilization to load I wonder why games and other slow-to-start programs don’t do this, but by all accounts this was quite hacky and considered an abuse of the coredump feature.

  • loaExMachina [any]@hexbear.net
    link
    fedilink
    English
    arrow-up
    3
    ·
    14 days ago

    Every now and then I think of trying Emacs again. When I got enough into scripting that I needed to pick a decent text editor, I hesitated a while between vim and emacs. I tried both and settled on the prior, partly because it was more lightwight and partly because I started playing Nethack at the same time and figured learning one skillset for both was more efficient.

    Tbh, I’m quite satisfied with neovim, and the main reason I keep thinking back to Emacs is ideological (it’s ties to the Free Software movement and such). But I’m also curious because I’ve heard it had so many features it could basically replace most of your OS… But does it do all these things well? Is a workstation using all of Emacs feature rather than a different program for each feature still something worthwhile?

    • SockOlm [she/her]@hexbear.netOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      14 days ago

      Every now and then I think of trying Emacs again.

      Go for it! But beware: The earlier you start the longer you need to learn (the rest of your life scared )

      I’ve also started with vim and switched to emacs later. It’s definitely very bloated - I mean which other text editor ships with 2 email clients, 2 IRC clients, a web browser, Tetris, and a reverse polish notation calculator? But it’s also got a few features it does really well that makes it irreplaceable, like the ability to document itself, magit, dired, multiple cursors, vterm etc.

      I started playing Nethack at the same time and figured learning one skillset for both was more efficient.

      I’m not familiar with nethack, but if this is about keybinds, then check out evil-mode for emacs (vim keybinds).

      But I’m also curious because I’ve heard it had so many features it could basically replace most of your OS… But does it do all these things well?

      In my experience, no. There are plugins that for example let it replace your window manager, but because emacs is single threaded, you entire computer hangs when ever emacs hangs (and it does hang a lot lol). For me the OS is just a bootloader for emacs and my Webbrowser anyways.

    • hello_hello [hy/hym]@hexbear.netM
      link
      fedilink
      English
      arrow-up
      4
      ·
      14 days ago

      I use Emacs because everything else is strictly worse. Vim doesn’t have support for reading documents and images so I have to go outside of my flow state to hop to another window. Other text editors don’t have remote editing that isn’t vscode downloading vscode onto your remote machine (emacs’ tramp uses shell commands with zero remote binaries). No text editor has the ability to present a directory view of an ls command and allow you to make changes by directly writing into the buffer (emacs wdired). Finally, no text editors has magit which is the only thing that makes git part of your editing flow instead of the chore you do after your work.

      Also no text editor has an AI therapist (port of Eliza in emacs doctor) that doesn’t destroy the environment.

      • This (and the other comments) has pushed me to learn more about how to use emacs (well, specifically spacemacs as that’s what I have installed). I’ve only just learnt like 2, 3?, things and I’m already twice as powerful.


        ⓘ This user is suspected of being a cat. Please report any suspicious behavior.

        • hello_hello [hy/hym]@hexbear.netM
          link
          fedilink
          English
          arrow-up
          2
          ·
          13 days ago

          magit is genuinely why I can’t leave Emacs despite all of its idiosyncrasies (which is getting better with Emacs 31 and its starter preset). The ability to view your work as a diff on a side window alongside your editing window has allowed me to think critically about what changes I’m making as I’m making them. Without it, I just get lost in the sauce of what I’m doing and end up making 12 unrelated changes that I have to sort through after the fact before giving up and making a commit that’s just “Progress <date>”.

          Starter kits are great for getting your feet wet but don’t be afraid to declare emacs bankruptcy and start your own config with the things you’ve learned. Seasoned Emacs gurus have 10,000 line configs and they still declare bankruptcy to see what they really need and what they don’t. I recommend learning each “app” of Emacs as you go at a time (tramp is my legit favorite this thing lets me remotely edit/do sysadmin stuff on 3 remote machines simultaneously without breaking a sweat, imagine being able to scp into a remote machine while using another remote machine as an ssh hop just via a keybind).

    • lilypad [she/her, it/its]@hexbear.net
      link
      fedilink
      English
      arrow-up
      3
      ·
      14 days ago

      But does it do all these things well? Is a workstation using all of Emacs feature rather than a different program for each feature still something worthwhile?

      Really depends on what you mean by “well”.

      I like email. I like reading it and managing it as text. Emacs does this perfectly for me. If you dont like treating it as text, then you won’t like it.

      I like writing latex and previewing PDFs. Emacs does this perfectly for me. I like using org møde so I dont have to think about latex. Emacs is perfect. If you dont like latex, PDFs, or prefer a WYSIWYG editor, then you won’t like it.

      I like the shell, and shell multiplexing. I like having familiar keybindings. So I use vterm as my shell multiplexer. But really I just use emacs. Shell scripting isnt super useful for me because of emacs.

      Its not good or bad. Its just your use case. But, I will say, having the same keybindings everywhere is reason enough to check it out.

      • loaExMachina [any]@hexbear.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        13 days ago

        That’s an interesting way of seeing it. I mostly built my current workflow with the idea of “one program for one thing”, with the terminal at the center, and with the i3 wm to efficiently organise my terminal windows, so for example when using Latex, having one terminal where I write in vim and another where I run pdflatex and zathura in a third window doesn’t seem like much of a problem. However, opening a program which itself has several windows seems to make stuff more complicated because they don’t always behave like i3 windows of the currently selected mode.

        I guess if I skipped to emacs, I’d probay ditch i3 and build my workflow around emacs itself…