WakaTime
This repo is deprecated. Use the Go version of wakatime-cli instead.
Command line interface to WakaTime used by all WakaTime text editor plugins.
Go to http://wakatime.com/editors to install the plugin for your text editor or IDE.
Installation
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 manually.
Each plugin installs the WakaTime CLI for you, except for the Emacs WakaTime plugin.
Install the plugin for your IDE/editor:
Each plugin either comes pre-bundled with WakaTime CLI, or downloads the latest version from GitHub for you.
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
.
Some more usage information is available in the FAQ.
Configuring
Options can be passed via command line, or set in the $WAKATIME_HOME/.wakatime.cfg
config file. Command line arguments take precedence over config file settings.
The $WAKATIME_HOME/.wakatime.cfg
file is in INI
format. An example config file with all available options:
[settings] debug = false api_key = your-api-key hide_file_names = false hide_project_names = false hide_branch_names = exclude = ^COMMIT_EDITMSG$ ^TAG_EDITMSG$ ^/var/(?!www/).* ^/etc/ include = .* include_only_with_project_file = false status_bar_icon = true status_bar_coding_activity = true offline = true proxy = https://user:pass@localhost:8080 no_ssl_verify = false ssl_certs_file = timeout = 30 hostname = machinename [projectmap] projects/foo = new project name ^/home/user/projects/bar(\d+)/ = project{0} [git] disable_submodules = false
For commonly used configuration options, see examples in the FAQ.
Troubleshooting
Read How to debug the plugins.
Make sure to set debug=true
in your ~/.wakatime.cfg
file.
Common log file location in your User $WAKATIME_HOME
directory:
~/.wakatime.log
Each plugin also has its own log file:
- 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 usesudo 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...)
- VS Code 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
Useful API Endpoints:
Useful Resources:
Contributing
To install the dev environment:
virtualenv venv . venv/bin/activate pip install -r dev-requirements.txt pip install tox
Before contributing a pull request, make sure tests pass:
tox
The above will run tests on all Python versions available on your machine. To just run all tests with your current Python version:
nosetests
To run only a single test method, specify the test file location, test class, and test method. For example, to only run the Git project detection test:
nosetests tests.test_project:ProjectTestCase.test_git_project_detected
Many thanks to all contributors!