Command line interface used by all WakaTime text editor plugins.
Python C PHP HTML Java Go
Switch branches/tags
Clone or download
Pull request Compare This branch is 4 commits ahead, 306 commits behind wakatime:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
tests
wakatime
.coveragerc
.gitignore
.travis.yml
AUTHORS
HISTORY.rst
LICENSE
MANIFEST.in
NOTICE
README.rst
dev-requirements.txt
setup.cfg
setup.py
tox.ini

README.rst

iTimeTrack plugins are a fork of the WakaTime (http://wakatime.com & https://github.com/wakatime) plugins. For support please visit http://blog.itimetrack.com/support/.

Below is the forked README.rst as written by WakaTime.

WakaTime

Tests Coverage Version Dependencies Slack

Command line interface to WakaTime used by all WakaTime text editor plugins.

Note: You shouldn't need to directly use this package unless you are building your own plugin or your text editor's plugin asks you to install the wakatime cli interface manually.

Go to http://wakatime.com/editors to install the plugin for your text editor or IDE.

Installation

Each plugin should install wakatime for you, except for the Emacs WakaTime plugin.

Install the plugin for your IDE/editor at https://wakatime.com/editors, which will install wakatime-cli(this package) for you.

If your plugin does not install wakatime-cli, install it with:

sudo pip install wakatime

Usage

If you are building a plugin using the WakaTime API then follow the Creating a Plugin guide.

For command line options, run wakatime --help.

Configuring

Options can be passed via command line, or set in the $HOME/.wakatime.cfg config file. Command line arguments take precedence over config file settings. The $HOME/.wakatime.cfg file is in INI format. An example config file looks like:

[settings]
debug = false
api_key = your-api-key
hidefilenames = false
exclude =
    ^COMMIT_EDITMSG$
    ^TAG_EDITMSG$
    ^/var/
    ^/etc/
include =
    .*
offline = true
proxy = https://user:pass@localhost:8080
timeout = 30
[projectmap]
projects/foo = new project name
^/home/user/projects/bar(\d+)/ = project{0}

Troubleshooting

WakaTime CLI writes errors to a common log file in your User $HOME directory:

~/.wakatime.log

Set debug=true in ~/.wakatime.cfg for more verbose logging, but don't forget to set it back to debug=false afterwards or your editor might be laggy while waiting for wakatime cli to finish executing.

Each plugin also has it's own log file for things outside of the common wakatime cli:

  • Atom writes errors to the developer console (View -> Developer -> Toggle Developer Tools)
  • Brackets errors go to the developer console (Debug -> Show Developer Tools)
  • Cloud9 logs to the browser console (View -> Developer -> JavaScript Console)
  • Coda logs to /var/log/system.log so use sudo tail -f /var/log/system.log in Terminal to watch Coda 2 logs
  • Eclipse logs can be found in the Eclipse Error Log (Window -> Show View -> Error Log)
  • Emacs messages go to the messages buffer window
  • Jetbrains IDEs (IntelliJ IDEA, PyCharm, RubyMine, PhpStorm, AppCode, AndroidStudio, WebStorm) log to idea.log (locating IDE log files)
  • Komodo logs are written to pystderr.log (Help -> Troubleshooting -> View Log File)
  • Netbeans logs to it's own log file (View -> IDE Log)
  • Notepad++ errors go to AppData\Roaming\Notepad++\plugins\config\WakaTime.log (this file is only created when an error occurs)
  • Sublime Text logs to the Sublime Console (View -> Show Console)
  • TextMate logs to stderr so run TextMate from Terminal to see any errors (enable logging)
  • Vim errors get displayed in the status line or inline (use :redraw! to clear inline errors)
  • Visual Studio logs to the Output window, but uncaught exceptions go to ActivityLog.xml (more info...)
  • Vscode logs to the developer console (Help -> Toggle Developer Tools)
  • Xcode type sudo tail -f /var/log/system.log in a Terminal to view Xcode errors

Check that heartbeats are received by the WakaTime api with the last_heartbeat and last_plugin attributes from the current user api resource. You can also see a list of all your plugins and when they were last seen by the api with the user_agents api endpoint.

Note: Saving a file forces a heartbeat to be sent.

Official API Docs

Contributing

Before contributing a pull request, make sure tests pass:

virtualenv venv
. venv/bin/activate
pip install tox
tox

Many thanks to all contributors!