This page provides tips for learning to use Emacs and learning more about Emacs. See also '''EmacsNewbie'''.

* A short list of basic Emacs features: WhyUseEmacs.
* Try the EmacsTutorial, or read one of the BooksAboutEmacs. 
* Learn Emacs using its SelfDocumentation. '''Asking Emacs''' directly is the best way to get to know it. (Start by asking it how to ask it...)
* Stuck? GetHelp
* Use AproposMode to find functions and variables based on words in their documentation or parts of their name.
* Read the EmacsManual in Emacs, in InfoMode (hypertext form): '''`C-h r''''. You can also read it [[http://www.gnu.org/software/emacs/manual/html_node/emacs/ on the web]] or in [[http://epub-manuals.ourproject.org/blog/gnu-emacs-manual/ epub format]].
* LearnEmacsLisp to learn Emacs -- Emacs '''is''' a Lisp environment. You don't have to become a Lisp expert to take advantage of this connection. Knowing a little Lisp helps you '''ask Emacs'''.
* Watch EmacsScreencasts -- A good place to start, with many resources.
* Some beginner-oriented tutorials written by users:
** [https://www.masteringemacs.org/reading-guide Mastering Emacs reading guide]
** [http://xahlee.info/emacs/index.html Xah Emacs Tutorial]
** EmacsCrashCourse.
** [https://david.rothlis.net/emacs/howtolearn.html How to learn Emacs] -- a tutorial leveraging Emacs's self-documentation and source code.
** OnePageGuideToLearningEmacs -- A one-image guide to learning key Emacs concepts (GnuEmacs 24 and later).
** [http://tuhdo.github.io/emacs-tutor.html Emacs Mini Manual] - An Emacs mini manual for starters to learn Emacs before reading the real (and big) Emacs manual.
** [http://www.jesshamrick.com/post/2012-09-10-absolute-beginners-guide-to-emacs/ Absolute Beginners Guide to Emacs] - another Emacs intro for newbies.
* [[CategoryCommunity|Explore the Emacs community]] and learn from other people who use Emacs.
* [[https://emacs.amodernist.com/ Emacs configuration generator]] - for setting up a configuration driven by optional inclusion with explanations of what is being enabled. 
* Consider trying out one of the StarterKits. There are many varying accounts of people switching to and from starter kits to hand-rolled configurations. However, these will certainly help in getting started faster and as references.

Some people learn best by doing, not reading.  To learn by doing, get yourself a text file
to play around with. Make a backup copy if you're nervous about
losing it. But don't worry -- Emacs makes it
hard to lose your work, and it has a great '''[[https://www.gnu.org/software/emacs/manual/html_node/emacs/Undo.html undo]]''' command: '''`##C-/##'''' or `##C-_##'.

Emacs [[key binding]]s can be intimidating at first since they are quite
distinct from those used in other applications and platforms.  Keep
the following advice in mind.

# Try to memorize only the most commonly used keys presented in the EmacsTutorial. You will learn other keys as you go.

# Use [[AproposMode|apropos]] and [[SelfDocumentation|help]] to find commands to accomplish a task.

# You can run a command using `M-x' and typing its name at the prompt.

# You can run a command again by using `M-x M-p' to recall it.

# Use `C-h w' to see if what keys a given command is bound to, if any.

# If you forget a key binding, try `C-h w M-p' to peek at it
again or use `C-h b' to browse the bindings available in the current [[buffer]].

# If you can't burn a key binding into your brain with this approach,
then you might not be using it enough to matter.  Don't worry about it.

# If you're convinced after a fair amount of practice that a given key binding is really bad, then consider binding its command to a different key.  But not before.

''Some [[EmacsNewbie]]s rush too quickly to add or change key bindings.''  This can mean avoiding to learn Emacs and spending more time configuring. Competency with `M-x' and help are core Emacs skills for life.  `M-x' should become your command line in Emacs. 

== Emacs Lisp libraries and snippets that can help you learn Emacs ==


* [https://github.com/emacs-tw/awesome-emacs Awesome Emacs] has lots of recommendations.

* Use [[EmacsNewbieWithIcicles|Icicles]] to explore [[key]]s, commands, variables, [[face]]s, [[buffer]]s, files, [[property list]]s,... that match a given pattern (name or [[regexp]]). Far more than AproposMode.

* Use LaCarte to more easily explore Emacs menus.

* Use the improved menu bar provided by [[HelpMenuBarPlus|MenuBarPlus]].

* Use the [https://github.com/Wilfred/helpful helpful] package for an enhanced help with more contextual information

* Use the improved Emacs help provided by HelpPlus.

* Enable a random TipOfTheDay.

* Play the game KeyWiz to learn Emacs key bindings.

* Use a suggestion system for `M-x', such as `icomplete-mode' or [[Smex]].

* Enable [[WhichKey]] or [[KeySee]] to aid in exploration and key binding familiarity.


----
CategoryHelp CategoryDotEmacs
