Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions site/Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ group :jekyll_plugins do
gem 'jekyll-github-metadata', '~> 2.16'
end

gem 'json'
gem "bootswatch", github: "thomaspark/bootswatch", branch: "v5"
gem "bootstrap", "~> 5.3.2"

# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
platforms :mingw, :x64_mingw, :mswin, :jruby do
Expand Down
94 changes: 79 additions & 15 deletions site/Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,25 +1,41 @@
GIT
remote: https://github.com/thomaspark/bootswatch.git
revision: 0b64b984923ed0eb373aed9cf1bb8e697c30847a
branch: v5
specs:
bootswatch (5.3.3)

GEM
remote: https://rubygems.org/
specs:
addressable (2.8.6)
public_suffix (>= 2.0.2, < 6.0)
base64 (0.2.0)
autoprefixer-rails (10.4.16.0)
execjs (~> 2)
bootstrap (5.3.2)
autoprefixer-rails (>= 9.1.0)
popper_js (>= 2.11.8, < 3)
colorator (1.1.0)
concurrent-ruby (1.2.2)
concurrent-ruby (1.2.3)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
faraday (2.8.1)
base64
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2)
execjs (2.9.1)
faraday (2.9.0)
faraday-net_http (>= 2.0, < 3.2)
faraday-net_http (3.1.0)
net-http
ffi (1.16.3)
forwardable-extended (2.6.0)
google-protobuf (3.25.1-x86_64-linux)
google-protobuf (3.25.3)
google-protobuf (3.25.3-aarch64-linux)
google-protobuf (3.25.3-arm64-darwin)
google-protobuf (3.25.3-x86-linux)
google-protobuf (3.25.3-x86_64-darwin)
google-protobuf (3.25.3-x86_64-linux)
http_parser.rb (0.8.0)
i18n (1.14.1)
i18n (1.14.4)
concurrent-ruby (~> 1.0)
jekyll (4.3.3)
addressable (~> 2.4)
Expand All @@ -44,49 +60,97 @@ GEM
sass-embedded (~> 1.54)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.7.1)
kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.8.0)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
net-http (0.4.1)
uri
octokit (6.1.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
popper_js (2.11.8)
public_suffix (5.0.4)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.6)
rouge (4.2.0)
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass-embedded (1.69.6-x86_64-linux-gnu)
google-protobuf (~> 3.25)
sass-embedded (1.69.5-aarch64-linux-android)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-aarch64-linux-gnu)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-aarch64-linux-musl)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-arm-linux-androideabi)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-arm-linux-gnueabihf)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-arm-linux-musleabihf)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-arm64-darwin)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86-linux-android)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86-linux-gnu)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86-linux-musl)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-darwin)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-linux-android)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-linux-gnu)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-linux-musl)
google-protobuf (~> 3.23)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.5.0)
uri (0.13.0)
webrick (1.8.1)

PLATFORMS
x86_64-linux
aarch64-linux
aarch64-linux-android
aarch64-linux-gnu
aarch64-linux-musl
arm-linux-androideabi
arm-linux-gnueabihf
arm-linux-musleabihf
arm64-darwin
x86-linux
x86-linux-android
x86-linux-gnu
x86-linux-musl
x86_64-darwin
x86_64-linux-android
x86_64-linux-gnu
x86_64-linux-musl

DEPENDENCIES
bootstrap (~> 5.3.2)
bootswatch!
http_parser.rb (~> 0.6.0)
jekyll (~> 4.3)
jekyll-github-metadata (~> 2.16)
json
tzinfo (>= 1, < 3)
tzinfo-data
wdm (~> 0.1.1)
webrick (~> 1.8)

BUNDLED WITH
2.4.21
2.5.4
1 change: 1 addition & 0 deletions site/_includes/appdata-location.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
| Windows | `%localappdata%\OpenTabletDriver`
| Linux | `~/.config/OpenTabletDriver`
| macOS | `~/Library/Application Support/OpenTabletDriver`
{: .table .table-dark }
3 changes: 1 addition & 2 deletions site/_includes/styles.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
<link href="https://cdn.jsdelivr.net/npm/bootswatch@5.3.2/dist/darkly/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
<link rel="stylesheet" href="{% asset /css/rougehl.css %}">
<link rel="stylesheet" href="{% scssasset /css/site.scss %}">
<link rel="stylesheet" href="{% asset /css/rougehl.css %}">
<link rel="stylesheet" href="{% asset /css/fix-fouc.css %}">
2 changes: 1 addition & 1 deletion site/_layouts/default.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
{%- endif -%}
{% include styles.html %}
</head>
<body data-bs-theme="dark">
<body>
<header class="mb-4">
{% include header.html %}
</header>
Expand Down
2 changes: 1 addition & 1 deletion site/_layouts/tablets.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
</div>

