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.

74 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. - Haskell
  45. - JavaScript
  46. - LaTeX
  47. - Lisp Base
  48. - Markdown
  49. - Org Mode
  50. - Perl
  51. - [Python](python.md)
  52. - Ruby
  53. - Rust
  54. - Scala
  55. - Scheme
  56. - SCSS
  57. - Web