Hello Prot! Wanted to thank you for all of your Emacs content, it's always useful and interesting! More than that, it really inspires me to get in there, read the manuals and write my own Elisp programs, realizing the true potential of this wonderful tool. Keep it up!
@lucminax You are welcome and thanks for following along! What I have learnt in my first few months as an Emacs user is that with a bit of patience and persistence you benefit greatly from this tool. I feel that elisp is not too difficult to understand, at least once you get past the initial phase of tracking the parentheses. Obviously, I am not a programmer to maximise the potential of these resources, but even in my case things work nicely.
@@protesilaos One topic that is really "hard" for me to deal in Emacs is to "replace" the terminal, I mean really use the e-shell or any of the many options in Emacs, but it doesn't work nice out of the box. It requires a lot of fine-tuning. But I still have interests in maybe replace the full usage of a terminal by doing it in Emacs. That would be my suggestion for a future video. Thanks!
@Rafael Borgonovi Tauil With regard to CLI usage, it appears to me that for most tasks we can already use some M-x command or key binding. I only use a shell (`M-x shell') to run some of my own scripts or, rarely, to compile a program or whatnot. What is it, in particular, that you would like to see? My guideline is this: rather than replace the terminal in one go, identify the workflows that you want to substitute and address them one by one. As with any daunting task, break it down into smaller parts. Makes things easier. For example, use `dired' (`C-x d' by default) instead of `cd', `ls', `mv', `rm', etc. Do it one step at a time. This is what I did when I switched from Tmux+Vim+CLI to Emacs. The first days were REALLY hard, because my intuition was to create a new pane and start typing some command…
@@protesilaos Actually the `shell` already worked quite fine to me. I tested now and it loaded everything nicely. Not sure why in the past it didn't work well. I'll give it a try. T take back my (next episode) vote for now. :) Thanks!
@Rafael Borgonovi Tauil The `shell' will generally work fine for every program that does not try to draw pseudo-graphics. Whereas something like `top' will give you trouble. Speaking of which, you can try `M-x proced' (and there is a variable to enable the auto-update of the report).
Hello Prot, thanks for the always insightful videos! Any advice on keyboard setup (i.e. remapping of physical keys and so on) to make Emacs keybindings easier on the hands? Sorry if you already covered it.
@X VNA You are welcome! No, I have not done a video on remapping keys, in large part because it is different for every platform. In the GNU/Linux world, it even differs between desktop environments (or minimalist window managers). Have you seen this wiki entry? www.emacswiki.org/emacs/MovingTheCtrlKey
@X VNA Oh, I see! A keyboard layout that is optimised for Emacs is high on my wish list. Though I have not yet done enough research on that front, because I know that to actually implement my ideas I need to spend some money… Cannot afford it right now. For the time being, I am making extensive use of the "Super" key (mod4) to speed up common tasks. For example, I have `s-d' as an alias for `C-x d' (lower case "s" is Super, upper case is Shift). `s-f' is the same as `C-x C-f', `s-b' for `C-x b', `s-0' is for `C-x 0', and so on. More generally, I follow the Emacs principles for defining key bindings. I covered part of this in my hour-long "switching to Emacs" presentation: ruclips.net/video/FLjbKuoBlXs/видео.html
@@protesilaos Interesting! Don't you use super already for BSPWM? (ps: I watched the "switch" video and it was definitely helpful to understand the logic of the bindings. Still struggling to leave evil behind though and I wonder if better keyboard positioning would help)
@X VNA For BSPWM I use the "Hyper" key which I bind to CapsLock. However, all of my computing, including a large part of web browsing, happens inside of Emacs. I am seriously questioning the utility of BSPWM, given this state of affairs, though I obviously enjoy it overall. I might actually switch to Xfce, Maté or something and disable all their keybindings so I can re-purpose CapsLock for Emacs. With regard to evil-mode, I think it offers a better approach to pure text editing than standard Emacs. But I am not sure how well its paradigms work with the various things you can do in Emacs: to me it always felt too difficult to learn Emacs and also worry about redefining all its keys to work with the various interfaces/modes. Couched in those terms, I guess it all comes down to a couple of things that should inform your decision: 1. the packages you have and your usage of Emacs overall; 2. how good of a typist you already are. If your work is largely about text editing, then evil-mode is the straightforward answer. If, however, you use Emacs for practically everything (Dired, Gnus, etc.), then you need to assess whether you could (i) adapt the evil keys accordingly, and (ii) it is worth the total effort. I am aware of the `evil-collection' package, which provides evil-mode keys for a bunch of packages, but I have not used it and cannot know how well it scales. As for typing efficiency, if you are already great at it, then changing keys will probably prove too costly: stick with evil-mode. If, like me, you are so-and-so, then retraining your muscle memory is possible after a few days/weeks of great difficulty. I understand this is not a yes-or-no type of answer. There are pros and cons no matter the course of action. What I outlined here just shows that for me Emacs is not defined by its key bindings (as per the "switch" video). If the defaults work, that is okay. If evil-mode is needed, then so be it.
Hey Prot, another good interface to ripgrep that I've found is deadgrep by Wilfred Hughes. It has fewer options than rg.el, but better defaults I think. For example, if you are in a VC project, deadgrep will use the root of the project as the search directory by default. You also only need to specify the pattern and you can specialize after the first results are in.
@gnuvince Thanks! Yes deadgrep is very nice and Wilfred is a force for good (this article, for example, on the Emacs Guru Guide to Key Bindings: www.wilfred.me.uk/blog/2018/01/06/the-emacs-guru-guide-to-key-bindings/). With regard to VC and other niceties, I have tweaked rg.el to do a couple of things for me: (1) search in project if vc-root-dir else search from present directory, and (2) search for thing at point in present directory. Ultimately though, there are lots of ways to approach these issues and am happy that we have these options.
@Dewi Jones No, though I was a Vim user in the recent past. I have used `evil-mode' a few times: fairly easy to set up. I just used it to test various packages that I wanted to add support for in my themes.
Hello Prot! Wanted to thank you for all of your Emacs content, it's always useful and interesting! More than that, it really inspires me to get in there, read the manuals and write my own Elisp programs, realizing the true potential of this wonderful tool. Keep it up!
@lucminax You are welcome and thanks for following along! What I have learnt in my first few months as an Emacs user is that with a bit of patience and persistence you benefit greatly from this tool. I feel that elisp is not too difficult to understand, at least once you get past the initial phase of tracking the parentheses. Obviously, I am not a programmer to maximise the potential of these resources, but even in my case things work nicely.
Thanks for the video Prot. I am a heavy user of counsel-rg but this looks really cool too. Always learn something new from your videos. Keep it up.
@Che Ko You are welcome! There is always something new to learn in Emacs. I am happy with all the options we have for solving problems.
Excellent Prot! Super helpful! I'll give it a try! Thanks!
@Rafael Borgonovi Tauil Thanks! And please share any tips and tricks, if you have!
@@protesilaos One topic that is really "hard" for me to deal in Emacs is to "replace" the terminal, I mean really use the e-shell or any of the many options in Emacs, but it doesn't work nice out of the box. It requires a lot of fine-tuning. But I still have interests in maybe replace the full usage of a terminal by doing it in Emacs. That would be my suggestion for a future video. Thanks!
@Rafael Borgonovi Tauil With regard to CLI usage, it appears to me that for most tasks we can already use some M-x command or key binding. I only use a shell (`M-x shell') to run some of my own scripts or, rarely, to compile a program or whatnot.
What is it, in particular, that you would like to see?
My guideline is this: rather than replace the terminal in one go, identify the workflows that you want to substitute and address them one by one. As with any daunting task, break it down into smaller parts. Makes things easier.
For example, use `dired' (`C-x d' by default) instead of `cd', `ls', `mv', `rm', etc. Do it one step at a time.
This is what I did when I switched from Tmux+Vim+CLI to Emacs. The first days were REALLY hard, because my intuition was to create a new pane and start typing some command…
@@protesilaos Actually the `shell` already worked quite fine to me. I tested now and it loaded everything nicely. Not sure why in the past it didn't work well. I'll give it a try. T take back my (next episode) vote for now. :) Thanks!
@Rafael Borgonovi Tauil The `shell' will generally work fine for every program that does not try to draw pseudo-graphics. Whereas something like `top' will give you trouble. Speaking of which, you can try `M-x proced' (and there is a variable to enable the auto-update of the report).
Hello Prot, thanks for the always insightful videos! Any advice on keyboard setup (i.e. remapping of physical keys and so on) to make Emacs keybindings easier on the hands? Sorry if you already covered it.
@X VNA You are welcome! No, I have not done a video on remapping keys, in large part because it is different for every platform. In the GNU/Linux world, it even differs between desktop environments (or minimalist window managers). Have you seen this wiki entry? www.emacswiki.org/emacs/MovingTheCtrlKey
Yes I think I know most of the software solutions to do it. I was more curious about your take on the optimal layout :)
@X VNA Oh, I see! A keyboard layout that is optimised for Emacs is high on my wish list. Though I have not yet done enough research on that front, because I know that to actually implement my ideas I need to spend some money… Cannot afford it right now.
For the time being, I am making extensive use of the "Super" key (mod4) to speed up common tasks. For example, I have `s-d' as an alias for `C-x d' (lower case "s" is Super, upper case is Shift). `s-f' is the same as `C-x C-f', `s-b' for `C-x b', `s-0' is for `C-x 0', and so on.
More generally, I follow the Emacs principles for defining key bindings. I covered part of this in my hour-long "switching to Emacs" presentation: ruclips.net/video/FLjbKuoBlXs/видео.html
@@protesilaos Interesting! Don't you use super already for BSPWM? (ps: I watched the "switch" video and it was definitely helpful to understand the logic of the bindings. Still struggling to leave evil behind though and I wonder if better keyboard positioning would help)
@X VNA For BSPWM I use the "Hyper" key which I bind to CapsLock. However, all of my computing, including a large part of web browsing, happens inside of Emacs. I am seriously questioning the utility of BSPWM, given this state of affairs, though I obviously enjoy it overall. I might actually switch to Xfce, Maté or something and disable all their keybindings so I can re-purpose CapsLock for Emacs.
With regard to evil-mode, I think it offers a better approach to pure text editing than standard Emacs. But I am not sure how well its paradigms work with the various things you can do in Emacs: to me it always felt too difficult to learn Emacs and also worry about redefining all its keys to work with the various interfaces/modes.
Couched in those terms, I guess it all comes down to a couple of things that should inform your decision:
1. the packages you have and your usage of Emacs overall;
2. how good of a typist you already are.
If your work is largely about text editing, then evil-mode is the straightforward answer. If, however, you use Emacs for practically everything (Dired, Gnus, etc.), then you need to assess whether you could (i) adapt the evil keys accordingly, and (ii) it is worth the total effort. I am aware of the `evil-collection' package, which provides evil-mode keys for a bunch of packages, but I have not used it and cannot know how well it scales.
As for typing efficiency, if you are already great at it, then changing keys will probably prove too costly: stick with evil-mode. If, like me, you are so-and-so, then retraining your muscle memory is possible after a few days/weeks of great difficulty.
I understand this is not a yes-or-no type of answer. There are pros and cons no matter the course of action. What I outlined here just shows that for me Emacs is not defined by its key bindings (as per the "switch" video). If the defaults work, that is okay. If evil-mode is needed, then so be it.
Hey Prot, another good interface to ripgrep that I've found is deadgrep by Wilfred Hughes. It has fewer options than rg.el, but better defaults I think. For example, if you are in a VC project, deadgrep will use the root of the project as the search directory by default. You also only need to specify the pattern and you can specialize after the first results are in.
@gnuvince Thanks! Yes deadgrep is very nice and Wilfred is a force for good (this article, for example, on the Emacs Guru Guide to Key Bindings: www.wilfred.me.uk/blog/2018/01/06/the-emacs-guru-guide-to-key-bindings/).
With regard to VC and other niceties, I have tweaked rg.el to do a couple of things for me: (1) search in project if vc-root-dir else search from present directory, and (2) search for thing at point in present directory.
Ultimately though, there are lots of ways to approach these issues and am happy that we have these options.
I dont understand how to use diary. Can you put a video on how to effectively view and edit diary in Emacs.
@Compro Prasad Good idea! Yes, I will try to do a video on the matter.
do you use evil mode?
@Dewi Jones No, though I was a Vim user in the recent past. I have used `evil-mode' a few times: fairly easy to set up. I just used it to test various packages that I wanted to add support for in my themes.
Looks same as isearch to occur