aboutsummaryrefslogtreecommitdiff
path: root/README.org
blob: 40715613ed77f80c358b45aaf5444e86124ac5c5 (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
#+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
** Viewing Questions
View questions with one of the ~sx-tab-~ commands.  These translate to the
different 'tabs' that you can view on the official site.  Implemented tabs
include:
- =frontpage= :: The default front page of questions.
- =newest= :: Newest questions first.
- =topvoted= :: Highest-voted questions first.
- =hot= :: Questions with the most views, answers, and votes over the last few
           days.
- =week= :: Questions with the most views, answers, and votes this week.
- =month= :: Questions with the most views, answers, and votes this month.
The meaning of these tabs hopefully needs no explanation, but the official
behavior is given as a tooltip on any site in the StackExchange network.

Each of these opens up a list of questions.  Switch sites with =:=.  Navigate
this list of questions with =jk= or =np=.  =jk= will also view the question in a
separate buffer.  =v= will visit the question in your browser where =w= will
simply copy a link.  Upvote and downvote with =u= and =d=.  =RET= will take you
to the question buffer, where =RET= on headlines will expand and collapse each
section.  Add comments with =c=.

As always, =C-h m= is the definitive resource for the functions of this mode.

* Installation
SX is now available on MELPA!  Install it via the usual method or run =M-x
package-install RET sx RET=.

To install the development version, follow the usual steps:
- Clone this repository
- Add this directory to your ~load-path~
- Issue ~(require 'sx-load)~
This should give you access to the ~sx-tab-~ functions (the main entry points at
this time).

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.

* 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: