#+TITLE: .emacs.d #+AUTHOR: Wojciech Kozlowski #+EMAIL: wk@wojciechkozlowski.eu * Emacs version This configuration is maintained only for the Emacs master branch version. It may work on some older version or you may have to remove the features that rely on the newer Emacs versions. Currently, this configuration uses a few features from Emacs 26 and 27. * Installation Clone this repository into your home directory: #+BEGIN_SRC $ git clone https://github.com/Wojtek242/.emacs.d ~/.emacs.d #+END_SRC This configuration uses the [[https://github.com/adobe-fonts/source-code-pro][Source Code Pro]] font. If you do not have it installed and it isn't available through your distribution you can install the font by running #+BEGIN_SRC $ git clone https://github.com/adobe-fonts/source-code-pro.git --branch release ~/.local/source-code-pro $ sudo cp ~/.local/source-code-pro/OTF/*.otf /usr/local/share/fonts #+END_SRC * External Support for Programming Languages This configuration relies uses ~lsp-mode~ for language-specific features. However, in order to use the LSP features, you need to have the appropriate language servers installed. ** C/C++ Install =ccls= from source #+BEGIN_SRC $ apt install clang libclang-dev $ git clone --depth=1 --recursive https://github.com/MaskRay/ccls $ cd ccls $ cmake -H. -BRelease $ cmake --build Release #+END_SRC Ensure =Release/ccls= is in your =$PATH=. ** Python This configuration assumes =python3= and to use the auto-formatting features you need to have =autopep8= installed. Install the Python language server using =pip3= #+BEGIN_SRC $ pip3 install 'python-language-server[all]' #+END_SRC ** Rust Install RLS using ~rustup~ #+BEGIN_SRC $ rustup component add rls rust-analysis rust-src #+END_SRC * Package Management This =.emacs.d= uses its own small framework for package management located in the [[emodule][emodule]] directory. Its operation is heavily inspired by [[http://spacemacs.org/][Spacemacs]], but is much smaller with fewer features and thus simpler. For instructions, see its own [[emodule/README.org][README file]]. * Theme The theme in use started with the =underwater= theme and has been heavily modified, with inspiration from the [[http://spacemacs.org/][Spacemacs]] theme, to add support for all new faces introduced by the installed packages. The theme files are located in the [[themes][themes]] directory.