Out of the box, Emacs supports various types of completion.

Tab completion for filenames and commands basically work right out of the box and Emacs has built in modes like Abbrev, Hippie Expand, and Dabbrev provide a manner of completion for in buffer text.

I briefly show Dabbrev (Dynamic Abbrevs) in the video and if you're interested in the others, follow the links.

We saw ow the built in Ido mode and third party packages like Ivy, which I prefer, and Helm make for better completions on functions, filenames, and the like and Emacs also has third party packages for in buffer completion.

The two main contenders are auto-complete Mode and company Mode. I use auto-complete, others swear by company. The video shows the basics of auto-complete mode but check both out and decide for yourself.

If you feel strongly about one or the other, please share in the comments.

Here's a basic configuration:

(use-package auto-complete :ensure t :init (progn (ac-config-default) (global-auto-complete-mode t ) ))

We'll modify this as move along in the series.

Here's the video:

Relevant links: