howdoyou

A stackoverflow and its sisters' sites reader


Keywords
elisp, emacs, emacs-lisp, package, stackoverflow

Documentation

Emacs Howdoyou - A package to search and read stackoverflow and its sisters’ sites

https://cdn.rawgit.com/syl20bnr/spacemacs/442d025779da2f62fc86c2082703697714db6514/assets/spacemacs-badge.svg

screenshots/howdoyou.png

Intro

This package is inspired by howdoi python and howdoi Emacs packages. it searches your query all across stackoverflow and it’s sisters’ sites. They are:

  • stackoverflow.com
  • stackexchange.com
  • superuser.com
  • serverfault.com
  • askubunu.com

The result is then showed in an org-mode buffer. For each result, question and three answers were showed, but they are collapsed by default except the first answer. As this package uses Google to get the links, for each query there will be a dozen of links, the fist link will be used, then use can go to next link and previous link. The author believes that when searching for solutions it is important for users to read both questions and answers, so no “quick look” features such as code only view or code completion are provided.

Install

MELPA

https://melpa.org/packages/howdoyou-badge.svg

Spacemacs layer:

https://github.com/thanhvg/spacemacs-eos

Manual: TBD

Dependencies

promise and request are required. User must have org-mode 9.2 or later installed also.

Commands

  • howdoyou-query: prompt for query and do search
  • howdoyou-next-query: go to next link
  • howdoyou-previous-query: go to previous link
  • howdoyou-go-back-to-first-link: go back to first link
  • howdoyou-reload-link: reload link

Customization

  • howdoyou-use-curl: default is true if curl is available
  • howdoyou-number-of-answers: maximal number of answers to show, default is 3

Use with helm-google-suggest

add this snippet to you config file

(with-eval-after-load "helm-net"
  (push (cons "How Do You"  (lambda (candidate) (howdoyou-query candidate)))
        helm-google-suggest-actions))

Now helm-google-suggest will pass suggestion to howdoyou-query as default action.

Demo

screenshots/howdoyou.gif

screenshots/howdoyou2.gif

References