aboutsummaryrefslogtreecommitdiff
path: root/README.org
blob: 9e7575324bca520e45416a761892f769ebed2529 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#+Title: SX -- Stack Exchange for Emacs

[[https://travis-ci.org/vermiculus/sx.el][https://travis-ci.org/vermiculus/sx.el.svg?branch=master]]
[[http://melpa.org/#/sx][file:http://melpa.org/packages/sx-badge.svg]]
[[http://stable.melpa.org/#/sx][file:http://stable.melpa.org/packages/sx-badge.svg]]
[[https://gitter.im/vermiculus/sx.el?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge][https://badges.gitter.im/Join Chat.svg]]
[[https://www.waffle.io/vermiculus/sx.el][https://badge.waffle.io/vermiculus/sx.el.svg]]

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.

[[file:list-and-question.png]]

* Features
As always, =C-h m= is the definitive resource for functionality, but here are a
few highlights:
** Viewing Questions
*** Question Lists
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
include:

- ~sx-tab-all-questions~      :: All questions.
- ~sx-tab-unanswered~         :: u Unanswered questions.
- ~sx-tab-unanswered-my-tags~ :: U Unanswered questions in your followed tags.
- ~sx-tab-featured~           :: f Featured questions.
- ~sx-tab-starred~            :: * Your starred questions.
- ~sx-tab-frontpage~          :: h The frontpage of the site.
- ~sx-tab-meta-or-main~       :: m Toggle between the meta and main sites.
- ~sx-tab-newest~             :: n Newest questions first.
- ~sx-tab-topvoted~           :: v Highest-scoring questions first.
- ~sx-tab-week~               :: w Hot questions of the week.

You can use ~sx-tab-switch~ (=s t=) to switch between some of these tabs.  Each
of these opens up a list of questions, and you can further customize the
ordering of the list with =O=.  Other keys include:

- =n= and =p= :: Navigate the list.
- =j= and =k= :: Navigate while viewing the question in a separate buffer.
- =s s= :: Switch site.
- =v= :: Visit the ~thing-at-point~ in your browser.
- =w= :: Copy the ~thing-at-point~ (usually a link).
n- =u= and =d= :: Upvote and downvote.
- =RET= :: Open the question buffer.

*** Questions and Answers
- =u= and =d= :: Upvote and downvote the question, answer, or comment at point.
- =a= :: Add an answer.
- =e= :: Edit the question or answer (or comment if it's yours; the usual rules
         apply)
- =*= :: Star the question.
- =K= :: Delete the question/answer/comment if you are able.
- =w= :: Copy code at point.

** Your Inbox
- ~sx-inbox~ :: View your inbox
- ~RET~ :: Visit inbox item

* Installation
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
#+BEGIN_SRC text
M-x package-install RET sx RET=
#+END_SRC

** Authenticating
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
behalf.

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.

#+BEGIN_QUOTE
SX will store this authentication token in plain text in the =sx= folder 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.
#+END_QUOTE

* Contributing
Please help contribute!  Doing any of the following will help us immensely:
 - [[https://github.com/vermiculus/sx.el/issues/new][Open an issue]]
 - [[https://github.com/vermiculus/sx.el/pulls][Submit a pull request]]
 - [[https://gitter.im/vermiculus/sx.el][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 [[http://www.waffle.io/vermiculus/sx.el][Waffle
board]].  Feel free to take the torch on anything in =backlog= or =ready=.  If you
have thoughts on any other issues, don't hesitate to chime in!

See also =CONTRIBUTING.org=.

* Resources
- [[http://www.gnu.org/software/emacs/][GNU Emacs]]
- [[https://api.stackexchange.com/docs][Stack Exchange API v2.2]]

** Icons
SX has no explicit /need/ for an icon, although standard SVG files
have been gathered in =resources/= if anyone would fancy a crack at
it.

- [[file:resources/emacs.svg][Emacs icon]]
- [[file:resources/stackexchange.svg][Stack Exchange icon]]
* COMMENT Local Variables
# Local Variables:
# fill-column: 80
# End: