Skip to main content

Tag-Based Programming for Automation Direct CLICK PLCs.

Project description

ClickNick

clicknick_logo

Tag-Based Programming for Automation Direct CLICK PLCs.

ClickNick lets you program using nicknames instead of raw memory addresses. It provides autocomplete that appears over CLICK instruction dialogs, plus standalone editors that sync with your project.

Standard CLICK ClickNick
Ladder Logic Editor Type addresses C123 Autocomplete nicknames
Address Editing One-by-one in app Bulk edit, multi-window, search/replace
Tag Organization Flat list Color named blocks + tree outline (hierarchy & arrays)
DataView Input raw addresses, limited reordering Autocomplete, add entire grouped structures and blocks, drag and drop reordering
Price Free (bundled) Free (open source)
Best For Simple projects Complex projects, productivity

Why ClickNick?

CLICK PLCs were my first PLC experience, but remembering addresses became painful. Other platforms autocomplete—why not CLICK? ClickNick adds the modern tools I wish I'd had.

Features at a Glance

Beta Disclaimer – This is beta software. Use at your own risk and always back up .ckp files.


Prerequisites

  • OS: Windows 10 or 11
  • CLICK Software: v2.60–v3.80 (download here)
  • ODBC Drivers: Microsoft Access Database Engine (install link) – only needed for live DB sync; CSV import works without drivers
  • Python: 3.11+ (only if using pip; uv manages Python automatically)

Quick Start

Option 1: uv (recommended)

uvx clicknick@latest              # Try it without installing
uv tool install clicknick         # Install for offline use, upgrade with `uv tool upgrade clicknick`
clicknick                         # Run (command line or Start Menu)

New to uv? See installation instructions.

Option 2: pip

pip install clicknick
python -m clicknick

Detailed Features

✨ Nickname Autocomplete

How it works: An autocomplete dropdown appears over CLICK instruction dialogs. Start typing a nickname and select from the filtered list—the address is inserted automatically.

Skip the addresses – Select Valve5 instead of typing C123
Flexible filters – Prefix, partial match/contains, or abbreviation (e.g., Motor Speed ↔ Mtr_Spd)
Hover tooltips – View address comments at a glance
Exclusion filters – Hide system or internal addresses (e.g., SC/SD, __private__)

ClickNick autocomplete demo


🛠️ Modern Address Editor

Multi-window – Edit different address sections simultaneously
Bulk editing – Edit before saving, copy/paste multiple cells, live duplicate detection and validation
Search & Replace (Ctrl+F / Ctrl+R) – With Find in Selection toggle
Custom blocks – Drag to create color-coded groups for organization and quick navigation

Address Editor demo

[!NOTE]
Nicknames edited in the Address Editor appear immediately in autocomplete.
Existing ladder logic refreshes after editing via the built-in Address Picker (Ctrl+T) or reopening the project.
See issue https://github.com/ssweber/clicknick/issues/36

⚠️ Search & Replace Behavior
Replace affects all visible columns. Hidden columns (Initial Value, Retentive) are only modified if you make them visible first. Use "Find in Selection" to limit scope.


📑 Tag Browser

Navigate large projects – See all your nicknames in an organized tree view
Spot patterns – Arrays and related items grouped automatically

Hierarchy: Single underscores create levels. SupplyTank_Pump_Status becomes:

SupplyTank
    └── Pump
        └── Status

Arrays: Trailing numbers auto-group. Alm1_id, Alm1_value, Alm2_id, Alm2_value becomes:

Alm[1-2]
1
  ├── id
  └── value
2
  ├── id
  └── value

One-click access – Double-click any item to edit.

Outline dock screenshot


📊 Dataview Editor

Project integration – Loads all DataViews (.cdv files) from your CLICK project in tab-interface
Nickname lookup – Add addresses by typing nicknames instead of raw addresses
Drag-and-drop reordering – Rearrange rows freely with cut/paste support
Flexible row limit – No hard 100-row limit while organizing; overflow rows shown in grey (excluded from save)
Navigator integration – Double-click nicknames or entire structures from the Outline/Blocks panel to insert


🔌 Connectivity

  • CSV nickname import – No drivers needed. Import from any spreadsheet
  • Live ODBC database connection – Direct, real-time access to CLICK project database

Block Tag Specification (Advanced)

Note: The Address Editor provides buttons to create and manage blocks. This section documents the underlying format for power users.

Add tags in the Comment field to create visual blocks:

Syntax:

  • <BlockName> - Opening tag for a range
  • </BlockName> - Closing tag for a range
  • <BlockName /> - Self-closing tag for a singular point
  • <BlockName bg="#color"> - Adds background color

Colors: Use HEX codes or keywords: Red, Pink, Purple, Deep Purple, Indigo, Blue, Light Blue, Cyan, Teal, Green, Light Green, Lime, Yellow, Amber, Orange, Deep Orange, Brown, Blue Grey

Example: <Alm Bits bg="Red"> ... </Alm Bits>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clicknick-0.12.2.tar.gz (227.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clicknick-0.12.2-py3-none-any.whl (157.1 kB view details)

Uploaded Python 3

File details

Details for the file clicknick-0.12.2.tar.gz.

File metadata

  • Download URL: clicknick-0.12.2.tar.gz
  • Upload date:
  • Size: 227.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for clicknick-0.12.2.tar.gz
Algorithm Hash digest
SHA256 882772ebdd2a1c940f830b5bf16ea8fa8eed7b55d33d724d271db7961ea1ac05
MD5 b90c4c15c79684afc3600022c8602069
BLAKE2b-256 08ee2b9ec6836afe8c16734a62c5d0a15189e4b3275d20fc5a075bb1dd682107

See more details on using hashes here.

Provenance

The following attestation bundles were made for clicknick-0.12.2.tar.gz:

Publisher: publish.yml on ssweber/clicknick

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file clicknick-0.12.2-py3-none-any.whl.

File metadata

  • Download URL: clicknick-0.12.2-py3-none-any.whl
  • Upload date:
  • Size: 157.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for clicknick-0.12.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a3d5a62a5a36efcf919370d63ec0e7e1d19d40c9275330e941537137de1b58d0
MD5 cb93142d2b1ded66dd1d956e861d2ac1
BLAKE2b-256 df767b95f218a61c152d14163b971f68b99b655714c83afcfb4256dfedc24f08

See more details on using hashes here.

Provenance

The following attestation bundles were made for clicknick-0.12.2-py3-none-any.whl:

Publisher: publish.yml on ssweber/clicknick

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page