@ -2339,6 +2340,23 @@ GNU Aspell[fn:66] is a Free and Open Source spell checker designed to replace IS
"ts" '(flyspell-mode :which-key "Spelling"))
#+END_SRC
** TexLive
TeX Live[fn:67] is a free software distributution for the TeX typesetting system that includes major TeX-related programs, macro packages, and fonts. Since TeX Live consists of /thousands/ of packages, to make managing it easier, NixOS replicates the organization of Tex Live into /schemes/ and /collections/[fn:68]:
| Full | texlive.combined.scheme-full | Contains every TeX Live package |
| Medium | texlive.combined.scheme-medium | Contains everything in small + more packages and languages |
| Small | texlive.combined.scheme-small | Contains everything in basic + xetex + metapost |
| Basic | texlive.combined.scheme-basic | Contains everything in the plain scheme but includes latex |
| Minimal | texlive.combined.scheme-minimal | Contains plain only |
#+NAME: emacs-texlive-extras
#+BEGIN_SRC nix
pkgs.texlive.combined.scheme-full
#+END_SRC
** Http
#+NAME: emacs-http-package
@ -2346,7 +2364,7 @@ GNU Aspell[fn:66] is a Free and Open Source spell checker designed to replace IS
epkgs.ob-http
#+END_SRC
It's possible to make HTTP requests from Org Mode buffers using ob-http[fn:67], this relies on Org Babel being present and configured properly.
It's possible to make HTTP requests from Org Mode buffers using ob-http[fn:69], this relies on Org Babel being present and configured properly.
#+NAME: emacs-http-elisp
#+BEGIN_SRC emacs-lisp
@ -2363,7 +2381,7 @@ It's possible to make HTTP requests from Org Mode buffers using ob-http[fn:67],
epkgs.ox-hugo
#+END_SRC
Ox-Hugo[fn:68] is an Org-Mode[fn:58] exporter for Hugo[fn:31] compabile markdown. I post nonsense on my Personal Blog[fn:69], and share my notes on various textbooks, articles, and software Here[fn:70].
Ox-Hugo[fn:70] is an Org-Mode[fn:58] exporter for Hugo[fn:31] compabile markdown. I post nonsense on my Personal Blog[fn:71], and share my notes on various textbooks, articles, and software Here[fn:72].
#+NAME: emacs-hugo-elisp
#+BEGIN_SRC emacs-lisp
@ -2423,7 +2441,7 @@ Ox-Hugo[fn:68] is an Org-Mode[fn:58] exporter for Hugo[fn:31] compabile markdown
epkgs.ox-reveal
#+END_SRC
Reveal.js[fn:71] is an open source HTML presentation framework. It enables anyone with a web browser to create fully-featured and beautiful presentations for free. Presentations with Reveal.js[fn:71] are built on open web technologies. That means anything you can do on the web, you can do in your presentation. Ox Reveal[fn:72] is an Org Mode[fn:58] export backend.
Reveal.js[fn:73] is an open source HTML presentation framework. It enables anyone with a web browser to create fully-featured and beautiful presentations for free. Presentations with Reveal.js[fn:73] are built on open web technologies. That means anything you can do on the web, you can do in your presentation. Ox Reveal[fn:74] is an Org Mode[fn:58] export backend.
#+NAME: emacs-reveal-elisp
#+BEGIN_SRC emacs-lisp
@ -2463,7 +2481,7 @@ Reveal.js[fn:71] is an open source HTML presentation framework. It enables anyon
pkgs.pass
#+END_SRC
With Pass[fn:73], each password lives inside of an encrypted =gpg= file, whose name is the title of the website or resource that requires the password. These encrypted files may be organized into meaningful folder hierarchies, compies from computer to computer, and in general, manipulated using standard command line tools.
With Pass[fn:75], each password lives inside of an encrypted =gpg= file, whose name is the title of the website or resource that requires the password. These encrypted files may be organized into meaningful folder hierarchies, compies from computer to computer, and in general, manipulated using standard command line tools.
#+NAME: emacs-pass-package
#+BEGIN_SRC nix
@ -2589,7 +2607,7 @@ mu index
epkgs.projectile
#+END_SRC
Projectile[fn:74] is a project interaction library for GNU/Emacs[fn:2]. Its goal is to provide a nice set of features operating on a project level, without introducing external dependencies.
Projectile[fn:76] is a project interaction library for GNU/Emacs[fn:2]. Its goal is to provide a nice set of features operating on a project level, without introducing external dependencies.
#+NAME: emacs-projectile-elisp
#+BEGIN_SRC emacs-lisp
@ -2606,7 +2624,7 @@ epkgs.lsp-mode
epkgs.lsp-ui
#+END_SRC
The Language Server Protocol (LSP)[fn:75] defines the protocol used between an Editor or IDE, and a language server that provides features like:
The Language Server Protocol (LSP)[fn:77] defines the protocol used between an Editor or IDE, and a language server that provides features like:
+ Auto Complete
+ Go To Defintion
@ -2630,7 +2648,7 @@ The Language Server Protocol (LSP)[fn:75] defines the protocol used between an E
epkgs.ccls
#+END_SRC
Emacs CCLS[fn:76] is a client for CCLS, a C/C++/Objective-C language server supporting multi-million line C++ code bases, powered by libclang.
Emacs CCLS[fn:78] is a client for CCLS, a C/C++/Objective-C language server supporting multi-million line C++ code bases, powered by libclang.
#+NAME: emacs-ccls-elisp
#+BEGIN_SRC emacs-lisp
@ -2653,7 +2671,7 @@ Emacs CCLS[fn:76] is a client for CCLS, a C/C++/Objective-C language server supp
epkgs.company
#+END_SRC
Company[fn:77] is a text completion framework for GNU/Emacs[fn:2]. The name stands for =Complete Anything=. It uses pluggable back-ends and front-ends to retieve and display completion candidates.
Company[fn:79] is a text completion framework for GNU/Emacs[fn:2]. The name stands for =Complete Anything=. It uses pluggable back-ends and front-ends to retieve and display completion candidates.
#+NAME: emacs-company-elisp
#+BEGIN_SRC emacs-lisp
@ -2672,7 +2690,7 @@ Company[fn:77] is a text completion framework for GNU/Emacs[fn:2]. The name stan
epkgs.go-mode
#+END_SRC
Go Mode[fn:78] is a major mode for editing Golang[fn:12] source code in GNU/Emacs[fn:2].
Go Mode[fn:80] is a major mode for editing Golang[fn:12] source code in GNU/Emacs[fn:2].
#+NAME: emacs-golang-elisp
#+BEGIN_SRC emacs-lisp
@ -2692,7 +2710,7 @@ Go Mode[fn:78] is a major mode for editing Golang[fn:12] source code in GNU/Emac
epkgs.rustic
#+END_SRC
Rustic[fn:77] is a fork of rust-mode that integrates well with the Language Server Protocol[fn:73]. Include the rust shell before launching GNU/Emacs[fn:2] to use this!
Rustic[fn:79] is a fork of rust-mode that integrates well with the Language Server Protocol[fn:75]. Include the rust shell before launching GNU/Emacs[fn:2] to use this!
#+NAME: emacs-rustic-elisp
#+BEGIN_SRC emacs-lisp
@ -2708,7 +2726,7 @@ Rustic[fn:77] is a fork of rust-mode that integrates well with the Language Serv
epkgs.pretty-mode
#+END_SRC
The built in Python Mode[fn:79] has a nice feature set for working with Python[fn:18] code in GNU/Emacs[fn:2]. It is complimented with the addition of an LSP[fn:75] server. These tools are included in the Development Shell[fn:11] for Python[fn:18].
The built in Python Mode[fn:81] has a nice feature set for working with Python[fn:18] code in GNU/Emacs[fn:2]. It is complimented with the addition of an LSP[fn:77] server. These tools are included in the Development Shell[fn:11] for Python[fn:18].
#+NAME: emacs-python-elisp
#+BEGIN_SRC emacs-lisp
@ -2732,14 +2750,14 @@ epkgs.protobuf-mode
pkgs.plantuml
#+END_SRC
PlantUML[fn:80] is an open-source tool allowing users to create diagrams from a plain-text language. Besides various UML diagrams, PlantUML[fn:80] has support for various other software developmented related formats, as well as visualizations of =JSON= and =YAML= files.
PlantUML[fn:82] is an open-source tool allowing users to create diagrams from a plain-text language. Besides various UML diagrams, PlantUML[fn:82] has support for various other software developmented related formats, as well as visualizations of =JSON= and =YAML= files.
#+NAME: emacs-plantuml-package
#+BEGIN_SRC nix
epkgs.plantuml-mode
#+END_SRC
PlantUML Mode[fn:81] is a major mode for editing PlantUML[fn:80] sources in GNU/Emacs[fn:2].
PlantUML Mode[fn:83] is a major mode for editing PlantUML[fn:82] sources in GNU/Emacs[fn:2].
#+NAME: emacs-plantuml-elisp
#+BEGIN_SRC emacs-lisp
@ -2761,7 +2779,7 @@ epkgs.ivy-posframe
epkgs.ivy-prescient
#+END_SRC
Ivy (Swiper)[fn:82] is a generic completion mechanism for GNU/Emacs[fn:2]. While operating similarily to other completion schemes like =icomplete-mode=, it aims to be more efficient, smaller, simpler, and smoother to use, while remaining highly customizable.
Ivy (Swiper)[fn:84] is a generic completion mechanism for GNU/Emacs[fn:2]. While operating similarily to other completion schemes like =icomplete-mode=, it aims to be more efficient, smaller, simpler, and smoother to use, while remaining highly customizable.
#+NAME: emacs-swiper-elisp
#+BEGIN_SRC emacs-lisp
@ -2802,7 +2820,7 @@ It's possible to control the frame opacity in GNU/Emacs[fn:2]. Unlike other tran
pkgs.brightnessctl
#+END_SRC
The Desktop Environment[fn:83] package provides commands and a global minor mode for controlling your GNU/Linux[fn:1] desktop from within GNU/Emacs[fn:2].
The Desktop Environment[fn:85] package provides commands and a global minor mode for controlling your GNU/Linux[fn:1] desktop from within GNU/Emacs[fn:2].
#+NAME: emacs-desktop-package
#+BEGIN_SRC nix
@ -2825,7 +2843,7 @@ You can control the brightness, volume, take screenshots, and lock / unlock the
epkgs.doom-themes
#+END_SRC
Doom Themes[fn:84] is a theme megapack for GNU/Emacs[fn:2], inspired by community favourites.
Doom Themes[fn:86] is a theme megapack for GNU/Emacs[fn:2], inspired by community favourites.
#+NAME: emacs-doom-themes-elisp
#+BEGIN_SRC emacs-lisp
@ -2994,38 +3012,42 @@ Doom Modeline[fn:24] is a fancy and fast modeline inspired by minimalism design.