Skip to main content

Bolts nickname autocomplete onto CLICK Programming Software. Includes Address Editor & Navigation Dock.

Project description

clicknick_logo

ClickNick

Enhanced Productivity for CLICK PLC Programming

Bolts nickname autocomplete onto CLICK Programming Software. Additional tools include a standalone Address & Dataview Editors and Navigation Dock.

Features

✨ Nickname Autocomplete

  • Skip the addresses – Select Valve5 instead of typing C123
  • Flexible filters – Prefix, partial match/contains, or abbreviation (e.g., Motor SpeedMtr_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

[!IMPORTANT]
Replace works on all visible editable columns. Hidden columns (like Initial Value and Retentive) can be shown, but watch out for numerical replacements—changing 1→2 (e.g., Alm1→Alm2) would also change 101 to 202. Use 'Find in Selection' to limit changes and avoid surprises.

📑 Navigation Dock

Outline dock screenshot

  • Navigate large projects – See all your nicknames in an organized tree view
  • Spot patterns – Arrays and related items grouped automatically
    • Single underscores create hierarchy. SupplyTank_Pump_Status becomes
      SupplyTank
          └── Pump
              └── Status
      
    • Trailing numbers create arrays. Alm1_id, Alm1_value, Alm2_id, Alm2_value becomes:
      Alm[1-2]
      1
        ├── id
        └── value
      2
        ├── id
        └── value
      
      
  • One-click access – Double-click to edit any address

📊 Dataview Editor

  • Project integration – Loads all DataViews (.cdv files) from your CLICK project
  • Tab interface – Edit multiple DataViews simultaneously
  • 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

  • 🔌 Live ODBC database connection
  • 📄 CSV nickname import

Why ClickNick?

Work faster – Less time on manual address lookup
Fewer mistakes – Autocomplete reduces typos
Stay organized – Better tag management for complex projects

[!IMPORTANT]

Beta Disclaimer

ClickNick is beta software. Use at your own risk. The developers aren't liable for data loss, corruption, or process interruptions. Always back up your .ckp files.


Installation

[!NOTE]
Live database connectivity requires Microsoft Access ODBC drivers. See our installation guide if you encounter driver issues. CSV import works without additional drivers.

Option 1: uv (recommended)

Try it:

uvx clicknick@latest  

Install for offline use:

uv tool install clicknick  

Run: clicknick (command line or Start Menu)
Upgrade: uv tool upgrade clicknick
Uninstall: uv tool uninstall clicknick

New to uv? See installation instructions.

Option 2: pip

pip install clicknick  
python -m clicknick  

Requirements

  • Windows 10/11
  • CLICK Programming Software (v2.60–v3.71)
  • Microsoft Access ODBC drivers (for Address Editor)

Supported Windows

Autocomplete works in:

Instructions Dialogs & Tools
Contact (NO/NC) Search & Replace
Edge Contact Data Views
Out, Set, Reset Address Picker Find
Compare (A with B)
Timer, Counter
Math
Shift Register
Copy
Search
Modbus Send/Receive

Block Tag Specification

Syntax - Put in Comment Field

  • <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 (works in opening or self-closing tags)

Replace BlockName with your desired identifier (e.g., <Reserved>, <Alm Bits>).

Recognized Color Keywords

The following words can be used as color values (or any valid HEX code):

Red, Pink, Purple, Deep Purple, Indigo, Blue, Light Blue, Cyan, Teal, Green, Light Green, Lime, Yellow, Amber, Orange, Deep Orange, Brown, Blue Grey

(Each corresponds to a predefined HEX value.)


Documentation


Motivation

CLICK PLCs were my first controller, and I've built numerous projects with them. But as projects grew, remembering memory addresses instead of nicknames added overhead. Productivity and Do-More autocompleted nicknames as I type, why can't CLICK? ClickNick was born.

The built-in Address Picker was equally frustrating: either edit one at a time or export to Excel and re-import. Project templates required me to remember where I could add custom tags versus reserved areas. The Address Editor solves this—plus adds Custom Blocks to define distinct memory regions visually. See high-level project structure with the Outline dock.

I hope ClickNick helps new programmers choosing CLICK for its simplicity, as well as those maintaining legacy equipment—and serves as an example of how CLICK software can be extended.


This project was built from simple-modern-uv.

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.0.tar.gz (222.6 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.0-py3-none-any.whl (155.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: clicknick-0.12.0.tar.gz
  • Upload date:
  • Size: 222.6 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.0.tar.gz
Algorithm Hash digest
SHA256 219c5c8d87b7c124cdb8b2176c1e3608a7f0bd231b8cb06d0e11d34657ff1203
MD5 0a0f800b480ff0232d20b8f632af9a69
BLAKE2b-256 6696dadf7e25ca9badbb6932bd2ce4c067892609d45752cfcbd40b65b6cb3a58

See more details on using hashes here.

Provenance

The following attestation bundles were made for clicknick-0.12.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: clicknick-0.12.0-py3-none-any.whl
  • Upload date:
  • Size: 155.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ca2b793226df062c4f719eb8f15b962bb82eec4f9d458c5436bd67e8923ff30
MD5 762fb75e39ebe70ba9090dc6af77e0c0
BLAKE2b-256 2bd30264fea6bfe3734656007a7bce3944195c4ea56953afe750d48eabfef126

See more details on using hashes here.

Provenance

The following attestation bundles were made for clicknick-0.12.0-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