small doc update
[spray] / Readme.org
1 * spray.el
2
3 A speed reading mode for Emacs.
4
5 The algorithm is inspired from [[https://github.com/Miserlou/OpenSpritz][OpenSpritz]].
6
7 ** Deficiencies in similar projects which spray.el solves:
8
9 For all other projects:
10 - It is very difficult to save your place and come back later. Emacs has lots of built in features like bookmarks or just making a note which make this easy.
11 - No keybinds. This is especially useful for common, quickly used functionality like pause and back up.
12
13 Specific projects:
14 - https://github.com/jbmartinez/speed-readerff firefox extension.
15 - https://github.com/cameron/squirt javascript bookmarklet.
16 - https://github.com/Miserlou/OpenSpritz javascript bookmarklet.
17 - Very difficult selecting where to start / what exactly to read.
18 - Very difficult to figure out where you are within a document.
19
20
21 - https://github.com/chaimpeck/spray website you paste text into.
22 - Very difficult to figure out where you are within a document.
23
24 - https://github.com/xypiie/spread0r Perl program.
25 - No apparent way to resize text.
26 - Very difficult to figure out where you are within a document.
27
28
29 - https://github.com/the-happy-hippo/sprits-it website or bookmarklet. Looks most promising of the web based projects.
30 - Very difficult selecting where to start / what exactly to read.
31 - Somewhat difficult to figure out where you are in a document.
32
33
34 Programs that I, Ian Kelling, didn't try, and why. They also probably have a lot of the problems listed above.
35 - https://github.com/pasky/speedread No simple way to resize text from default of too small.
36 - https://github.com/ds300/jetzt Chrome plugin: Chrome is proprietary, and its open source version is unfriendly to linux distros so they don't package it, and it's readme does not list any benefit to this program over others.
37 - https://github.com/Fr4ncis/openspritz-ios ios program. I don't have an ios device, and this does not appear to have any compelling features.
38 - https://github.com/OnlyInAmerica/OpenSpritz-Android android program. If I knew how to quickly move reading material to my phone, I would try this out. But, it's readme shows that the program is pretty sparse and would have some of the same problems as listed above, so not worth it.
39
40
41 Downsides compared to similar projects:
42 - The emacs learning curve.
43 - Would be hard to get running on a phone.
44
45
46 ** Screencast
47
48 [[screencast.gif]]
49
50 ** Installation
51
52 Put spray.el into a "load-path"ed directory, and load it in your init
53 file.
54
55 : (require 'spray)
56
57 Then you can start spraying from the cursor position with =M-x
58 spray-mode=. Binding some keys may also be useful.
59
60 : (global-set-key (kbd "<f6>") 'spray-mode)
61
62 ** Commands
63
64 In spray-mode buffers, following commands are available.
65
66 - =spray-start/stop= (SPC) ::
67 pause or resume spraying
68
69 - =spray-backward-word= (h, <left>) ::
70 pause and back to the last word
71
72 - =spray-forward-word= (l, <right>) ::
73 inverse of =spray-backward-word=
74
75 - =spray-faster= (f) ::
76 increases speed
77
78 - =spray-slower= (s) ::
79 decreases speed
80
81 - =spray-quit= (q, <return>) ::
82 quit =spray-mode=
83
84
85 ** Customization
86
87 You may customize spray by modifying following items:
88
89 - [Variable] spray-wpm
90 - [Variable] spray-height
91 - [Variable] spray-margin-top
92 - [Variable] spray-margin-left
93 - [Keymap] spray-mode-map
94 - [Face] spray-base-face
95 - [Face] spray-accent-face
96
97