diff options
author | mounderfod <mounderfod@gmail.com> | 2023-07-19 14:40:29 +0200 |
---|---|---|
committer | mounderfod <mounderfod@gmail.com> | 2023-07-19 14:40:29 +0200 |
commit | 328f2998b27ef189dac893d081d3626854fc20d4 (patch) | |
tree | 921f13ceb69f5bdadc9645326b2b924167be08f9 /personal/phlog/23-07-18-emacs.txt | |
download | gopherhole-328f2998b27ef189dac893d081d3626854fc20d4.tar.gz |
Initial commit
Diffstat (limited to 'personal/phlog/23-07-18-emacs.txt')
-rw-r--r-- | personal/phlog/23-07-18-emacs.txt | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/personal/phlog/23-07-18-emacs.txt b/personal/phlog/23-07-18-emacs.txt new file mode 100644 index 0000000..f59db3f --- /dev/null +++ b/personal/phlog/23-07-18-emacs.txt @@ -0,0 +1,60 @@ +Using Emacs +=========== +18 July 2023 | https://www.mounderfod.online/2023/07/18/using-emacs.html + +This post is being written in Emacs :) + +What? +----- +Emacs is, according to its own website: + +"An extensible, customizable, free/libre text editor and more." + +Basically, its one of the oldest text editors to exist, is (technically) entirely keyboard-based, and manages to combine simplicity with +power. In short, its great and Im going to talk about it now. + +Why? +---- +Why am I using Emacs? Well, theres a few reasons: + +- Id heard of it before and it sounded cool +- Its complex enough that it would present an interesting learning curve, but not so difficult as to discourage me +- Its useful for editing posts and HTML like this +- It ships with Tetris built in (need I say more?) + +How? +---- +I went to the website and downloaded it. My laptop currently uses Windows, and Emacs is made by GNU so as +expected I was berated for my choice of OS: + +"To improve the use of proprietary systems is a misguided goal. Our aim, rather, is to eliminate them." + +But I wasnt going to concern myself with GNUs plans for world domination; thats a problem for another day. The install was fairly simple, like any other +application, and upon running the program I am greeted with a pleasant menu screen. + +Now it was time for me to learn how to use Emacs. Emacs is primarily keyboard-based, as it was developed at a time where not all computers had GUIs at all, +let alone mice to interact with them. As such, and also due to its age, it has its own set of keybinding patterns which are overall very different to that +of most applications. For example, saving a file in MS Word is Ctrl-S, while in Emacs it is C-x C-s, which means Ctrl-x followed by Ctrl-S. Youll notice that in +this example, two keybindings need to be pressed to perform one action. This is common in Emacs, as there are lots of commands and not many keys, +and there are even some commands that dont have keybindings and must be invoked by pressing M-x (M meaning Alt) and then typing the command name out. + +This was all a bit complex for me to understand at first, but I quickly got the hang of it (as I had done with the more standard keybinding patterns that existed +elsewhere in the computing world). + +Customising Emacs +----------------- +Now that I had gotten the grips of Emacs' basic usage, I needed to tailor it to my own needs. My plan was to use Emacs for editing Markdown posts (such as this one) +or HTML files, and my website is hosted on GitHub, so I needed something to cover both bases. + +For the latter, there was already Emacs VersionControl, but this was a generic version control tool +and wasnt tailored to the specifics of Git. Therefore, I did some googling and came across Magit. A few more googles educated me in how to add the package +repository it was in and how to then install the package (M-x package-install RET magit RET), and I was quickly able to clone, commit, and push to the website +repository. Perfect! Now I needed to improve my Markdown editing experience. .md files are text, and so I could edit them as normal in Emacs, but then I wouldnt +be able to enjoy things such as syntax highlighting and easy access to various formatting options without typing them out manually. Again, a quick google found +markdown-mode, and within moments it was installed. The package adds a major mode to Emacs - Emacs is mode-based, meaning that there are modes of editing which +result in different functionality of the editor for different purposes - in this case, the markdown mode (enabled with M-x markdown-mode) provides syntax +highlighting and commands to automatically paste in the syntax for links, etc. + +And that was it! +I had installed, learned to use, and configured Emacs and could now use it to edit blog posts for this very website (or Gopher phlog, if youre reading it on that +mirror). Next I shall get it set up for developing my Python/Java projects - Ill keep you posted! |