jonathanchu / dotemacs

The whole #!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

My Emacs Configuration

https://raw.githubusercontent.com/jonathanchu/dotemacs/master/screenshots/2019-07-05_at_11.46_AM.png Screenshot of my Emacs. Some notable packages in screenshot include doom-modeline, centaur-tabs, doom-city-lights color theme, and Operator Mono font.

Introduction

This is my Emacs configuration, a somewhat simple config compared to most. It’s geared towards OS X, although it should work on most *nix configs. I’ve never tried this on Windows, so YMMV.

This configuration aims to provide you with a bare-bones configuration with sane defaults, built upon package.el.

Although Emacs has support for many programming languages, this config is geared towards the following languages and workflows:

  • Emacs Lisp
  • Python
  • LSP support
  • JavaScript

Installation

To install, it’s recommended to clone this repo wherever you prefer and symlink the directory to ~/.emacs.d.

$ git clone https://github.com/jonathanchu/dotemacs.git

There is a Makefile provided that will create the symlink for you at ~/.emacs.d:

$ make setup

My current Emacs distro of choice is:

$ brew tap daviderestivo/emacs-head
$ brew install emacs-head@28 --with-cocoa --with-imagemagick --with-retro-icon-gnu-head

Please note, this requires Homebrew to be installed.

Requirements

There are a few requirements needed for this config to properly run. All of these pre-requisites can be installed via homebrew and npm.

$ brew install gpg
$ brew install ag
$ brew install ripgrep
$ brew install node
$ npm install -g eslint
$ npm install -g bash-language-server

For using python-mode and elpy, you’ll need to have pip installed and install the following packages:

$ pip install flake8

Package Updates

To update the third-party packages, type M-x list-packages, then U followed by x.

I recently started to use @Malabarba’s excellent paradox, which can be invoked similarly as such - M-x paradox-list-packages, then U followed by x.

Email

There are a few requirements needed to receive and send email with this config.

$ brew install isync
$ brew install msmtp
$ brew install notmuch

About

The whole #!


Languages

Language:Emacs Lisp 73.1%Language:YASnippet 25.1%Language:Shell 1.4%Language:Makefile 0.2%Language:Roff 0.1%