97 lines
3 KiB
Org Mode
97 lines
3 KiB
Org Mode
#+TITLE: Wakatime layer
|
|
|
|
#+TAGS: layer|web service
|
|
|
|
[[file:img/wakatime.png]]
|
|
|
|
* Table of Contents :TOC_5_gh:noexport:
|
|
- [[#description][Description]]
|
|
- [[#features][Features:]]
|
|
- [[#install][Install]]
|
|
- [[#wakatime-program][Wakatime Program]]
|
|
- [[#layer][Layer]]
|
|
- [[#note-about-api-key-and-bug-submission][Note about api key and bug submission]]
|
|
- [[#api-keys][API Keys]]
|
|
- [[#note-to-venv-workon-users][Note to =venv-workon= users:]]
|
|
|
|
* Description
|
|
This layer adds support for Wakatime.
|
|
|
|
WakaTime was built to solve time tracking for programmers.
|
|
Since we work inside a text editor, why should we have to start and stop a
|
|
timer? WakaTime uses open-source text editor plugins to automatically track the
|
|
time you spend programming so you never have to manually track it again!
|
|
|
|
P.S. wakati means time in Swahili
|
|
|
|
** Features:
|
|
- Integration with Wakatime cloud based time tracking service
|
|
|
|
* Install
|
|
** Wakatime Program
|
|
You can follow wakatime installation instructions here
|
|
[[https://github.com/wakatime/wakatime-mode]].
|
|
|
|
In short it's just:
|
|
|
|
#+BEGIN_SRC sh
|
|
pip install wakatime
|
|
#+END_SRC
|
|
|
|
And for some linux users
|
|
|
|
#+BEGIN_SRC sh
|
|
sudo pip install wakatime
|
|
#+END_SRC
|
|
|
|
** Layer
|
|
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
|
|
add =wakatime= to the existing =dotspacemacs-configuration-layers= list in this
|
|
file.
|
|
|
|
Example:
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
(setq-default dotspacemacs-configuration-layers
|
|
'(
|
|
;; ...
|
|
(wakatime :variables
|
|
wakatime-api-key "your-api-key"
|
|
;; use the actual wakatime path
|
|
wakatime-cli-path "/usr/bin/wakatime")
|
|
;; ...
|
|
))
|
|
#+END_SRC
|
|
|
|
*** Note about api key and bug submission
|
|
If you use the built-in Spacemacs bug submission tool it will include
|
|
all of your layer configs including your secret api key.
|
|
Please remove it before submitting.
|
|
|
|
Even better don't store your key directly in the layer config.
|
|
Instead put the following code in your user-config which is set after your layer config:
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
(setq wakatime-api-key "your-api-key")
|
|
#+END_SRC
|
|
|
|
Everything you set there won't appear in the bug submitting tool.
|
|
|
|
** API Keys
|
|
After this go to your wakatime account and have your API key handy
|
|
[[https://wakatime.com/settings/account?apikey=true]].
|
|
|
|
Restart emacs and it will prompt you for the location of the wakatime installer
|
|
(just put in whatever =which wakatime= gives you in the terminal e.g.
|
|
=/usr/bin/wakatime= for example) and that's it.
|
|
|
|
*** Note to =venv-workon= users:
|
|
Right now wakatime uses =python= as python bin executable, so if you use
|
|
=venv-workon= because you have python projects which need to have a virtual
|
|
env., then wakatime, which is installed system-wide will have trouble locating
|
|
wakatime files, so it's best to define by yourself the python path where
|
|
wakatime can always find it's stuff, via this variable:
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
(setq wakatime-python-bin "/path/to/python")
|
|
#+END_SRC
|