Skip to content

My emacs configuration - essential for my research work (python, C, C++, latex, gnuplot and more)

Notifications You must be signed in to change notification settings

acorbe/my-emacs-configuration

Repository files navigation

my-emacs-configuration

This is my current emacs configuration, updated as it goes. I use emacs for nearly everything in my work as a reasearcher, which entails a lot of software development :).

Settings/dependencies for recompiling emacs

# download latest emacs https://ftp.gnu.org/gnu/emacs/

# Debian packets
apt install  -y  build-essential texinfo libx11-dev libxpm-dev libjpeg-dev libpng-dev libgif-dev libtiff-dev libgtk2.0-dev libncurses-dev
apt install  -y  libgnutls
apt install  -y  libjansson-dev
apt install  -y  librsvg2-dev
apt install  -y  libtree-sitter-dev
apt install  -y  libgccjit0
apt install  -y  libgccjit-12-dev

#emacs compilation (with native compilation and libtreesitter
./configure --with-native-compilation=aot --with-ltree-sitter
Make -j 12
Make install

Install config

./install.sh

Finalize

M-x install-all-the-icons-fonts

Older stuff

Tested in CI to run on all emacs versions between 24.4 and 26.3 (how to install latest emacs: linux, macos).

tests

Installation -- OUTDATED

  • run link_this_config.sh or replace your ~/.emacs file with the file in this repo (in this case, make sure your ~/.emacs.d is empty).
  • All the packages will install by themselves. :)
  • Finalize by:
    • M-x all-the-icons-install-fonts
    • M-x company-tabnine-install-binary
  • For elpy to work properly:
    • pip install jedi rope autopep8 yapf black flake8 `

Comes with -- OUTDATED!

  • IDE: treemacs, icons, centaur tabs (all enabled by default in display-graphic)
  • default themes: gui/display-graphic: doom-one, terminal: zenburn
  • modeline: doom
  • company, (company-tabnine)
  • swiper for anything + avy-posframe
  • avy
  • Editing: autopair, undo-tree, highlight-parentheses
  • Python: elpy, ein, company enabled
  • CEDET support, cmake, cmake-font-lock
  • Latex: auctex, latex-preview-pane, gscholar-bibtex
  • Other modes: gnuplot-mode, yaml-mode, markdown-mode

Some keybindings

  • M-x: swiper-m-x
  • C-o: occur
  • f5: compile
  • f7/C-f7: winner-undo/winner-redo
  • C-S-arrows: resize window
  • C-x t: opens or moves to terminal
  • M-": avy-goto-char-2
  • f8: treemacs
  • S-f8: centaur-tabs
  • C-=/C-M-=: previous-multiframe-window (cycles between both frames and windows)
  • more...

Screenshots

gui_mode

About

My emacs configuration - essential for my research work (python, C, C++, latex, gnuplot and more)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published