SX – Stack Exchange for Emacs
SX is a full-featured Stack Exchange mode for GNU Emacs 24+. Using the official API, it provides a versatile experience for the Stack Exchange network within Emacs itself.
C-h m is the definitive resource for functionality, but here are a
View questions with one of the
sx-tab- commands. These translate roughly to
the different ‘tabs’ that you can view on the official site. Implemented tabs
- All questions.
UUnanswered questions in your followed tags.
*Your starred questions.
hThe frontpage of the site.
mToggle between the meta and main sites.
nNewest questions first.
vHighest-scoring questions first.
wHot questions of the week.
Inside SX buffers, you can switch to other tabs by typing
s followed by the key
listed with the tab above. You can also use
s t) to switch
between tabs with completion. Each of these opens up a list of questions, and
you can further customize the ordering of the list with
O. Other keys
- Navigate the list.
- Navigate while viewing the question in a separate buffer.
- Switch site.
- Visit the
thing-at-pointin your browser.
- Copy the
thing-at-point(usually a link).
- Upvote and downvote.
- Open the question buffer.
Questions and Answers
- Upvote and downvote the question, answer, or comment at point.
- Add an answer.
- Edit the question or answer (or comment if it’s yours; the usual rules apply)
- Star the question.
- Delete the question/answer/comment if you are able.
- Copy code at point.
- View your inbox
- Visit inbox item
SX is now available on MELPA! Both the stable release and the development version can be found there. Install it via the Package Menu or just run
M-x package-install RET sx RET
If you are going to be doing any
asking/answering/commenting/upvoting/downvoting/ etc., you must use
sx-authenticate to provide SX with an authentication token to act on your
After authentication, you will be redirected to the project page. This page will prominently display your authentication token. Keep this secret! It’s as good as your password as far as StackExchange is concerned. Copy and paste the token into the prompt in Emacs.
SX will store this authentication token in plain text in the
sxfolder of your
.emacs.d. Please take any and all steps necessary to protect the security of your account. This token is as good as a password.
(require 'use-package) (use-package sx :config (bind-keys :prefix "C-c s" :prefix-map my-sx-map :prefix-docstring "Global keymap for SX." ("q" . sx-tab-all-questions) ("i" . sx-inbox) ("o" . sx-open-link) ("u" . sx-tab-unanswered-my-tags) ("a" . sx-ask) ("s" . sx-search)))
Standard (With Prefix Key)
Shamelessly stolen from Endless Parentheses.
(define-prefix-command 'launcher-map) (global-set-key (kbd "s-l") 'launcher-map) (define-key launcher-map "qq" #'sx-tab-all-questions) (define-key launcher-map "qi" #'sx-inbox) (define-key launcher-map "qo" #'sx-open-link) (define-key launcher-map "qu" #'sx-tab-unanswered-my-tags) (define-key launcher-map "qa" #'sx-ask) (define-key launcher-map "qs" #'sx-search)
Please help contribute! Doing any of the following will help us immensely:
- Open an issue
- Submit a pull request
- Suggest a package or library in our Chat on Gitter (or just hang out
- Spread the word!
For a better view of all of the open issues, take a look at our lovely Waffle
board. Feel free to take the torch on anything in
ready. If you
have thoughts on any other issues, don’t hesitate to chime in!
SX has no explicit need for an icon, although standard SVG files
have been gathered in
resources/ if anyone would fancy a crack at