GitXplorerGitXplorer
R

Emacs

public
2 stars
0 forks
0 issues

Commits

List of commits on branch main.
Verified
ec3be0a240edecaa97331ce59b8d866d2a8eb37f

Add file to gitignore

RRelease-Candidate committed 2 years ago
Verified
b596a13337f176018b51bea2346f2a14da963fdb

Fix errors in document

RRelease-Candidate committed 3 years ago
Verified
2bf53616d3cdb9198397dd8ae27af902f8d4703f

Add keybinding for lsp-rename

RRelease-Candidate committed 3 years ago
Verified
9464486d36e45c0a79a3f7abaf2afad526d7e7a4

Add Markdownlint configuration, add Python isort config

RRelease-Candidate committed 3 years ago
Verified
e14a7ab414cb70db3d40d16824aa549b1b869329

Add markddown configuration, add font usage description

RRelease-Candidate committed 3 years ago
Verified
a0897bf527d6a2f319a3c452ee6836edfff22a0e

Add Clojurescript and Markdown configuration

RRelease-Candidate committed 3 years ago

README

The README file for this repository.

Emacs

My modern ;) Emacs configuration. Uses use-package to configure the packages, and LSP for most programming modes, works under Linux and Windows. Uses keybindings for a slovak keyboard layout and sets a slovak calendar.

Table of Contents

Theme ist doom-zenburn, mode-line is doom-modeline and the treeview on the left is dired-sidebar. Outline in the .emacs Elisp file is by outshine, syntax highlighting uses tree-sitter, rainbow-identifiers and rainbow-delimeters. Time, memory and CPU usage displayed by symon.

Files

Usage

Configures the following programming languages and DSLs:

  • Coq, using proof-general and company-coq
  • Common Lisp with sly as REPL and paredit
  • Clojure with cider as REPL and paredit
  • Shell / Bash with LSP (uses shellcheck if installed)
  • C using LSP
  • C++ using LSP
  • F# using LSP
  • Javascript using LSP
  • Python using LSP (pyright)
  • Typescript using LSP
  • CSS using LSP
  • SCSS using LSP
  • HTML using LSP
  • XML using LSP
  • JSON using LSP
  • Markdown using LSP
  • YAML using LSP
  • INI (no LSP)
  • TOML (no LSP)

Hyper Key

Uses the Windows App key as Hyper key. No configuration except in .emacs needed under Windows, under Linux you have to configure it using xmodmap

Edit ~/.xmodmaprc like the following:

keycode 135 = Hyper_R
remove Mod4 = Hyper_L
add Mod3 = Hyper_L

135 is the keycode you get by calling xev and pressing the key. Mod4 contains Hyper too, so you have to remove Hyper from Mod4 and add it to the empty Mod3. Check that by calling xmodmap.

Fonts

Uses Cascadia Code PL as mono spaced font and STIX Two Math for special math characters like or (in Coq mode). You can download these free fonts from their GitHub Releases:

Download both Zip-files, unzip them and install the TTF fonts for your OS, normally by right-clicking and selecting Install or Install for All Users (Administrator). From the Stix package you only need to install /fonts/static_ttf/STIXTwoMath-Regular.ttf, from Cascadia the ttf/CascadiaCodePL*.ttf files

Coq configuration under Windows

Appends the following paths to get Coq and Proof General to work:

Hunspell

Uses hunspell as spell checker for flyspell, so you have to install it under Linux and unzip it to this path under Windows:

Installation of LSPs, formatters and linters

The LSP package tries to download the LSP packages itself, but to be safe. All are installed globally, so you have to be root, administrator or use sudo.

  • Bash LSP

    npm i -g bash-language-server
  • Typescript LSP and typescript

    npm i -g typescript-language-server
    npm i -g typescript
  • Eslint

    npm i -g eslint
  • CSS LSP

    npm install -g vscode-css-languageserver-bin
  • HTML LSP

    npm install -g vscode-html-languageserver-bin
  • JSON LSP

    npm install -g vscode-json-languageserver
  • Markdown LSP

    npm install -g unified-language-server
  • YAML LSP

    npm install -g yaml-language-server
  • Python LSP

    npm install -g pyright
  • Black:

    pip install black
  • Prettier

    npm install -g prettier
  • Markdownlint

    npm install -g markdownlint-cli
  • CLJ-Kondo

    npm install -g clj-kondo

Vterm

Uses vterm under Linux, you need to install the following Ubuntu packages to be able to compile the Emacs package against Vterm:

sudo apt-get install libvterm-bin libvterm-dev libvterm0

License

Licensed under the GPLv3 and later versions, see file LICENSE