{% capture tablets %}
{% include tablets.md %}{: #tablets .table .table-hover }
{% include tablets.md %}{: #tablets .table .table-hover .table-dark }
{% endcapture %}
{{ tablets | markdownify }}

Expand Down
15 changes: 15 additions & 0 deletions site/_plugins/inject-scss-gems.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
require 'rubygems'
require 'bootstrap'

Jekyll::Hooks.register :site, :after_init do |site|
# Ensure 'load_paths' is initialized
site.config["sass"]["load_paths"] = [] if site.config["sass"]["load_paths"].nil?

# Add Bootstrap stylesheets path
site.config["sass"]["load_paths"] << Bootstrap.stylesheets_path

# Add Bootswatch stylesheets path
Gem.loaded_specs["bootswatch"].load_paths.each do |path|
site.config["sass"]["load_paths"] << path
end
end
6 changes: 6 additions & 0 deletions site/_wiki/Development/Configurations.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ tablets.
| Property Name | Value Type | Description |
| :--------------: | :------------: | :---------- |
| Name | `string` | The name of the device. This is always the device manufacturer's name followed by the device's model number or product name when not applicable.
{: .table .table-dark }

## Specifications

Expand All @@ -27,6 +28,7 @@ always required for the device to function.
| Height | `double` | mm | The physical height of the digitizer in millimeters
| Horizontal Resolution | `double` | Device Units | The horizontal resolution of the digitizer in device units
| Vertical Resolution | `double` | Device Units | The vertical resolution of the digitizer in device units
{: .table .table-dark }

### Pen

Expand All @@ -37,6 +39,7 @@ data. This is almost always required.
| :-------------: | :--------: | :---------- |
| Max Pressure | `uint` | The maximum pressure reported by the pen in device pressure units. This is used to calculate a percentage of pressure. If there are more than pens supported by this tablet, the pen with the highest pressure value is used.
| Button Count | `uint` | The amount of buttons on the pen. This does not include the eraser, if applicable. If there are more than one pens supported by this tablet, use the number of buttons on the pen with the most.
{: .table .table-dark }

### Auxiliary Buttons

Expand All @@ -46,6 +49,7 @@ buttons.
| Property Name | Value Type | Description |
| :-----------: | :---------: | :---------- |
| Button Count | `uint` | The amount of buttons
{: .table .table-dark }

### Touch

Expand Down Expand Up @@ -77,6 +81,7 @@ pinpoint devices.
| Output Initialization Report | `List<byte[]>` | A list of output reports to be sent to the device to perform the device's initialization sequence.
| Device Strings | `Dictionary<byte, string>` | A list of regular expressions to be matched against specific indexes of strings contained within the device's firmware. They can be retrieved via the device string reader. This is optional, however it is commonly used to improve detection precision.
| Initialization String Indexes | `byte[]` | A list of indexes to be retrieved from the device as part of the device's initialization sequence. This is optional, and very infrequently used.
{: .table .table-dark }

> Byte arrays (`byte[]`) are serialized as Base64 in JSON.NET, the library that serializes and deserializes configurations.
{:.alert-primary}
Expand All @@ -99,6 +104,7 @@ Some example attributes include:
| `WinInterface` | [00..99] | *(Windows only)* Similar to `MacInterface`. String must have exactly two digits, (e.g. `"01"`)
| `WinUsage` | [00..99] | *(Windows only)* Specifies the HID usage collection to use. String must have exactly two digits (e.g. `"01"`)
| `FeatureInitDelayMs` | milliseconds | For tablets with multiple feature initialization reports (e.g. polling rate change), wait this many milliseconds between reports. This can help if later feature initialization reports are sometimes randomly not picked up by the tablet.
{: .table .table-dark }

[libinput]: https://www.freedesktop.org/wiki/Software/libinput/ "freedesktop.org's site on libinput"
[udev]: https://wiki.debian.org/udev
3 changes: 3 additions & 0 deletions site/_wiki/Documentation/CommandLine.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,15 @@ title: Command Line Arguments
| Argument | Description |
| :-------------------: | ----------- |
| `--minimized` or `-m` | Starts the application in a minimized state
{: .table .table-dark }

## Daemon

| Argument | Description |
| :-----------------: | ----------- |
| `--appdata` or `-a` | Uses the specified directory for application data
| `--config` or `-c` | Uses the specified directory for searching of tablet configuration overrides
{: .table .table-dark }

## Console

Expand All @@ -26,3 +28,4 @@ Use the `--help` argument to see the list of supported commands in your specific
| :----------------------: | ----------- |
| `--version` | Shows the compatible OpenTabletDriver daemon version
| `--help` or `-h` or `-?` | Shows the available commands for use with the console application
{: .table .table-dark }
3 changes: 3 additions & 0 deletions site/_wiki/Documentation/RequiredPermissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ Then update the initramfs:
| :-----------: | :------ |
| Arch Linux | `sudo mkinitcpio -P`
| Debian/Ubuntu | `sudo update-initramfs -u`
{: .table .table-dark }

For other distros, refer to your distro's documentation on how to update the initramfs.

Expand Down Expand Up @@ -135,6 +136,7 @@ Then update the initramfs:
| :-----------: | :------ |
| Arch Linux | `sudo mkinitcpio -P`
| Debian/Ubuntu | `sudo update-initramfs -u`
{: .table .table-dark }

For other distros, refer to your distro's documentation on how to update the initramfs.

Expand Down Expand Up @@ -164,6 +166,7 @@ OpenTabletDriver requires the following permissions:
| :--------------: | :----------------- |
| Accessibility | To move the cursor
| Input Monitoring | To read the current cursor position and properly send relative movements (relative mode)
{: .table .table-dark }

To grant this, navigate to <kbd>Settings</kbd> ⇒ <kbd>System Preferences</kbd> ⇒ <kbd>Security and Privacy</kbd> ⇒ <kbd>Privacy</kbd>, then check the permissions required.

Expand Down
6 changes: 6 additions & 0 deletions site/_wiki/FAQ/General.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ The application data directory contents are as follows:
| Cache | Folder | Contains cached metadata for the Plugin Manager
| Plugins | Folder | Contains installed plugins (`.dll` files). This folder should not be modified manually.
| Presets | Folder | Contains saved presets
{: .table .table-dark }

## My cursor is going crazy! It teleports everywhere! {#emi-interference}

Expand Down Expand Up @@ -88,6 +89,7 @@ However, to make the driver output the pressure to your operating system, you ma
| Windows | [Windows Ink] | A virtual device driver (VMulti) and the Windows Ink plugin is needed
| Linux | [Artist Mode] | Built-in, simply change the output mode of OpenTabletDriver
| MacOS | unsupported | This is a work in progress, and is expected with the 0.7 release of OpenTabletDriver
{: .table .table-dark }

[Windows Ink]: {% link _wiki/FAQ/Windows.md %}#win-ink
[Artist Mode]: {% link _wiki/FAQ/Linux.md %}#artist-mode
Expand All @@ -113,6 +115,7 @@ Use this reference chart for the upcoming formulas:
| XOffset | The X offset of the center of the area in millimeters
| YOffset | The Y offset of the center of the area in millimeters
| LPI | Lines per inch, this is commonly 5080 or 2540
{: .table .table-dark }

`TWidth` and `THeight` can be found in the tablet's configuration file.

Expand All @@ -126,6 +129,7 @@ Use the following formulas to get values for OpenTabletDriver's area editor's `W
| Top | The number of lines from the top side of the tablet to the top side of the area
| Right | The number of lines from the left side of the tablet to the right side of the area
| Bottom | The number of lines from the top side of the tablet to the bottom side of the area
{: .table .table-dark }

**Formula**:

Expand All @@ -144,6 +148,7 @@ YOffset = (Height / 2) + (Top / LPI * 25.4)
| XPH | The height in XP-Pen units. Denoted as `H` in XP-Pen's official drivers.
| XPX | The X offset of the top left corner of the area in XP-Pen units. Denoted as `X` in XP-Pen's official drivers.
| XPY | The Y offset of the top left corner of the area in XP-Pen units. Denoted as `Y` in XP-Pen's official drivers.
{: .table .table-dark }

**Formula**:

Expand All @@ -162,6 +167,7 @@ YOffset = (Height / 2) + (XPY / 3.937)
| Top | The percentage of the distance from the top side of the tablet to the top side of the area
| Right | The percentage of the distance from the left side of the tablet to the right side of the area
| Bottom | The percentage of the distance from the top side of the tablet to the bottom side of the area
{: .table .table-dark }

**Formula**:

Expand Down
Loading