9 ms·
Mastering Emacs
- gumby 3y agoI feel like beginners should not read things like this. Just use the tool as little customised as possible, and be comfortable with it. Then look at making it more comfortable or more capable. If an enthusiast starts you down the customisation path up front, it's surely overwhelming. When I learned emacs I just learned the tiny handful of motion commands: fwd, back, up down, by character, line, paragraph, code unit; plus opening and saving files -- basically the same power of Atom or Sublime or such. Then because of how emacs works I'd learn a new command from time to time and wonder how I lived without it. Even now 45 years later, I learn a new capability every few weeks, though of course Emacs is a lot more capable than it used to be! A book like this is great, of course, once you're already comfortable with it.
- shaunxcode 3y agoI know this is trivial BUT I really wish this was a physical book.
- xormapmap 3y agoI'm a long time vim user who tried Emacs for a good few months. I started out with a minimal config and just got used to it out of the box, and over time evolved to using something more like evil mode and packages for everything. The things that drove me back to vim were basically: - Poor mercurial support. Monky is supposed to be like Magit but lacked support for staging individual hunks or any of the hg evolution commands. This forced me to use terminal modes which... - ...The terminal modes are absolutely atrocious half baked pieces of crap. The only advice I really got on this was that using the terminal modes is "not the emacs way". - I found it to be very opinionated about the style of C code I was writing. It tries to automatically indent things in very specific ways and god forbid you want to change the level of indentation of a block. You can change the way emacs indents your code in your config, but again, god forbid you ever want to do something slightly different to your config. - Working with panes (windows), buffers, tabs etc. is a pain. You close a buffer and it disappears from the screen and is actually still open, and it pops up again when you wanted to go to something else. This sounds like a bad review but I did for the most part enjoy using it. I just liked vim with tmux more.
- helmut_hed 3y agoRe: the C code, Emacs will happily let you ignore your own config settings. Just turn off anything labeled "electric" and nothing will happen automatically. And don't press tab, that will reindent the current line.
- mkesper 3y ago29% off right now.
- beebmam 3y agoYear after year I find myself using vscode instead of emacs for almost everything. Until org-mode support in vscode improves, I'll keep using emacs for that.
- waynesonfire 3y agovscode-type tools will come and go.... eclipse, intellij, vscode... emacs will always be there.
- aguynamedben 3y agoI keep trying VS Code, but I hate how when I split the screen three wide ("splits") it wants to open "editors" in each of the columns, even if it's the same file. I want a "buffer" like Emacs has that can be called up into any of the "splits" without reopening the file. I disable the tabs display, but when I visit a file in each of the three columns (i.e. what in Emacs would be calling a buffer into a window) I end up with the same file open three different times, once for each split. Then the fast switcher just gets full of dupes. BLAH! I really wish VS Code used the Emacs model of completely disjoined (a) buffers, (b) windows, (c) frames, but instead there's a hierarchical approach of Splits -> Editors. I've dug into VS Code issues about this, and it seems the hierarchy between Splits -> Editors is a strong parent-child relationship embedded deeply within VS Code's model and is unlikely to change. And that's why I can't switch. That and magit.
- krysp 3y agoThis is my final quibble with VSCode as well - except I'm coming from Vim. I've hunted high and low through the settings - if anyone from the VSCode team is reading this, there's not another feature that's more vital to match vim/Emacs utility!
- zelphirkalt 3y agoWhile Emacs is opinionated in its own way, it is extremely configurable, programmable, modifiable, customizable to ones needs. I guess it will take a long long time, until vscode is as modifiable as Emacs, if ever. And maybe that is not vscode's goal anyway.
- psunavy03 3y agoI don't see why people are still using 1970s-era IDEs in 2023. Sure, it's a joke that emacs and vim users are at loggerheads, but name me one user of either who isn't a graybeard at this point. And specifically a graybeard who refuses to use more modern tools.
- natsucks 3y agoi'll take this banter. it's fun. long live emacs.
- helmut_hed 3y agoThere are a remarkable number of people attending our Emacs meetup who are under 30. I wouldn't believe it if I hadn't seen it myself.
- j7ake 3y agoSystems admin people who deal with computing clusters often use vim.
- deleted 3y ago[deleted]
- goku12 3y agoThe availability of vim in some systems is not reliable. Often only either vi or nano is available. Containers may not have even that (not that it's a good practice to edit files inside containers. It's just for experiments). Emacs meanwhile, has tramp. It lets you edit files remotely and transparently - even inside Kubernetes pods. And you still get to use all your Emacs customization.
- lbj 3y agoIt's crazy that here in 2023, Emacs is still the absolute beast when it comes to developer productivity. I had a colleague review one of my workflows the other week and after a minute or so he said "Whoa, I would have been in 5 different tools by now". If you're not into Emacs, I suggest you give it a whirl. For most development, nothing else will get you close to the joy and productivity that a well configured Emacs can.
- anonuser123456 3y agoAs a long time emacs user, I can’t describe enough how much I love VS Code over emacs. And yes, I was a power user with all the fancy modes. And yes, I work entirely with Linux.
- nhlx2 3y agoEmacs fancy modes?
- yawpitch 3y ago^ with the caveat that a well-configured emacs requires a well-configured emacs, often leading to an infinite loop.
- goku12 3y agoHow is that true at all? I started with plain Emacs and gradually updated the configuration to the level of polish I wanted. Even if you're impatient and want something modern up front, the advise given is to start with a starter pack like Doom Emacs.
- ianleeclark 3y agoI installed spacemacs 5ish years ago and have added maybe 20 lines to my configuration since then. None in the past 4 years. It's really overstated the amount of maintenance that Emacs requires.
- globular-toast 3y agoI recently made some big changes to my Emacs config to incorporate new tooling like LSP into my workflow. It turned into quite an extensive change as I re-evaluated many extensions and replaced some with newer alternatives. Took a few evenings. But I hadn't touched my config for three years before that! I've been using Emacs for 15 years and you definitely get to a point where you don't need to tweak it every day. 3 years is the kind of time some people would switch to a completely new editor. I have, in a way, except it still supports all the workflows that have become familiar over the years.
- samuell 3y agoAnybody who read it? Is it any good? (I'm a Vim user, but have sometimes half-pondered the thought of getting into Emacs, (using evil-mode of course), for the org-mode & co)
- goku12 3y agoI'm a regular Emacs user. I haven't read the book, but considered buying it once. The ToC and some intro is given in their books page [1]. I didn't buy it because I was already familiar with most of the things in the ToC. The book would be a good intro for beginners and those who want to do things in pure Emacs fashion. However, if you are also a vim user (like me), you're likely to end up using 'evil' package for vim keybindings. Evil is actually very good at emulating vim features inside Emacs. Emacs is also extensively documented and highly discoverable - even within Emacs. There is a built-in tutorial (like vimtutor). And once you get past a few lessons using their info pages or website, you will have enough skill to pull up the documentation for all core features. The info pages are often books on their own right. I personally never felt the need for a book. That said, I do recommend buying the book to support the author. Their articles on the masteringemacs website are pleasant and high quality stuff. [1] https://www.masteringemacs.org/book https://www.masteringemacs.org/book
- k4r1 3y agoI'm made the transition from Vim to Emacs. I now primarily use Emacs with Evil mode and still use Vim for quick edits with the Vim configuration as a subset of my Emacs configuration. It's the best of both worlds. The Emacs text editing platform is on another level regarding automation, integration and productivity. I have my own config, but I recommend trying the Doom Emacs configuration system if you want to get up and running quickly. I have read the book and it is the best Emacs book I know of. Highly recommended.
- Wildgoose 3y agoI've read it and I recommend it. I recommend you simply make an alphabetic list of various Emacs commands. You will see the correspondence between many of the commands depending on the modifier (Ctrl, Alt, Ctrl-Alt, etc.) that is used. Listing Control then Alt (Meta) we have: A - Beginning of Line, Beginning of Sentence; B - Back one Character, Back one Word; D - Delete Character, Delete Word; E - End of Line, End of Sentence; F - Forward one Character, Forward one Word. and so on. Most of the letters chosen are mnemonic so they are easy to remember. Once you have memorised the standard Control and Alt letter combinations, plus a few more such as \, (space), and / and you will find the commands just "fit". They are "in your fingers". They are also usable on the command-line, bash defaults to using Emacs editing commands as well.
- submeta 3y agoI highly recommend Mickey Petterson's book on Emacs. Despite using Emacs for over a decade, I discovered invaluable insights from his guide. Currently, I rely on VS Code for coding, but turn to Emacs for text editing, macros, and text transformation with Elisp. For a fast track to mastering Emacs, Mickey's book is a must-read.
- sleiben 3y agoI saw people (in their 30s) using emacs for almost everything. Coding, reading mails, organizing their todos and so on. It was impressive to see their workflow. The only thing which hold me back to really learn it, were the stories about repetitive strain injuries: https://news.ycombinator.com/item?id=36718793 https://news.ycombinator.com/item?id=36718793
- natsucks 3y agoThe native bindings are...not great. Personally i use xah-fly-keys, but evil (vim) keybindings are popular.
- tmtvl 3y agoIn 2018 I switched from Vim (used for 5 years) to Emacs and I have no complaints about RSI/CT. It may be because I also learned to properly type with Dvorak at the same time. Unlike most Vim switchers I don't use Evil because modal editing just doesn't work for me. I always find myself having to change mode to do something and half the time the mode change doesn't take and shenanigans occur.
- b5n 3y agoI've always just used my palm for [`C`]. From OP of your link: http://xahlee.info/kbd/i2/palm_control_key_youngstabber_2013-08-20.jpg http://xahlee.info/kbd/i2/palm_control_key_youngstabber_2013...
- jgilias 3y agoTry Doom Emacs and configure it with evil mode (vim keybindings). Presto, problem solved!
- hooloovoo_zoo 3y agoEmacs users may enjoy: Interview with an Emacs Enthusiast in 2023 [Colorized] https://www.youtube.com/watch?v=urcL86UpqZc https://www.youtube.com/watch?v=urcL86UpqZc.
- RustyRussell 3y agoI would learn a lot, but I really want a printed version! Maybe I can convince the local print shop do to it double sided and bind it?
- al_be_back 3y agoI don't much about gr[a|e]ybeards or being old, but emacs is legendary, still use it along side my main ide. Tempted by the 29% discount on the book, Mastering Emacs is a well-polished emacs blog
- 2-718-281-828 3y agoany updates regarding neoemacs? for me the appeal of emacs is that it is so very cyberpunk and that it makes me feel like a hacker. seriously. also reducing the tool set appeals to my natural inclination towards minimalism.
- lproven 3y agoI will take the time to master Emacs when Emacs comes to meet me in the middle, and adopts what has been the industry-standard UI for a third of a century: CUA. I would love someone to do an Emacs distro which integrated ErgoEmacs into it from the beginning: https://ergoemacs.github.io/ https://ergoemacs.github.io/ No, CUA-mode is not enough.
- omaranto 3y agoWhy is CUA-mode not enough?
- lproven 3y agoBecause it does not change the program's UI. It just changes a few editing keys. I used to know one or two dozen totally different editors in the 1980s, some radically different, such as Acorn's two-cursor system, with a source cursor and a target cursor. There was no standardisation; this was necessary if you wanted to be able to edit text on any random platform you came across. I also worked with one or two dozen totally different operating systems in those days, from Netware to RISC OS to EPOC16 to CP/M to AIX 2 to OS/2 1 to GEOS to TOS/GEM to AmigaOS. Now, it's different. In the 1990s there was a huge wave of standardisation. Most of those OSes went away and the few that survived adopted standard UIs. IBM CUA became the industry-standard UI, for DOS, Windows 2/3/95/NT upwards, for Linux with Qt or Gtk based GUIs, for much of Mac OS X, for OS/2 2.x and upwards. The same base menu layout. The same keystrokes: Ctrl-S saves, Ctrl-O opens, Ctrl-F finds. Yes even on a Mac (but it's Cmd-S, Cmd-O, Cmd-F, but it's very easy to adjust.) I no longer have to know a dozen editors. I know one UI and it works on every editor from FreeDOS to Windows 11 to macOS to KDE 5.27 to Xfce, LXDE, LXQt, Cinnamon, MATE. (OK, not GNOME, but that is just one reason among many that I don't use GNOME.) It is the industry standard and it has been for a third of a century. Any new editor I might try must conform to it, or I am not wasting my time. I don't care how much legacy it has. I don't care how powerful it is. I don't care if it will break 40 years of tradition. It's meant to be infinitely customisable. So customise it. If the user has any existing config file at all, fine, honour it, turn off all the new stuff and start in 1976 mode. No problem. I have no config. I am 100% happy for that to stay for those who know it.
- MassiveBonk51 3y agoEmacs is quite alluring as an idea. I wish we had a "higher" level version of it that could support composing in proper browsers etc. Now I realize this is basically a tiling WM, but I guess I want more interoperability between programs and ability to pass data between them programmatically.
- hatmatrix 3y agoBeen using emacs since 2003. One thing I turn to VS Code these days for is Jupyter / Quarto notebooks. It's not possible to have the same development workflow with Quarto and Org-babel since you can't run/rerun code chunks up to your current cell and automate figure management (for Org-babel). I think these are not difficult to implement but these days I just want to use something that has these features out of the box and that notebook space is rapidly changing.
- d0mine 3y agoI've used `M-x org-babel-execute-subtree` to run/rerun code blocks in a subtree. No issues with plotting figures in emacs-jupyter https://github.com/emacs-jupyter/jupyter#org-mode-source-blocks https://github.com/emacs-jupyter/jupyter#org-mode-source-blo...
- hatmatrix 3y agoThis about to blow my mind
- helmut_hed 3y agoI used https://github.com/millejoh/emacs-ipython-notebook https://github.com/millejoh/emacs-ipython-notebook at one employer and it works quite well for Jupyter. Of course Org is great but if your coworkers are unfamiliar it's probably a non-starter.