Emacs config utilizing prelude as a base
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
1.6 KiB

  1. # Modules
  2. !!! Note
  3. Most modules are not currently documented. Helping out with their
  4. documentation is a great way to contribute to the project!
  5. Prelude provides extra functionality through modules. Some modules may
  6. require extra steps to enable all functionality. These steps and the
  7. functionality provided by these modules are documented on the
  8. following links.
  9. ## What's a module?
  10. Prelude modules are plain old Elisp libraries - there's absolutely nothing magical about them.
  11. Most of them simply install a few package and provide some sensible baseline configuration for them.
  12. Here's a real example.
  13. ``` emacs-lisp
  14. ;;; prelude-ruby.el --- Emacs Prelude: A nice setup for Ruby (and Rails) devs.
  15. ;;
  16. ;;; Code:
  17. (require 'prelude-programming)
  18. (prelude-require-packages '(inf-ruby yari))
  19. ;; We never want to edit Rubinius bytecode
  20. (add-to-list 'completion-ignored-extensions ".rbc")
  21. (define-key 'help-command (kbd "R") 'yari)
  22. (with-eval-after-load 'ruby-mode
  23. (defun prelude-ruby-mode-defaults ()
  24. (inf-ruby-minor-mode +1)
  25. ;; CamelCase aware editing operations
  26. (subword-mode +1))
  27. (setq prelude-ruby-mode-hook 'prelude-ruby-mode-defaults)
  28. (add-hook 'ruby-mode-hook (lambda ()
  29. (run-hooks 'prelude-ruby-mode-hook))))
  30. (provide 'prelude-ruby)
  31. ;;; prelude-ruby.el ends here
  32. ```
  33. To use a module you simple have to require it. No new concepts. No magic.
  34. ## List of Modules
  35. - C/C++
  36. - Clojure
  37. - CoffeeScript
  38. - Common Lisp
  39. - CSS
  40. - Emacs-Lisp
  41. - [ERC](erc.md)
  42. - Erlang
  43. - Elixir
  44. - Go
  45. - Haskell
  46. - JavaScript
  47. - LaTeX
  48. - Lisp Base
  49. - Markdown
  50. - Org Mode
  51. - Perl
  52. - [Python](python.md)
  53. - Ruby
  54. - Rust
  55. - Scala
  56. - Scheme
  57. - SCSS
  58. - Web