Bad Emacs Advice

(masteringemacs.org)

165 points | by grep4master 826 days ago

15 comments

  • beepbooptheory 826 days ago
    Just to add: the built-in "Introduction to Programming in Emacs Lisp" is also really really great. I have been using emacs for a while, with one framework or another, but always hesitated actually learning lisp. I was too focused on learning the kinds of languages and systems that might get me a job, and it felt like too big of a venture in learning a whole language just for my development environment. Now, I have a given up on the employable thing, and have been enlightened by SICP and lispey languages, and in general, the simple beauty of Emacs itself, not just what I can make it do. It takes only a little time to get comfortable with the nested (), and weird vocabulary, and it just really will click with you at some point, how simple it all really is, how every function bears on the simple syntactic principles of the language as whole, its lists all the way down!

    You can see the language work, by looking at the code.

    It may not get me a fancy computer job, but I think I am happier on the whole anyway, giving myself to lisp. Something therapeutic about it.

    • TacticalCoder 826 days ago
      > ... and have been enlightened by SICP and lispey languages,

      Fun anecdote: I've got my copy of SICP signed by both authors for Sussman invited me to have tea in his office and when I arrived the next day, by sheer chance, Abelson was there too! They joked that had I been there 30 minutes early Sussman's wife, who proofread the book, would have signed it too! I've got a cool pic taken at that moment: me standing along these two legends and proudly holding the purple book... I'll post that pic and full story the day I have a blog.

      Besides that I pretty much live inside Emacs. The occasional elisp (3000 lines of custom elisp hackery over the decades) and lots of Clojure/ClojureScript.

      • watersb 826 days ago
        > had I been there 30 minutes early Sussman's wife, who proofread the book, would have signed it too!

        I have thought that J Sussman not only proofread the book, but also came up with some of the problem sets and tested many of them: she worked through the book, not just a matter of spell-checking.

        But I don't know.

        In any event, SICP changed my world in a good way. Very cool that you got both authors to sign a copy!

      • beepbooptheory 826 days ago
        Wow so cool! I have been working through it with just the HTML version, but recently resolved to get the physical book, its just one those I gotta have.. Then, one day when I have the money, I will get the full volumes of The Art of Computer Programming by Knuth.
        • icedata 826 days ago
          I just printed out the pdf version of the book. I found a shop that would bind it for me and print it double-sided.
        • 908B64B197 826 days ago
          I wonder how much he could raise for charity by selling autographed copies. The man is a legend.
    • ylee 826 days ago
      >It may not get me a fancy computer job, but I think I am happier on the whole anyway, giving myself to lisp.

      I am the same way. I have been using Emacs since 1995, but have never had a full-time programming/IT job (although my tech skills have always been integral to my career). Perhaps having the luxury of not having to write code for pay is what makes me want to instead slowly learn Elisp. I read email using VM on Emacs (also since 1995), and over the last few years I have broken out of just knowing enough to maintain Emacs' dotfiles to actually writing substantial routines that expand on/fix VM and Emacs's capabilities.

    • gypsyharlot 826 days ago
      How do you access the built-in "Introduction to Programming in Emacs Lisp"?
      • JJMcJ 826 days ago
        Using the menu bar, remember don't disable that,

            Help => More Manuals => Introduction to Emacs Lisp
      • nanna 826 days ago
        C-h i m 'Emacs Lisp Intro'
        • BeetleB 826 days ago
          More in line with the submission's advice:

          Help menu --> More manuals --> Introduction to Emacs Lisp

        • gypsyharlot 826 days ago
          That doesn't work for me.
          • mindcrime 826 days ago
            Same. I have a vanilla Emacs install and the Lisp Intro doesn't seem to be there.

            You can find it online though:

            https://www.emacswiki.org/emacs/EmacsLispIntro

            Edit: I'm on an Ubuntu derived distro, so this may be the issue:

            https://emacs.stackexchange.com/questions/48211/emacs-manual...

            Edit2:

            Yeah, at least for me that was the problem. This fixed it:

            sudo apt-get -y install emacs-common-non-dfsg

          • Jtsummers 826 days ago
            Don't use the quotes for the phrase, just type it verbatim. If that still doesn't work then either the info page isn't installed (weird) or something else is up. You can also, from the first info page at C-h i, type "C-s emacs lisp intro" which should bring you to it. And again, if it's not there then something is wonky with your install.
            • gypsyharlot 826 days ago
              I have a totally standard Emacs install, but it's not there. C-h i and searching with C-s for "lisp" finds nothing either.
              • Jtsummers 826 days ago
                So the only thing I can find is that for emacs before emacs 21 it was not included (I didn't know that, I guess I installed it through my package manager or some other means back then and forgot). After that, it is included by default. But you can check to see if your package manager includes a separate `emacs-lisp-intro` or similar package. Short that, you'll have to download it from the site and install it manually to see it in emacs or just use the HTML version.

                https://www.gnu.org/software/emacs/manual/eintr.html

              • dfinninger 826 days ago
                I found it on my Mac in the menu bar. Like the one at the top of the screen next to the Apple logo. Clicking with my mouse: Help > More Manuals > Introduction to Emacs Lisp.

                I assume in Windows/Linux this would actually be attached to the window frame at the top.

          • marcosdumay 826 days ago
            Are you using Debian, and if so, do you have the non-free documentation installed (emacs-common-non-dfsg)?
            • gypsyharlot 826 days ago
              This is Debian, yes. Thank you, I will try that.
          • BeetleB 826 days ago
            Something must have clearly gone wrong with the install (or perhaps there is a minimal install version...?) If this were Gentoo, I would suggest that perhaps the "doc" USE flag was not enabled?
            • mindcrime 826 days ago
              Looks like Debian/Ubuntu and derivatives don't install the Emacs manuals by default. I had to do this to get it on my PopOS box:

              sudo apt-get -y install emacs-common-non-dfsg

          • donio 826 days ago

                C-h i d m Emacs Lisp Intro RET
            
            Need that d to take you back to the top directory if you happen to be browsing some other info manual already.
            • gypsyharlot 826 days ago
              C-h i d m Emacs<press space>Lisp<press space>[no match]
          • ska 826 days ago
            It should on a standard install.

            If you have things remapped, try M-x info, then search for "Emacs List Intro" but it should be near the top anyway.

            • gypsyharlot 826 days ago
              M-x info, C-s lisp... nothing.
              • ska 826 days ago
                I suspect you have an idiosyncratic install.
          • JJMcJ 826 days ago
            Takes me to information on keymaps
  • 0xdky 826 days ago
    Another lesson I learned from almost 2+ decades of using Emacs:

    Track your customizations in a version control. Using customize package and reading the diff in dot Emacs file has taught me quite a bit about certain aspects of the package.

    Side note: It would be awesome if Emacs could do the versioning as part of saving the customizations - build Emacs with libgit2 and make it a native git client.

    • bananamerica 826 days ago
      The customize interface is quite useful. It's probably more adequate if you don't have a huge intricate init. With time, custom.el (or init.el if you keep everything in the same file) can get difficult to manage. When that happen, a lot of people opt for something more readable and human friendly, like use-package or a distribution such as doom-emacs.

      The author mentions that some things can be hard to do outside of the customize interface. That is true. When that happens, I just use the interface and then move the setting from custom.el to use-package. But that's rare, I can't remember the last time I did that.

    • tom_ 826 days ago
      Yes. Also, don't put your own stuff in init.el. Put your own stuff in another file, and load it with load-file from init.el. This massively decreases the chances that Emacs will make a mess when it adds or updates its own stuff.
    • mickeyp 826 days ago
      You could probably write it. Emacs is able to track which settings you've _applied_ but not yet saved; that could serve as the linchpin for generating versioned changes.
    • TacticalCoder 826 days ago
      for a reason I forgot my .emacs.d/ ("hidden" dir) is a symlink to emacsdotd/ (not hidden) and, yup, it's in git. Some are going to say: "why stop there!? version your entire user dir" and I can see the appeal (but haven't tried yet).

      I'm one of those who track everything Emacs: including all the packages. When I upgrade packages, I first check that nothing broke then I commit "Bump avy to 20220114" or whatever. This way I can easily share the exact same config on several machines/several user accounts and I know I can easily roll back to a known fully working setup. YMMV.

      • oblio 826 days ago
        If by "version your entire user dir" you mean "version all your manually edited configs", that can work.

        Init a git repo in your $HOME, add a .gitignore that by default excludes everything then manually add just the files and folders you want to track.

        Especially if you want to publish the repo, be careful, because it's <<extremely>> easy to accidentally expose confidential stuff.

        • shakow 825 days ago
          Or just use something like GNU stow or chezmoi.
  • Yuioup 826 days ago

      just like pizza with pineapple, people do occasionally give out downright bad advice.
    
    I really don't understand this pineapple on pizza meme. I think it's delicious!
    • toyg 826 days ago
      It's because it was not a thing in Italy, so accepting it was seen as the sign of being out of touch with "real pizza" traditions. Sadly, a natural reaction of disgusted rejection by Italians has been adopted by snobs all over the world.

      Nowadays you'll find it even in Italy, because tourists demand it and they pay hard cash, so fuck it all anyway.

      • leephillips 826 days ago
        > it was seen as the sign of being out of touch with "real pizza" traditions.

        ...by people who don’t know where what they think of as “Italian pizza” actually comes from. Look up “pizza effect.”

        • toyg 826 days ago
          I would take what a "Austrian-born Hindu monk and professor of Anthropology at Syracuse University" says on the history of a traditional staple of my own country's diet with a massive grain of salt.

          Pizza existed before Italian migration to North America was even a thing. It gained tomatoes when they became more readily available and better known in the early XIX century, and that's about it. The explosion in Italian migration happened later, by then most of the traditional pizzas had long been codified.

        • rincewind 826 days ago
          I have tried to find the roots of this "pizza effect" myth, but all I could find is somebody making a point about mindfulness meditation and yoga, and I am not even sure how it holds up WRT yoga, because Indian yogis who do not-Western yoga are still a thing.

          WRT pizza, it's clearly false. Pizza was a thing in Italy before World War II and it spread through Europe from Italy, not from the USA. You can trace the history of many pizzerias in Italy back far further than the "pizza effect" would have you believe, so you can easily de-bunk it by going to the web site of a pizza place in Napoli.

          • mtts 826 days ago
            Agreed, it’s false. Pizza in Italy (and in the rest of Europe, for that matter) is very little like pizza in the US.

            Amusingly, however, while it’s influence on the food itself is at the very least debatable, the influence of the US on how pizza is consumed is in fact very real: the fact that Italians nowadays drink beer with their pizza is something they learned from American GIs in WWII who brought the practice over from home.

            Before that time, there was no overlap between Italians who drank beer (Northerners) and Italians who ate pizza (Southerners). Thanks the American soldiers Southerners learned to drink beer and Northerners learned about pizza.

          • leephillips 826 days ago
            People who discuss the pizza effect are well aware that it started in Italy. The interesting “effect” part is that the version that is popular now in Italy was heavily influenced by the development of pizza in, largely, New York, by Italian immigrants. It was re-imported back into Italy. It’s a cautionary tale for people who fret about cultural appropriation and a reminder that the idea of the “original” or “authentic“ version of something is often more complicated than we imagine.
            • krageon 826 days ago
              I have trouble believing this, given that I have tasted pizza from both places and it is not alike.
            • gpderetta 826 days ago
              One of the most popular if not the most popular versions of pizzas in Italy is the pizza margherita (and in fact a lot of pizzas are just margheritas with additional toppings).

              Pizza margherita existed in the I̶X̶X̶ XIX century already in its modern form.

              • leephillips 826 days ago
                I’m not familiar with this century.
                • Koshkin 826 days ago
                  I wish we stopped using the Roman numerals. (On the other hand, they are good for coding interviews, and MMXXII looks pretty!)
                • gpderetta 826 days ago
                  fixed /facepalm
                  • leephillips 826 days ago
                    Thought so, but wasn’t sure. I was fond of the pizza effect story, and am holding on to the hope that it’s at least partly true. But you supply a powerful counter-fact.
            • rincewind 825 days ago
              Yeah, this is the version that is not true
      • krageon 826 days ago
        > snobs

        I don't like fruit as part of a main course (i.e. not a dessert) or appetizer. That doesn't make me a snob, it just means I don't think fruit belongs there and don't appreciate when it is.

        • beepbooptheory 826 days ago
          No tomatoes? No salads with fruits? No Duck a l'Orange? No fried plantains?
          • krageon 822 days ago
            Fried plantain is a dessert.
        • JoeAltmaier 826 days ago
          Plums in chicken? Orange in sauces? Pear in a salad? Pineapple on ham? Lemon in anything?
          • aidenn0 826 days ago
            Not the person who said it first, but I dislike all of those things except lemon[1]. In addition, my wife likes cranberry preserves with poultry and applesauce with pork, both of which I find distasteful.

            However pineapple with anything savory is by far the worst for me. I prefer to not even sit next to my wife and kids when they are eating pizza with pineapple on it because the smell from it is enough to throw the taste off.

            1: Okay, there are some sauces that technically have some orange or orange juice in them, but have so many other ingredients that it really just adds the tiniest hint of tangyness. but e.g. duck a l'orange is too much orange for me.

          • krageon 822 days ago
            I don't like these things, except perhaps for lemon juice in moderation (and even then, I prefer it in desserts).
        • nescioquid 826 days ago
          I suppose you won't eat a pizza with that red berry paste on it then?
      • hbn 826 days ago
        This is the first I've heard as it being some kind of "it's not traditional" argument

        Everyone I've ever talked to that has an issue with it just think it's gross. And they're usually people that are not very big risk-takers with their tastes, and order the exact same item at a restaurant every time they go. And only want either cheese pizza or pepperoni.

      • prussian 826 days ago
        >It's because it was not a thing in Italy

        I'm pretty sure even Tomatoes weren't. I hope this isn't the reason for the disdain.

        • _jal 826 days ago
          I'm fine with disdain. If pizza were French, there'd be legislation about it.
          • ycombinete 826 days ago
            “Of course it’s not real pizza, that’d have to be imported from the Pizza region in Italy”
            • Zababa 826 days ago
              I fail to see the problem with this. Especially when it's products made from animals that eat the grass around that place. Or anything soil-dependant really. Wine is very different depending on where it comes from.
            • Bayart 826 days ago
              That sentence works if you replace pizza with parmesan, or any of the Italian protected origin foods.
              • ska 826 days ago
                It's easy to poke fun, but DOP isn't just about region and it does matter, at least for many things.

                I don't know that "you can't call it X" is the right approach, but there should be some really clear to consumers way of saying "X was made to a particular standard" vs "all bets are off with Y" - then let them decide.

                • ycombinete 817 days ago
                  Well in South Africa we have a sausage called boerewors. My understanding is that you can only label it boerewors if it has certain specific percentages of certain specific fillings. Anyone can make boerewors and call it boerewors, as long as they stick to those ingredients and percentages.

                  Things that fall out of those ranges are simply called wors. Similar to the difference between a pork sausage and a pork banger.

                • Bayart 826 days ago
                  I'm not the one poking fun, my comment was straightforward.

                  I'm French, we invented this legal device, I know how it works and why it exists (and I think it's got every right to).

                  • ska 826 days ago
                    My mistake, I thought I was replying to parent.
      • ravi-delia 826 days ago
        I feel like it's probably because a typical American pizza has savory toppings, and pineapple is unusual in that respect. At least, that's why people around me complain about it. The Italian pizza ship sailed a looong time ago.
      • wiredfool 826 days ago
        There are lots of things which are non traditional but good on pizza.

        Fish and chips for one. Curry wurst. Apple, persimmon, pine nut and blue cheese. Halloumi, pea, and mint. Mushroom, goat cheese and chipotle. Cranberry and white pudding. (Or cranberry and goat cheese) Christmas dinner. (Turkey, stuffing, ham, cranberry). Pulled pork. Roast pineapple and mint. Bacon and egg. Berry and cream cheese. Salmon and cream cheese and wasabi.

        I have been known to make specific dinners in order to have the leftovers to put on pizza.

        • Shared404 826 days ago
          Hard agree.

          My first job was a pizza place where we had "Pizza of the Month" deals which were unusual pizza's. Street taco pizza? Amazing. Thanksgiving pizza? Amazing. Spicy honey + fresh mozzarella? Amazing. Baked potato pizza? Amazing.

          Just gotta remember to not use tomato sauce for some of those.

          • mauvehaus 826 days ago
            If you find yourself near Slade, KY, you might find Miguel's worth a visit[0]. Their list of toppings and sauces is extensive, in part reflecting that it's anything in the kitchen that might reasonably be a pizza topping, salad component, or breakfast burrito filling. Hell, they'll put rotini on your pizza if you want, since they have it on hand for people who prefer pasta to pizza as their dinner substrate.

            I suspect you could experiment to your hearts content for a long while there.

            [0] It's unlikely that you'll "find" yourself in Slade without already knowing about Miguel's.

            • wiredfool 825 days ago
              Sounds like it.

              There was a food truck at Cornell when I was there, Hot Truck, an institution on West Campus for late night food. They had a bunch of French bread pizzas, referred to in initial code. PMP (poor mans pizza), WGC(white garlic and cheese) and the always interesting WTF (chefs choice).

              I feel that if it plausibly goes with bread and cheese, or if it’s street food, then it will probably work on a pizza.

          • wiredfool 825 days ago
            Yeah, no tomato for most of mine. Though fresh sliced tomatoes are a common topping.

            They honey pizza reminds me of a pizza I got from a vending machine in France a couple years back, I think honey and chevre. There was this vending machine outside a pizza joint that would cook a whole pizza for you in about 5 minutes, presumably from cold preprepared pizzas.

        • toyg 825 days ago
          Is this satire? I hope it's satire.
          • wiredfool 825 days ago
            Nope. All real, most from the last couple of months. Quite a few are In the running for the best pizza of the night on any given night.
      • jjice 826 days ago
        Some people don't like sweets with their acids/savory foods. Claiming it's an argument over traditional pizza is a bit overkill.
        • ska 826 days ago
          How often are the same people as vociferous about disliking pork chops & apple sauce, chinese bbq, etc. ?

          It's seems a pretty silly thing to get worked up about. There are vastly more egregious slights to the good name of pizza in nearly every american frozen food aisle, after all.

      • ycombinete 826 days ago
        Also some of us just find the taste of things like pineapple on pizza and burgers, or maple syrup with bacon etc. disgusting
      • marcosdumay 826 days ago
        Nah, It can not be because a lot of people just dislike pineapple mixed with their food. No way, it can't be.
    • going_ham 826 days ago
      I think that pineapple topping on the pizza meme is designed by pizza elitist to fool normal people from trying it out. Once you try pizza with pineapple toppings, it gives this extraordinary taste. Sweet, sour and salty. All at same time!
      • bryanlarsen 826 days ago
        Just like a good salad, a pizza has 6 things: salt, crunch, fat (cheese), acid (tomatoes), sweet (pineapple/mango/fig or a stewed sweet tomato sauce) and umami (Parmigiano Reggiano/Grana Padano/etc or anchovy). But not all 6 in every bite.

        Most Americans use a fairly sweet pizza sauce. Adding pineapple to that makes it too sweet. But I like my sauce with more tomato acid, so a little bit of fig or pineapple complements the flavours. The nice thing about pineapple is that you don't get it in every bite like you do with a sweet sauce.

        Edit: and now I sound like the pizza snob. :) It should be 7 -- good pizza has both crisp and chew.

        • lvass 826 days ago
          Most americans use a fairly sweet everything. God even their barbecue is full of sugar. I have the impression the whole country is sugar addicted. I'm from a culture where mixing salty and sweet stuff is considered abhorrent (south america), I could not find a single food I liked in the time I spent in the US (except desserts), and was soon forced to cook myself or I'd barely eat at all.
          • Fwirt 826 days ago
            It gets added to pretty much every prepared food here whether you like it or not. Even "staples" like bread have sugar added even to the "healthy" brands. It's easy to get addicted when it's difficult to avoid unless you cook every meal at home from scratch. (And even then you have to be careful because some ingredients have sugar added to them.) There are many of us that don't like the situation but once you're addicted your tastes change and when everything around you keeps sneaking it in it's hard to eliminate from your diet.
    • simiones 826 days ago
      Most people in Europe especially, and especially in Southern Europe (Eastern Europe as well, but that's less relevant to pizza), tend to dislike sweet-and-salty combinations, with some limited exceptions (such as carrots or peas).
    • szszrk 826 days ago
      Tried pineapple pizza on multiple occasions and it never gave me a bad advice!
    • siver_john 826 days ago
      To be fair when I push the meme I do it because I personally dislike Pineapple, I sincerely don't care what people put on their personal pizza, just don't put it on mine. Counter, I have enjoyed Brussel Sprouts on pizza and I feel that is a much bigger sin.
      • retzkek 826 days ago
        Shaved Brussels sprouts, fried (or roasted), with a balsamic glaze? Sounds good to me!
    • mickeyp 826 days ago
      OP here. I just like funny quips; it's just there to break up my rambling monologuing :-)
    • bananamerica 826 days ago
      This meme is so popular because the overwhelming majority of people thinks pineapple on pizza is a disgusting abomination. I empathize with you, it's tough being the contrarian sometimes. I say that as someone who likes the Star Wars prequels :P
      • asciimov 826 days ago
        There is definitely a silent majority of people who love pineapple on their pizza. My local pizza guy tells me Hawaiian is one of his top selling pizzas.

        Those that like pineapple on their pizza just don't speak up because they don't feel the need to be harassed over their pizza choices.

    • memling 826 days ago
      > I really don't understand this pineapple on pizza meme. I think it's delicious!

      Arnold has an opinion.[0]

      [0] https://www.youtube.com/watch?v=pKV74qkokmk

    • C4stor 826 days ago
      If think the joke is that author himself don't side with the (mostly pointless) debate about pizza and pineapple, so whatever your own opinion, you can see his point.
    • Naga 826 days ago
      Hawaiian pizza (cheese, ham and pineapple) is normalized here in Canada. I'm not personally a fan, but I have always had a hard time finding it unusual.
      • esclerofilo 826 days ago
        Despite the name, it originated in Canada, you'd expect it to be normal there.
        • pantulis 826 days ago
          Pretty normal in Spain as well. In fact it's my go-to choice when ordering.
    • Koshkin 826 days ago
      As is emacs without the menu, the toolbar, and the scrollbar!
      • convolvatron 826 days ago
        I agree. when they added those things I immediately turned them off and never looked back. the author argues that they are just a couple lines..but they are a couple lines of useless noise
        • Jtsummers 826 days ago
          > but they are a couple lines of useless noise

          for people who know the system. The menubar is useful for discovery if you're new to the system, which seems to be the audience they're writing for.

    • euroderf 826 days ago
      But are you quite prepared for tuna on pizza ?
    • black6 826 days ago
      OT: mango is another good topping.
  • mynameismon 826 days ago
    Maybe it's me, but starting out with Emacs the previous month, I tried using Doom Emacs the other week, and the number of packages it was being used frightened me. Building your own init.el is much much better, because you know your Emacs in and out, and dont have random keybindings triggering stuff. Maybe I'll never get the popularity of Doom
    • thom 826 days ago
      Some people like ready made Emacs distros, some people like hand coding their init.el (don't forget your early-init.el!) Some people like Arch, some people like Ubuntu. Some people like Linux From Scratch, some people like typewriters. Live your life, be free.
      • thom 826 days ago
        It sometimes seems to me that there's this idea that unless you're customising Emacs and gaining complete understanding and mastery of its primitives, there's no reason to use it over another editor. As if the core editing experience is so horrible, why would you go through all that if you're not going to use the superpowered bits? I think this is doing a big injustice to how good most of Emacs and the packaged up versions are, even without a line of elisp.
    • rprospero 826 days ago
      > ... don't have random keybindings triggering stuff.

      As a long time Emacs user, I feel that this is slightly unfair. When I first started out, I found that my documents from Emacs were far more common than in other editors. It took me two years to realise that I was often bumping C-t where trying to hit C-r or C-y and silently transposing two characters. In over twenty years of Emacs usage, I have never once used C-t on purpose. I feel that this perfectly matches the "keybindings triggering random stuff" experience and it is fully there in vanilla Emacs.

      With twenty years of experience, I have my own, esoteric init file that I would not recommend on any newbie. However, I personally feel that Emacs has succeeded despite its default keybindings.

      • chipotle_coyote 826 days ago
        > In over twenty years of Emacs usage, I have never once used C-t on purpose.

        This is funny to me because, while I'm not an Emacs user, I'm a Mac user who's gotten used to the tiny subset of Emacs keybindings built into Cocoa text fields, and I use C-t fairly frequently! Apparently you do not make character transposition errors as often as I do.

        • rprospero 826 days ago
          That is really interesting. To be fair, I should have prefaced that I have cerebral palsy, so my typing patterns are likely different from most of the population.
        • __david__ 826 days ago
          I just wish M-t worked in the Cocoa text fields, I somehow use that more than C-t. And M-d, too—I accidentally type "∂" a lot. :-(
          • mrtranscendence 826 days ago
            You can enhance the set of keybindings by placing this file in ~/Library/KeyBindings, which will solve the M-d problem (though not the M-t one):

            https://github.com/ppwwyyxx/dotfiles/blob/master/macOS/Libra...

            It's a life saver.

          • chipotle_coyote 826 days ago
            I forget about the "control = by character, meta/escape = by word" idea because of that. (Maybe "smaller unit vs. bigger unit" is more accurate? I dunno.)

            I don't know what I'd do with that if I were actually an Emacs user, though, since I use the Option key for typing certain characters a fair amount. Although I'm sure I could remap Emacs meta to virtually anything else, because Emacs.

            • __david__ 826 days ago
              Yeah, there are certain unicode chars that I use a lot because they are convenient: option-; => …, option-shift-dash => —, option-0 => º, option-G => ©, option-M => µ, option-2 => ™, option-+ => ±. But most of the emacs conflicting ones aren't super useful to me, so I think I can live with them gone: ∑ƒ∂˜π∫†ç¬
            • hanche 826 days ago
              I have my emacs config set up so that the left Alt key is meta, while the right one retains its original function. Think of it like AltGr on your typical PC keyboard. But I am using Mitsuharu Yamamoto’s Mac port. I don’t know if that is possible using vanilla GNU emacs, since I haven’t used it in years.
    • uncletaco 826 days ago
      > Maybe I'll never get the popularity of doom

      Honestly its a double edged sword here. Doom has so many built in convenience functions like `set-font!` and `set-repl!` that an experienced elisp programmer would probably love it for building their own configuration.

      On the other hand it bundles so much that an inexperienced emacs user might be more keen to do the bare minimum and rely on the packages bundled with doom to give them all the cool stuff without much effort. After all, why "reinvent the wheel"? I personally don't agree with that sentiment, I think learning how to build and maintain a personal emacs config makes a person a better programmer generally, and makes them prone to reading and writing documentation rather than copying solutions.

      I started off with doom and even though I don't use it anymore I still find myself reading its source to figure out how Henrik approached a solution. Love it or hate it, Doom is great in both very good and bad ways for emacs users.

      • mynameismon 826 days ago
        > Doom has so many built in convenience functions like `set-font!` and `set-repl!` that an experienced elisp programmer would probably love it for building their own configuration.

        Fair enough, I came from a background of JavaScript and Python, and Lisp was entirely foreign to me, let alone Elisp.

        > After all, why "reinvent the wheel"?

        I think its not of "reinvent the wheel", but let the other person do the decision making for you, including picking packages, setting up the modeline, so on and so forth. Starting out with a bare Emacs installation, you have to piece together the various packages that you would want to use, where as with Doom, you get everything out of the box. Also, maintaining your own init.el helps one learn Elisp

        > I still find myself reading its source to figure out how Henrik approached a solution

        For example?

        • uncletaco 826 days ago
          For example the way fonts are implemented in doom is really clean and covers edge cases. I also borrowed the `set-repl` and some code to autoinsert some things. Doom's core modules have a lot of good ideas wrt making configuration easier.
      • bananamerica 826 days ago
        I'd just like to point out that every single one of Doom's modules is optional, and you can install it without any external packages whatsoever (including Evil) if that's what you want.
        • uncletaco 826 days ago
          Which is why I mentioned the convenience functions that come with doom. You're right of course but I wasn't trying to imply that doom couldn't be used as a framework.
    • bananamerica 826 days ago
      Doom Emacs is excellent. I believe you were negatively impressed by the default install, but you can install it without any packages you don't wan't, or any package at all. You can even remove Evil altogether.

      You can also easily remove anything afterwards.

      Doom is essential for my sanity, and extremely flexible. I can do everything I want, just like on a barebones install. But I do it in a way that is way simpler, more practical, and performant. I'd use Doom even without any of its modules, just for the macros, the speed, and the sane configuration layout.

      I tried the build your own route for 2 years, ended up with a huge messy init impossible to maintain. Doom removes a lot of complexity and provides extremely useful macros. The guy really knows what he's doing, and the optimizations that he uses are impressive.

    • tharne 826 days ago
      I think doom is really good for inspiration. I used it for a while and it gave me a lot of good ideas on the kinds of things I could do with emacs and elisp.

      I now use my own much simpler config, but I've borrowed heavily from the things I like about Doom.

      • clircle 826 days ago
        Yes, this is exactly how I use Doom. When I first found it, I transplanted its startup optimizations into my existing config, but left everything else alone. When I look to do something new in Emacs, one of my first instincts is "well, let's see how Doom is doing it."

        It's works well because I fall into the Evil+Use-package Emacs hegemony with my custom config.

    • remedan 826 days ago
      I had a very similar experience when I decided to learn Emacs recently. The first thing I did was try Doom Emacs. It was nice but I felt that there is this big layer of stuff separating me from having complete control over my editor.

      So I deleted my config. Went through the tutorial with vanilla setup. Then I continuously kept adding packages and tinkering with my config. After about two weeks, I felt that my productivity was on par with what it was previously in Neovim.

      I've been using Emacs for a couple of months now and I'm happy I went this route. It is a tool I use almost daily and thus having a deep level of understanding and control is worth it.

      • lambdaba 826 days ago
        This is what I did (after brief stint with Spacemacs), only what I did is gradually break apart doom-emacs from inside it, as in remove abstractions and stuff I didn't use until it was a plain (single file) emacs config, then went the other direction with modularisation.

        This was very educative and I learned a lot about Emacs and Elisp.

        The irony is after all of this I'm back to Vim and I don't feel like going back to Emacs (yet).

    • donio 826 days ago
      Yes, gradually building your own config is a much better approach on the long run. Start lean, learn the basics and add one thing at a time as you learn. Always have complete mastery of your .emacs and understand every line: why it is there, what exactly it does. Never blindly copy random stuff wholesale without understanding it.
      • sping 826 days ago
        I have to say I don't particularly see the wisdom of this (common) view.

        It's acceptable to people to use the standard Elisp, and Emacs itself, without digesting that code, but somehow using a canned config is bad. I find the choice of where to draw the dividing line somewhat arbitrary.

    • mcbuilder 826 days ago
      If you have spent years writing your own config, you appreciate all the things doom brings to the table. I know I'd never end up writing such a good system from the ground up.
  • drothlis 826 days ago
    Years ago I wrote the Emacs tutorial I wish had existed when I was learning Emacs: https://david.rothlis.net/emacs/tutorial.html

    It follows a similar philosophy as the OP: Start by reading Emacs's built-in tutorial, and then my tutorial shows you how to leverage the built-in help system to figure out how to achieve what you want to do.

    • mickeyp 826 days ago
      I'm the OP. That's a nice tutorial, and I agree with your sentiment that you should build on Emacs's ability to query it to figure out what to do. That's the main focus of my book, too, for the exact same reason.
    • NateEag 826 days ago
      When people ask me how to learn Emacs, I point them to your tutorial.

      It was hugely helpful to me in learning Emacs.

      Thank you so much for writing it!

      • drothlis 825 days ago
        Thanks! I spent 3-4 months on it (getting up at 5am most days to spend 1-2 hours on it before my day job) so it's nice to know it was of some use! :-)
  • bitwize 826 days ago
    I agree that the tool and menu bars are helpful for beginners. I disable mine to reclaim the vertical space (precious in a 16:9 world), to focus my attention on using the command keys, and because I'm a relatively experienced Emacs user! If keeping them helps you get your way around Emacs, by all means go nuts!
  • taeric 826 days ago
    I do disable those things. But mostly out of aesthetics. That and I am easily distracted. I remember used to trying to find how to accommodate all items in the menu bar into my use.

    Completely agree with this article, though. Happy with my purchase of this book a while back.

  • aidenn0 826 days ago
    For those picking up emacs for lisp development, I'll add another piece of terrible advice: enabling paredit mode.

    I think these all have a similar theme to them "I am more productive now since I have turned them on, so I wish I had switched sooner" but they ignore the fact that each of those things adds friction to learning the basics, and at some point people will just nope-out.

    • felideon 826 days ago
      Yes, good point. Learn how to balance parens with rainbow delimiters (if anything) and, once you you're comfortable with sexps, give paredit a try.
  • aww_dang 826 days ago
    Feels like these problems mostly relate to the tech-wizard elitism theme. By all means use the help features and GUI menus if that's what you need. I believe when you run these commands via GUI you also get feedback explaining the equivalent keystroke sequence.

    Reminds me of the old days of IRC posturing, newbie bashing and RTFMing. Today most info can be obtained by a well crafted search query.

  • jmclnx 826 days ago
    Correct, I did not know about 'C-h k', very nice !

    very nice write up

  • thom 826 days ago
    I dunno, everything the menu does can be recreated in the minibuffer (and you have things like apropos if you're really lost). Personally I like to reclaim as much space as possible, so I turn off modelines too (I have a bit of status info written into the minibuffer, but I'd kill that too if you could).
  • crumbits 826 days ago
    >menu bar

    I never leave it enabled any more. When I was a beginner it was helpful but as time goes on you learn more of the system and better ways of finding commands.

    One thing I suggest is building emacs without dbus and using only Athena widgets. Both contribute to overall emacs stability.

  • rbanffy 826 days ago
    I have been turning off the menu bar for quite some time because I get distracted easily and any content that's not necessary just gets in the way.

    That said, you can always call it up as a pop-up menu.

    • forgetfulness 826 days ago
      The menu bar is pretty good for discovery, you'll have to rely more on naming convention and documentation without it.

      The toolbar is pretty fungible though, few modes do anything with it and the core functionality you get from the standard chords you find in the tutorial, little bang for the pixels.

  • dark-star 826 days ago
    "But just like pizza with pineapple, people do occasionally give out downright bad advice."

    I stopped reading after this. If you want to look like you're objective, don't use pizza as an argument

    • jrumbut 826 days ago
      This is advice for how to give text editor configuration advice. The pizza comparison is apt because it's a matter of taste.

      If the author tried to look objective it would be a false front.

    • oblio 826 days ago
      It's just a joke.
  • distantsounds 826 days ago
    so let me get this straight:

    - read the manual - follow the tutorial - customize it to your liking

    wow, what enlightening advice! this must be unique to emacs and not _any_other piece of software!

    once again, all you need to get FP'd on hackernews is to put the word "emacs" in your title. zoom! to the front page!

    • drothlis 826 days ago
      I suspect it's because so many Emacs tutorials out there cover the same material as the built-in tutorial. And so many pre-packaged Emacs configuration files disable the menu-bar for no good reason other than that's what everyone else seems to be doing.

      e.g. "Emacs Prelude", one such configuration or "distribution" of Emacs, used to disable the menu-bar by default as recently as a year ago: https://github.com/bbatsov/prelude/commit/878cffb

    • bananamerica 826 days ago
      Acessing manual, documentation, values, functions, and source code on Emacs is so easy that it would be hard to summarize all the ways you can do it. It's an integral part of your workflow, and literally unlike anything else. Unlike other programs, that really can and should be an integral part of your daily routine.

      One thing I dislike about the manual is that it rarely presents examples, but commands like describe-variable and describe-function often help elucidate usage. Not to mention external packages that makes all that even easier.

    • alpaca128 826 days ago
      It would be great if every other software had documentation comparable to Emacs', but that's simply not the case.
    • fabianmg 826 days ago
      We have found the vim user...