82 lines
2.5 KiB
Org Mode
82 lines
2.5 KiB
Org Mode
#+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.
|