#+TITLE: Search Engine contribution layer for Spacemacs [[file:img/searchengine.jpg]] * Table of Contents :TOC@4: - [[#description][Description]] - [[#supported-search-engines][Supported search engines]] - [[#install][Install]] - [[#key-bindings][Key Bindings]] - [[#customize-it][Customize it!]] * Description This layer adds support for the [[https://github.com/hrs/engine-mode/engine-mode.el][Search Engine]] package. ** Supported search engines - Amazon - Duck Duck Go - Google - Google Images - GitHub - Google Maps - Twitter - Project Gutemberg - Youtube - Stack Overflow - Spacemacs Issues - Wikipedia - Wolfram Alpha * Install To use this contribution add it to your =~/.spacemacs= #+BEGIN_SRC emacs-lisp (setq-default dotspacemacs-configuration-layers '(search-engine)) #+END_SRC * Key Bindings | Evil | Holy | Command | |-----------+---------+-------------------------------------------| | ~SPC a /~ | ~C-c /~ | Summon a Helm buffer to select any engine | * Customize it! If you'd rather have emacs use chrome, or firefox or any other thing (=eww=) you can have that customization. For example for google chrome you can put this in your =dotspacemacs/config=: #+BEGIN_SRC emacs-lisp (setq browse-url-browser-function 'browse-url-generic engine/browser-function 'browse-url-generic browse-url-generic-program "google-chrome") #+END_SRC Also if you want more search engines, just push them (do this in =dotspacemacs/config=) #+BEGIN_SRC emacs-lisp (push '(custom1 :name "Custom Search Engine 1" :url "http://www.domain.com/s/stuff_sutff_remember_to_replace_search_candidate_with_%s") extra-search-engines-alist) #+END_SRC If you'd rather not use helm but would want a specific search engine, remember the function generated is always =engine/search-(the name of the search engine lower-case and hyphen instead-of-spaces-for-separation)= so you can bind that to any key binding you want.