Skip to content

Commit

Permalink
First Version
Browse files Browse the repository at this point in the history
  • Loading branch information
pytlus93 committed Jan 7, 2022
0 parents commit 592c92b
Show file tree
Hide file tree
Showing 51 changed files with 7,400 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
**/nbproject/private/
**/nbproject/Makefile-*.mk
**/nbproject/Package-*.bash
build/
nbbuild/
dist/
nbdist/
.nb-gradle/
85 changes: 85 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
<img width="100" height="100" src="/assets/images/logo.png" alt="ActivityWatchLogo" />

# AwWatcherNetBeans82

This extension allows [ActivityWatch](https://activitywatch.net), the free and open-source time tracker, to keep track of the projects and programming languages you use in NetBeans IDE.

## Features

Sends following data to ActivityWatch:
- current project name
- current file name
- programming language (by current file extension)

## Requirements

This extension requires ActivityWatch to be running on your machine.

## Installation

1. Download the `.nbm` plugin from [GitHub releases](https://github.com/pytlus93/AwWatcherNetBeans82/releases/latest).

2. Inside your IDE, select `Tools` -> `Plugins` -> `Downloaded` -> `Add Plugins...`

3. Select the downloaded nbm file.

4. Check `AwWatcherNetBeans` and click the `Install` button.

5. Follow the wizard instructions to complete the installation.

6. Use your IDE like you normally do and your time will be tracked for you automatically.

7. Visit [http://localhost:5600](http://localhost:5600) to see your logged time.

## Extension Settings

![Configuration Dialog](/assets/images/ConfigDialog.png)

- Frequency
- Allows to setup frequency of sending [hearbeats](https://docs.activitywatch.net/en/latest/buckets-and-events.html#heartbeats) in range <1;60>\
Default: 5s

- Pulse time
- Allows to setup Pulse Time (size of timewindow between events that will be merged in one event) in range <1;120>\
Default: 20s

- Debug mode
- Allows to use Activity Watch test mode, it means use testing server url `localhost:5666` instead of `localhost:5600`\
Default: False

- Custom File Types
- Allows to define custom defined languages or reassing file extension to another language.\
Enter file extension and corresponding language in format `<ext>=<lang>` one per line.
- Examples:
- IFS Development
```
entity=IFS Marble Entity
enumeration=IFS Marble Entity
utility=IFS Marble Entity
storage=IFS Marble Entity
views=IFS Marble Entity
serverpackage=IFS Marble Middle-Tier
report=IFS Report
rdf=IFS Report
cdb=IFS PL/SQL
ins=IFS PL/SQL
cre=IFS PL/SQL
```
## Development
### API Client
Client is generated from [Swagger definition](http://localhost:5600/api/swagger.json) via SwaggerHub ([My project for ActivityWatch REST API v1.0](https://app.swaggerhub.com/apis/InfFilipV/ActivityWatch/1.0)).
## Special Thanks
- [netbeans-wakatime](https://github.com/wakatime/netbeans-wakatime)
- [aw-watcher-vscode](https://github.com/ActivityWatch/aw-watcher-vscode/)
## Release Notes
### 1.0.0
First version
Binary file added assets/images/ConfigDialog.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions build.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See harness/README in the NetBeans platform -->
<!-- for some information on what you could do (e.g. targets to override). -->
<!-- If you delete this file and reopen the project it will be recreated. -->
<project name="com.github.pytlus93.AwWatcherNetBeans" default="netbeans" basedir=".">
<description>Builds, tests, and runs the project com.github.pytlus93.AwWatcherNetBeans.</description>
<import file="nbproject/build-impl.xml"/>
</project>
7 changes: 7 additions & 0 deletions manifest.mf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Manifest-Version: 1.0
AutoUpdate-Show-In-Client: true
OpenIDE-Module: com.github.pytlus93.AwWatcherNetBeans/1
OpenIDE-Module-Install: com/github/pytlus93/AwWatcherNetBeans/AwWatcherNetBeans.class
OpenIDE-Module-Localizing-Bundle: com/github/pytlus93/AwWatcherNetBeans/Bundle.properties
OpenIDE-Module-Specification-Version: 1.0

42 changes: 42 additions & 0 deletions nbproject/build-impl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
*** GENERATED FROM project.xml - DO NOT EDIT ***
*** EDIT ../build.xml INSTEAD ***
-->
<project name="com.github.pytlus93.AwWatcherNetBeans-impl" basedir="..">
<fail message="Please build using Ant 1.7.1 or higher.">
<condition>
<not>
<antversion atleast="1.7.1"/>
</not>
</condition>
</fail>
<property file="nbproject/private/platform-private.properties"/>
<property file="nbproject/platform.properties"/>
<macrodef name="property" uri="http://www.netbeans.org/ns/nb-module-project/2">
<attribute name="name"/>
<attribute name="value"/>
<sequential>
<property name="@{name}" value="${@{value}}"/>
</sequential>
</macrodef>
<macrodef name="evalprops" uri="http://www.netbeans.org/ns/nb-module-project/2">
<attribute name="property"/>
<attribute name="value"/>
<sequential>
<property name="@{property}" value="@{value}"/>
</sequential>
</macrodef>
<property file="${user.properties.file}"/>
<nbmproject2:property name="harness.dir" value="nbplatform.${nbplatform.active}.harness.dir" xmlns:nbmproject2="http://www.netbeans.org/ns/nb-module-project/2"/>
<nbmproject2:property name="nbplatform.active.dir" value="nbplatform.${nbplatform.active}.netbeans.dest.dir" xmlns:nbmproject2="http://www.netbeans.org/ns/nb-module-project/2"/>
<nbmproject2:evalprops property="cluster.path.evaluated" value="${cluster.path}" xmlns:nbmproject2="http://www.netbeans.org/ns/nb-module-project/2"/>
<fail message="Path to 'platform' cluster missing in $${cluster.path} property or using corrupt Netbeans Platform (missing harness).">
<condition>
<not>
<contains string="${cluster.path.evaluated}" substring="platform"/>
</not>
</condition>
</fail>
<import file="${harness.dir}/build.xml"/>
</project>
8 changes: 8 additions & 0 deletions nbproject/genfiles.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
build.xml.data.CRC32=9169c787
build.xml.script.CRC32=b729be5a
build.xml.stylesheet.CRC32=[email protected]
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=9169c787
nbproject/build-impl.xml.script.CRC32=b64a7c09
nbproject/build-impl.xml.stylesheet.CRC32=[email protected]
17 changes: 17 additions & 0 deletions nbproject/platform.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
cluster.path=\
${nbplatform.active.dir}/apisupport:\
${nbplatform.active.dir}/developer_studio:\
${nbplatform.active.dir}/enterprise:\
${nbplatform.active.dir}/ergonomics:\
${nbplatform.active.dir}/extide:\
${nbplatform.active.dir}/extra:\
${nbplatform.active.dir}/harness:\
${nbplatform.active.dir}/ide:\
${nbplatform.active.dir}/java:\
${nbplatform.active.dir}/nb:\
${nbplatform.active.dir}/platform:\
${nbplatform.active.dir}/profiler:\
${nbplatform.active.dir}/webcommon:\
${nbplatform.active.dir}/websvccommon
nbjdk.active=default
nbplatform.active=default
12 changes: 12 additions & 0 deletions nbproject/project.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
auxiliary.org-netbeans-spi-editor-hints-projects.perProjectHintSettingsFile=nbproject/cfg_hints.xml
file.reference.gson-2.8.6.jar=release/modules/ext/gson-2.8.6.jar
file.reference.gson-fire-1.8.5.jar=release/modules/ext/gson-fire-1.8.5.jar
file.reference.logging-interceptor-2.7.5.jar=release/modules/ext/logging-interceptor-2.7.5.jar
file.reference.okhttp-2.7.5.jar=release/modules/ext/okhttp-2.7.5.jar
file.reference.okio-1.6.0.jar=release/modules/ext/okio-1.6.0.jar
file.reference.swagger-annotations-1.6.4.jar=release/modules/ext/swagger-annotations-1.6.4.jar
file.reference.threetenbp-1.5.2.jar=release/modules/ext/threetenbp-1.5.2.jar
javac.source=1.7
javac.compilerargs=-Xlint -Xlint:-serial
nbm.homepage=https://github.com/pytlus93/AwWatcherNetBeans82
nbm.module.author=Filip Vrba
133 changes: 133 additions & 0 deletions nbproject/project.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.apisupport.project</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/nb-module-project/3">
<code-name-base>com.github.pytlus93.AwWatcherNetBeans</code-name-base>
<standalone/>
<module-dependencies>
<dependency>
<code-name-base>org.netbeans.modules.editor.lib2</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<release-version>1</release-version>
<specification-version>2.16.1.55.3</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.netbeans.modules.options.api</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<release-version>1</release-version>
<specification-version>1.45.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.netbeans.modules.parsing.api</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<release-version>1</release-version>
<specification-version>9.6.1.8</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.netbeans.modules.projectapi</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<release-version>1</release-version>
<specification-version>1.66.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.awt</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>7.67.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.filesystems</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>9.10.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.modules</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>7.48.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.util</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>9.7.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.util.lookup</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>8.33.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.util.ui</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>9.6.1</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.openide.windows</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>6.75.1</specification-version>
</run-dependency>
</dependency>
</module-dependencies>
<public-packages/>
<class-path-extension>
<runtime-relative-path>ext/swagger-annotations-1.6.4.jar</runtime-relative-path>
<binary-origin>release/modules/ext/swagger-annotations-1.6.4.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/gson-fire-1.8.5.jar</runtime-relative-path>
<binary-origin>release/modules/ext/gson-fire-1.8.5.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/gson-2.8.6.jar</runtime-relative-path>
<binary-origin>release/modules/ext/gson-2.8.6.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/threetenbp-1.5.2.jar</runtime-relative-path>
<binary-origin>release/modules/ext/threetenbp-1.5.2.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/logging-interceptor-2.7.5.jar</runtime-relative-path>
<binary-origin>release/modules/ext/logging-interceptor-2.7.5.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/okhttp-2.7.5.jar</runtime-relative-path>
<binary-origin>release/modules/ext/okhttp-2.7.5.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/okio-1.6.0.jar</runtime-relative-path>
<binary-origin>release/modules/ext/okio-1.6.0.jar</binary-origin>
</class-path-extension>
</data>
</configuration>
</project>
Binary file added release/modules/ext/gson-2.8.6.jar
Binary file not shown.
Binary file added release/modules/ext/gson-fire-1.8.5.jar
Binary file not shown.
Binary file added release/modules/ext/logging-interceptor-2.7.5.jar
Binary file not shown.
Binary file added release/modules/ext/okhttp-2.7.5.jar
Binary file not shown.
Binary file added release/modules/ext/okio-1.6.0.jar
Binary file not shown.
Binary file added release/modules/ext/swagger-annotations-1.6.4.jar
Binary file not shown.
Binary file not shown.
Binary file added release/modules/ext/threetenbp-1.5.2.jar
Binary file not shown.
Loading

0 comments on commit 592c92b

Please sign in to comment.