i am using emacs for around an year and still learned 1-2 new things :D thanx
@quillonri2 жыл бұрын
The more I work in emacs, the more that I like it. I've got this playlist saved and am finding it very helpful! Thank you!
@meowcus_2 жыл бұрын
So glad you are making a new series about configuring Emacs. I just finished a project customizing Neovim with Lua and would love to create my own custom config for Emacs and not feel so tied to Doom Emacs. Keep up the great work!
@ChristianTietze2 жыл бұрын
Looking forward to refer to the series as a starting point for friends and family :)
@dilosilv6112 ай бұрын
I see he hasn't 'finished' this, the "Emacs From Scratch (New)" playlist on this channel only has 3 videos? I guess I'll watch the older 2020 version...
@leonhardmay35692 жыл бұрын
I'm just slowly switching to emacs, this new series arrived just in time!
@marcel9482 жыл бұрын
Although I have setup my Emacs config years ago, it’s a joy to watch your videos, even one that is barely relevant for me. - Keep up!
@ciaranmulloy83412 жыл бұрын
Excellent introduction on starting your emacs configuration. I've been using emacs for a while and I learned several useful tips! Great work!
@SystemCrafters2 жыл бұрын
Thanks a lot Ciaran!
@rahulpyd1 Жыл бұрын
Very helpful. Have used Emacs for a while but got to learn a few new things from this video. Thanks.
@naolmergia2 жыл бұрын
Now you made it for me!!!, I've been struggling by the previous videos of yours!!!. this one got me with the questions I had in my mind Thanks a lot!!!
@SystemCrafters2 жыл бұрын
Glad to hear that!
@boyuanning28792 жыл бұрын
New video on the 1st day of Chinese new year, nice!!!
@SystemCrafters2 жыл бұрын
Happy new year!
@tessiof2 жыл бұрын
So excited for this new series!
@jgowthamraam2 жыл бұрын
Great. Wow ! . Excited about the video. I was expecting the same for getting started using Elisp and config in Emacs. Expecting more videos from you.
@Sz3ntAr2 жыл бұрын
I've got a lot of great ideas from your config from scratch series (also learnt a lot) and I can't wait for the vast knowledge I'll obtain from this time
@JanneSauvala2 жыл бұрын
Great start for the series. I cannot wait for the next video.
@nichtgestalt2 жыл бұрын
Very cool! I just started today with configuring GNU Emacs and it really does make fun! Keep up the good work!
@ppali112 жыл бұрын
Slow pace but thorough. Activating listeners by pointing what they can check out quickly themselves. To the point elisp explanations. Can this level be maintained? I hope. Good job!
@SystemCrafters2 жыл бұрын
That's the plan!
@eis3nheim2 жыл бұрын
This is absolutely amazing, I just can't wait for the next video. Superb series.
@SystemCrafters2 жыл бұрын
Thank you!
@oliveiracaio572 жыл бұрын
Finally understood the meaning of ' before a name. It's like in Scheme. Nice. (This comment probably shows that I didn't watch the whole series of elisp. :P)
@dipalzambare92572 жыл бұрын
Thanks Devid, love this short and focused format!
@abarocio802 жыл бұрын
Excellent video. A must-watch for newbies Btw, C-x C-e also evaluates the last expression. For some (like me) it is easier to concatenate key-cords than press a single more complicated key-chord. May be you need to explain why to disable the menu-bar (or tool-bar). Some people may have that for a while to not feel too lost as like within vi(m). It also gives discoverability in a more "expected" way. Great work!
@AndersJackson2 жыл бұрын
Actually, meny-bar is usefull, but tool-bar not so much, so I do agree with you.
@pasan.2 жыл бұрын
Finally I can start to use emacs
@siljrath2 жыл бұрын
aces. thanks so much for having, and pointing out, the keybinding thing. had asked for such, really glad you have it now. ace pedagogy dev. (shorter more concise intros might work too... even jumping straight into it.) lovin it. cheers.
@SystemCrafters2 жыл бұрын
Thanks! In the the next videos we'll definitely jump right into it, this one needed a little extra context since config beginners might need it.
@martinpetersen31872 жыл бұрын
Thank you so much. You know what I thank you for. Really appreciate your new style.👍👍👍
@wjcwukong2 жыл бұрын
Great work! Wishing you a happy and prosperous Year of the Tiger!
@SystemCrafters2 жыл бұрын
Happy new year, and thank you!
@haidermirza1922 жыл бұрын
Thank you for teaching me how to fix the (quite anoyying) visible-bell; Once disabled, it now uses my motherboard's buzzer which is quite dope 🙂
@haidermirza1922 жыл бұрын
Realised it was enabled because of some emacs lisp code I copied. Turns out that it is quite important to understand what copied code does.
@SystemCrafters2 жыл бұрын
That would be annoying indeed!
@gabioeste2 жыл бұрын
I can only say great video!! Super helpful. Now some things become clear ! Thank you for this series
@albertojorgebaezacampuzano75632 жыл бұрын
Hello David, starting a new series of emacs from scratch is a wonderful thing for us, who uses emacs for everything. Look in the case of emacs for windows i notice that visible-bell t does not cause any effect, in other words there are not flashes. However, searching on the web i saw there is a possibility to make only the mode line flash. this is the code: (This might or might not be useful) (setq inhibit-startup-message t visible-bell t ring-bell-function 'flash-mode-line) ;; function to flash the mode line (defun flash-mode-line () (invert-face 'mode-line) (run-with-timer 0.1 nil #'invert-face 'mode-line))
@SystemCrafters2 жыл бұрын
Yep, doom-modeline has a similar capability and I use it!
@RonnieNissan2 жыл бұрын
Thank you for this amazing video David.
@артеммамаев-я8л2 жыл бұрын
keep up the good work! Thanks for the video!
@malcolmkahora53182 жыл бұрын
Great tutorial didn't know about C-h o
@SivaKumar-ne2wb2 жыл бұрын
These are the final days for my vim editor:)
@noam652 жыл бұрын
This is awesome! Thank you!
@charlessmith54652 жыл бұрын
11:28 I reflexively lowered the volume when you were about to demonstrate visible-bell 🤣 _THE PC SPEAKER REMINDS YOU IT EXISTS, JARRINGLY._ At least on Linux; I think Windows plays a WAV file through any connected speakers depending on the "sound theme" or whatever they call it these days.
@SystemCrafters2 жыл бұрын
Smart move! Luckily my setup doesn't make a bell noise at all in these cases
@gaialoves2 жыл бұрын
bonega instruisto!
@Pedro-jj7gp2 жыл бұрын
Great intro! I can't wait for the next one. Btw, how are you showing the last command in the modeline?
@SystemCrafters2 жыл бұрын
Thanks! I write some custom code that emulates tarsius' Keycast package, you can install that package to get a better result than what I'm doing
@PETKAKK172 жыл бұрын
Thank you for your work! I wish I could leave more than one like
@SystemCrafters2 жыл бұрын
Your like and comment is plenty, thanks!
@SystemCrafters2 жыл бұрын
Thanks for pointing that out! I'll update the show notes
@johannesrodt2902 жыл бұрын
Happy to see shorter videos again
@intermarer91452 жыл бұрын
Great video! Went to check out your other ones hoping to learn some more and oooof... they are all 1-2 hours long. Just a quick note in the suggestion box - shorter vids :)
@SystemCrafters2 жыл бұрын
The 2 hour long videos are stream recordings. Many of my tutorial videos are less than one hour
@3timeszero2 жыл бұрын
Time to learn me some emacs. At last.
@wyfyj Жыл бұрын
Thank you for this video
@davidjeters2 жыл бұрын
Great Video! I like seeing your startup screen as it let's me know exactly what version of emacs that you are using. Such as 28.0.60 which can be important to users as these videos age. Maybe knowing which version of GTK and cairo could be helpful, but I am not sure.
@SystemCrafters2 жыл бұрын
Probably not as important, but couldn't hurt! Let me know if you need to know which ones I'm using and I'll look it up
@davidjeters2 жыл бұрын
@@SystemCrafters Maybe there is some confusion about my comment. On your emacs startup message which was inhibited in the video, it provides the following information about the emacs build on your system. Emacs: 28.0.60 GTK version 3.24.30 Cairo version 1.16.0 My point was that startup message can provide useful information and maybe we should not be so quick to dismiss it.
@alanmauriciocarrascoperez21882 жыл бұрын
really nice content!
@cybu64662 жыл бұрын
Really helpful, thank you. Already deepening my understanding! Do you plan to go into org mode using python in :session mode at some point?
@SystemCrafters2 жыл бұрын
I really should make a video about that. Literate programming in Org is really nice
@fabiano92772 жыл бұрын
Gosh. Your content is awesome. 🥳👍
@SystemCrafters2 жыл бұрын
Thanks a lot!
@fabiano92772 жыл бұрын
I also set the variable initial-scratch-message to "" because i like a blank screen or buffer when i start Emacs.
@SystemCrafters2 жыл бұрын
That's a cool idea!
@NelsonIngersoll2 жыл бұрын
Just a quick heads up... in the section "Setting the theme" you refer to the ' apostrophe as a ; semi-colon. I believe that is a mistake.
@cfraizer Жыл бұрын
Several times starting at timestamp 17:15, you misspeak and say "semicolon" when you mean "single-quote" or "apostrophe". (Oops!)
@melancholy-engineering2 жыл бұрын
Thanks for your content! Its amazing! Since you are very powerful emacs user, maybe you know good solution for set up line height how it works in modern editors? In emacs sadly it looks so ugly. For example line-spacing property do only bottom padding and it look awkward.
@AndersJackson2 жыл бұрын
Emacs is basically about editing text efficient, and not so much about looking good. That said, you should probably check out the git repository and talk to the programmers that do GTK frontend to Emacs, or what you using. There are different frontends for different OS:es, and if you are good at working with front end programming, they could probably use some help there.
@КириллСандрыгайло2 жыл бұрын
Thanks u a lot, bro!!!
@kozas010 ай бұрын
I don't like global-display-line-numbers-mode, instead I enable it only for prog-mode (add-hook 'prog-mode-hook 'display-line-numbers-mode) and have a keybind to toggle it for those rare cases I need it somewhere else.
@AndersJackson2 жыл бұрын
Great as usually. Some nit picking though. Character " : " is colon, " ; " is semicolon, " ' " is single quote.
@SystemCrafters2 жыл бұрын
Yes, someone else pointed out that my mouth said something other than what my brain intended :)
@AndersJackson2 жыл бұрын
@@SystemCrafters well, that is what happens at times. 🙂 Still great presentation. I also call " " " double quote and " ` " back tick. " [ " bracket and " { " curly bracket, with prefix left and right if needed and not shown by context. What is " ~ " called?
@SystemCrafters2 жыл бұрын
Tilde is what I usually see it called
@AndersJackson2 жыл бұрын
@@SystemCrafters then we do agree on that, too. 🙂
@thomasvoneyben83972 жыл бұрын
Minor correction for the content at 17:30: ; is a semicolon ‘ is a single quote, or an apostrophe Just to help in case one listens more than one watches you Greta and thorough video
@SystemCrafters2 жыл бұрын
What you saw is the result of me being in a rush to get through the video without making it too long so my brain pulled the wrong name out :)
@thomasvoneyben83972 жыл бұрын
@@SystemCrafters I know that feeling all to much (I'm impressed with how much must be handled while making a YT video (dual emacs, OBS, live chat etc.) - just keep 'em comming
@AndersJackson2 жыл бұрын
@@thomasvoneyben8397 you spelled Great wrong. 🙂
@NiccoSebFischer2 жыл бұрын
I'm currently using a prebuild emacs configuration (spacemacs) with some modifactions. But I would like to build a configuration from scratch. How do you load the empty emacs instance in your video (maybe at this point it is clear, that I don't have a clue, what I'm doing)?
@AndersJackson2 жыл бұрын
You could start Emacs without reading your init files with: emacs -Q But basically just move the old configuration out of the way, and then use the new which you build. You can also look at cemacs2 (I think that is the right name) which allows you to chose which configuration you will us when you start. So you could have many init files and switch between them. But it is a bit compilcated to use. But the easy way is this: mv ~/.emacs.d ~/.emacs.d.spacemacs mkdir ~/.emacs.d And now you are done. If you want to switch configuration, just do this. mv ~/.emacs.d ~/.emacs.d.vanilla mv ~/.emacs.d.spacemacs ~/.emacs.d And when you start Emacs, it will use Spacemacs. And to return, just stop your Emacs and do mv ~/.emacs.d ~/.emacs.d.spacemacs mv ~/.emacs.d.vanilla ~/.emacs.d You could put that in a script like this, so you can easy switch between Emacs vanilla and Emacs specemacs by running ./switchemacs.sh Just do this in a terminal, and it will create the setup so it will work for you. (Have written this without testing, so it might be an error there. If so, tell me here. if [ ! -d ~/.emacs.d.origin ] ; then cp -r ~/.emacs.d ~/.emacs.d.origin; fi # Make a backup of your ~/.emacs.d cat > switchemacs.sh
@gjgitboy96532 ай бұрын
Why did you create this? What was wrong with the old 'Emacs From Scratch'? Thanks..
@gaialoves2 жыл бұрын
Try it out!: - I tried the functions hl-line-mode and blink-cursor-mode with value 'toggle, then C-M x and the result was WOOF! -I have a question, can a symbol be a variable and also a function? For example what happens with indent-tabs-mode.
@AndersJackson2 жыл бұрын
Symbol in lisp, and elisp, is a value of its own. The value is the symbol itself. So 'noerror has the value noerror. Useful as you can compare if some variable got that value. Yes, the value of a symbol can be converted to a string and back. But that is usually not don that often, not in programs. functions are just a value associated with the function value of a symbol. A function value can be a native function or a lambda expression. variables are just a value associated with the value value of a symbol. That can be anything. indent-tabs-mode are a function. It can be called with or without an argument. Functions which control modes, that usually ends with suffix -mode do toggle the mode on or of when called without a value, and turn it off with the argument nil (which is also false) and turn it on with value integer 1. You can always read the manual page for a variable or function with C-h f or C-h v in Emacs. Default is chosen by the word the cursor points at.
@blackslav14972 жыл бұрын
So just to be clear... When i hit ctrl x, ctrl f I save to the file init.el or ~/.config/emacs/init.el ? What if I created the file just init.el ? Is that ok?
@SystemCrafters2 жыл бұрын
It has to be in one of the expected directory locations for Emacs to find it, you can create the file however you like as long as it's in the right place
@blackslav14972 жыл бұрын
@@SystemCrafters Ok is that the reason probably when I save it doesnt erase the menu like in your case... Cause I cant even get past step 1...This is ridiculous...I just got linux and learning code for the first time...Sorry
@blackslav14972 жыл бұрын
@@SystemCrafters I just realized if I cant even make it past this step Im done....
@richardfrangie35182 жыл бұрын
👍
@atahanozbayram1619 Жыл бұрын
I don't know if this comment will get where it is supposed to, but I am about to loose my mind over the tab key not putting tabs in emacs, and since you seem to have good understanding and experience with emacs maybe you can answer. I tried googling but couldn't resolve it yet.
@niksingh710 Жыл бұрын
Font?
@gopakumarp36152 жыл бұрын
Hi There, How are you?
@miko0073 ай бұрын
imagine not using doom emacs in 2022 :D
@SystemCrafters3 ай бұрын
No need to imagine it, no need to use it either.
@grudgemonkey65902 жыл бұрын
Could not have been better timing lol.
@zukxxxx02 жыл бұрын
Just pay attention to Distro Tube KZbin channel how to introduce from scratch and setting up. You say your absolute beginner video will help no it didn't to complete beginner who do not know any sort of niches about emacs. This is my criticism on your content. Show up your setup to motivate not teach within it it really do not help or useful to a noob. Hope you will get what I'm trying to say
@themlk2 жыл бұрын
you obviously have a lot of knowledge but for the love of your viewers, try to be more concise, otherwise many won't even try watching anything by you
@SystemCrafters2 жыл бұрын
How would you suggest I make this material more concise?
@AndersJackson2 жыл бұрын
I don't understand what you mean? I find it very concise? But I am convinced David will think of and constructive critics you can make. If you explain what it is.
@артеммамаев-я8л2 жыл бұрын
For me (Emacs 27.1, Ubuntu 20.04.3 LTS (Focal Fossa)) the path ~/.config/emacs/init.el for config file seemed not working (old ~/.emacs was deleted), but ~/.emacs.d/init.el did the trick.
@AndersJackson2 жыл бұрын
Strange, it should work with ~/.config/emacs directory. Emacs looks up configuration in the order ~/.emacs ~/.emacs.el ~/.emacs.d/init.el and ~/.config/emacs/init.el You are shore that you had removed the previous config files to get ~/.config/init.el to work? Anyways, it works, so it probably doesn't matter.
@richardfrangie35182 жыл бұрын
When I make the changes to the init.el file inside "emacs" and press C-M-x, the changes are activated, but when I close the program and reopen it, the changes are not active, why? I have Debian and I have the init file in this path ~/.config/emacs/init.el
@richardfrangie35182 жыл бұрын
In case someone has the same doubt. Reading the manual I managed to fix it this way First, I moved the file to this path ~/.emacs.d/init.el but it didn't work so, I created the same file but with this name ".emac.el" and it worked perfectly, It remained like this ~/.emacs.el
@chillydonuts Жыл бұрын
@@richardfrangie3518 Thank you so much! I use Ubuntu and renaming the file to .emacs.el and then moving it to my home directory worked. :D
@JohnBortins2 жыл бұрын
I am excited to get started! GNU Emacs 27.1 here in the form of Doom-Emacs. Can I have additional init.el files? Did "find ~ -name init.el" and found 6 outside of Trash.
@SystemCrafters2 жыл бұрын
Interesting! Maybe from git repositories that you've cloned? Where were they?
@AndersJackson2 жыл бұрын
No, you can't have additional init.el files that your standard Emacs will use when you start. Doom Emacs uses its own configuration functions, started from the init.el file. So if you change the used init.el file, you basically will stop using Doom Emacs settings. The Examples are built on you configuring plain Emacs, not using Doom Emacs at all. Emacs use the first init.el file found in the order mentioned in the video. The rest will be ignored, unless loaded explicitly by the selected init.el file.
@JohnBortins2 жыл бұрын
@@AndersJackson Thanks for these ideas! You spurred me to look at the init.el files, which increased my understanding..
@AndersJackson2 жыл бұрын
@@JohnBortins thanks, you took my suggesting right. 🙂 Doom Emacs and Space Emacs (there are some other Emacs distributions) is nice starting point to use Emacs. But you should consider turning their key bindings off and use Emacs instead, I think. Unless you already know VIM, then you probably could continue to use Emacs Evil-mode (the VIM key bindings). I have no problems switch between VIM and Emacs key bindings, but I prefers using Emacs key bindings in Emacs. Especially since those important basic Emacs key bindings are the defaults in Bash (try C-r, C-a, C-e, C-t, M-t, C-b, M-b, C-f, M-f etc). But anyways, Doom and Space Emacs have their own ways to modify Emacs, so you could look into that. As I have not used Doom nor Space Emacs that much, I don't know much about configure them. There are some other channels that take up those. But yes, under the hood, behind the key bindings, they all work the same. Because they are Emacs. Happy hacking and Best of Luck with Emacs!
@AndersJackson2 жыл бұрын
@@JohnBortins I made a script for @Nicco Sebastian Fischer to use to switch between Vanilla Emacs (plain standard is called vanilla) and his Emacs spacemacs. You could probably use it to switch between your Doom Emacs and a vanilla configured Emacs. Just make the obvious changes (or don't, it will just name your Doome version of ~/.emacs.d ~/.emacs.d.spacemacs when not used. But the changes is basicly just query replace in Emacs M-x query-replace it think). You can tell me if there are any bug there.
@allenamenbesetzt2 жыл бұрын
Regarding location of init.el: I just installed emacs on Ubuntu 22.04.1 via apt (version 27.1), and it does not seems to ignore .config/emacs/init.el. Instead it creates the .emacs.d folder if it doesn't exist.
@lucasrodrigues97662 жыл бұрын
Putting the configuration file in ~/.config/emacs/init.el did not work on me debain, I had to put it in ~/.emacs.id/init.el