Skip to content

Deprecation#23

Open
charlesangus wants to merge 29 commits intodbr:masterfrom
charlesangus:deprecation
Open

Deprecation#23
charlesangus wants to merge 29 commits intodbr:masterfrom
charlesangus:deprecation

Conversation

@charlesangus
Copy link
Copy Markdown

This repository appears to be no longer maintained. I've been developing an active fork at https://github.com/charlesangus/tabtabtab-nuke which includes PySide6 support (Nuke 15+), node icons, colour blocks, many other improvements, and CI/CD.

This PR updates the README to redirect users to the maintained fork. All plugin files are removed to avoid confusion about which version to use. Happy to adjust if you'd prefer a lighter touch (notice only, files kept).

nrusch and others added 29 commits June 2, 2017 12:06
Improving results of the search by doing:
- First show direct matches (weighted)
- Second Show nonconsecutive anchored matches (weighted)
- Third Show nonconsecutive non-anchored matches (weighted)
The consecutive name search now ignores special characters (space, -, _)
Refined filtering of search results:
- Consecutive finds are weighted higher than non-consecutive
- '*' disables anchoring
- '**' forces results to be un-anchored ('**blur' will return 'motionblur' but not 'blur')
- using '[' as the first character now also disables anchoring
- using '  ' (double space) still becomes '['
- using ' ' (space) still disables non-consecutive search.
Switch to explicit registration/unregistration functions
Colours each row with the node's default tile colour from Nuke
preferences. Nodes that have no class-specific colour (i.e. those
returning the global preference default) are left uncoloured.

The tile colour is used as both the icon-column background and the
text-area tint, matching the (left_block_color, text_tint_color) tuple
API introduced in the core.

Also syncs tabtabtab.py to the latest core.
One leading space: non-anchored fuzzy search.
Two leading spaces: non-fuzzy consecutive substring search.
Legacy * and [ prefixes remain unchanged.
Adds tabtabtab_prefs.py (JSON persistence at ~/.nuke/tabtabtab_prefs.json),
tabtabtab_prefs_dialog.py (PySide6 dialog with enable/disable checkbox), and
updates menu.py to conditionally register the Tab key action at startup and
expose Edit > Tabtabtab Preferences... menu item. Toggling takes effect
immediately without a Nuke restart.
Updates all documentation to reflect the current plugin architecture:
plugin-path installation via menu.py, preferences system, node tile
colors, current search mode prefix syntax, and keyboard shortcuts.
Removes outdated curl install instructions, old Nuke 6.3/PyQt notes,
and Foundry bug references.
… shortcut display

- Rename tabtabtab.py to tabtabtab_nuke_core.py to avoid shadowing by other
  vendored copies (e.g. paste_hidden), making the import unambiguous
- Add _extract_node_class_from_script() to parse the actual node class from a
  menu item's command string (handles nuke.createNode and createNodeLocal)
- Add is_node flag to _find_nuke_menu_items() so menu commands (Edit > Copy etc)
  are distinguished from node-creating items; only nodes receive colour treatment
- Store per-item metadata in NukePlugin._menuobj_metadata keyed by id(menuobj)
  so get_color() can look up is_node and actual_class without changing the API
- Always draw the left colour block in _ItemDelegate.paint(), filling with a
  neutral grey when no colour is set, so text alignment is consistent across rows
- Add display_text to scored items in NodeModel.update(), appending the shortcut
  in parentheses when present; fuzzy search continues to use the base name only
- New file: tabtabtab.py (vendored from tabtabtab-core)
- Contains visual improvements and monitor fix
- Replace self.screen().geometry() with QApplication.screenAt(cursor) call
- hasattr() fallback ensures compatibility with old PySide2 builds lacking screenAt()
- tabtabtab_nuke_core.py is now byte-identical to tabtabtab-core/tabtabtab.py
- Remove tabtabtab.py (replaced by tabtabtab_nuke_core.py; generic name risks NUKE_PATH collision)
- Remove data_test.py (orphaned dbr fixture; not imported by anything)
- Remove UNLICENSE (license from original fork)
- Remove TODO.md (items tracked in planning)
- Add __pycache__/ to .gitignore (was missing)
- Create tests/__init__.py for pytest package discovery
- Add tests/test_monitor_selection.py adapted from tabtabtab-core
- Change core_module_path to point to tabtabtab_nuke_core.py (only change from core version)
- All 3 tests pass: right monitor, left monitor, screenAt fallback
- Triggers on push and pull_request to any branch
- Uses ubuntu-latest with Python 3.10
- Installs pytest and runs pytest tests/ -v
- Triggers on push of v* tags
- Zips exactly 5 plugin files into tabtabtab-nuke-$VERSION.zip
- Creates GitHub Release with zip attached via softprops/action-gh-release@v2
- Requires contents: write permission for release creation
- Full rewrite with anchored fuzzy matching explanation and comparison table
- Screenshots section referencing imgs/ placeholder filenames
- GIF demos section with three scenario placeholders
- Complete search modes reference table including [ category search
- Space-prefix repeat behaviour documented explicitly
- Installation section listing all five required plugin files
- Compatibility section: Nuke 13+ (PySide2) and Nuke 15+ (PySide6)
- No changelog, no license section, no fork/dbr references
Adds 4 screenshots and 6 GIFs captured from a live Nuke session.
Updates readme.md to reference actual filenames and adds non-anchored
search screenshot and all GIF demos (choose-item, anchored, non-anchored,
colours-icons, category-search, remember-previous).

Removes old placeholder filenames and obsolete imgs (nuke_tab.png,
tabtabtab.png).
… and LICENSE

- Fix broken image alt text (escape [ in category search caption)
- Update comparison table: Nuke does have usage weighting (corrected),
  add keyboard shortcuts row (tabtabtab yes, Nuke no)
- Add Attribution section crediting dbr/tabtabtab
- Add LICENSE file (The Unlicense / public domain)
This fork has been superseded by a standalone repository at
https://github.com/charlesangus/tabtabtab-nuke

All files removed; readme updated with redirect.
@charlesangus charlesangus mentioned this pull request Mar 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants