Quantcast
Download
(14 Kb)
Download
Updated: 05/29/20 12:41 PM
Pictures
File Info
Compatibility:
Greymoor (6.0.5)
Updated:05/29/20 12:41 PM
Created:05/02/20 02:01 PM
Monthly downloads:174
Total downloads:620
Favorites:7
MD5:
Categories:Beta-version AddOns, Miscellaneous, Utility Mods
6.0.5
Aenathel's Keybinds
Version: 1.8.0
by: Aenathel [More]
This add-on adds 25+ new keybinds that allow you to do more without reaching for the mouse.

I would have liked to make it possible to keybind almost everything in the UI, but ESO unfortunately has a shadow limit on the number of defined keybindings. After the limit is hit, new keybinds will not be saved, so I'm trying to limit keybinds to the ones I deem essential.

Dependencies
The following dependencies are needed for the add-on to work:
  • LibAddonMenu-2.0
  • LibChatMessage
Although not a dependency, I highly recommend Votan's Keybinder so you don't have to repeat the keybinds on all your characters.

Dealing with existing keybinds
This add-on allows you to use Ctrl/Alt/Shift/Command in bindings, for example Ctrl+B to open your inventory.

In order to fully utilize this, you will probably want to bind Crouch (Ctrl) and/or Character Windows (Alt) to something else.

I personally bound Crouch to C and Character to Ctrl-C and unbound Character Windows (since ESC closes them and I have specific keybinds to open the character windows I use), but it's ultimately up to you.

The keybinds
The keybinds are divided into four categories: Chat, Game Menu, Miscellaneous, and Tabs.

Chat
The first chat keybind allows you to toggle the chat window.

The rest of the chat keybinds allow you to write to a chat channel without typing /p etc. first.

This is useful if you're in a group, but need to fire off a quick message to your favorite guild.

The following channels are supported:
  • Group
  • Guild 1
  • Guild 2
  • Guild 3
  • Guild 4
  • Guild 5
  • Zone
Game Menu keybinds
The game menu keybinds allow you to open the add-on settings and keybindings menus.

Additionally, if you have libAddonKeybinds, the keybindings keybind will toggle between standard and add-on keybinds.

Miscellaneous keybinds
These keybinds are for odds and ends that don't fit in any other category.

First, there is a keybind to travel to your primary house.

Second, there is a keybind to focus the primary search box, if there is one, in the current view.

The following view's primary search boxes are supported:
  • Collections > Collectibles
  • Collections > Outfit Styles
  • Friends > Friends
  • Guilds > Guild Roster
  • Help > Tutorials
  • Outfit Station > Equipment
  • Outfit Station > Costume and Hat
  • Quest Journal > Achievements
Additional primary search boxes are supported for the following add-ons:
  • AwesomeGuildStore
    • Guilds > Guild Trader (Traders)
    • Guilds > Guild Trader (Guilds)
  • LoreBooks
    • Quest Journal > Lore Library
  • Votan's Search Box
    • Bank > Withdraw
    • Bank > Deposit
    • Crafting > Blacksmithing > Deconstruction
    • Crafting > Blacksmithing > Improvement
    • Crafting > Clothing > Deconstruction
    • Crafting > Clothing > Improvement
    • Crafting > Jewelry Crafting > Deconstruction
    • Crafting > Jewelry Crafting > Improvement
    • Crafting > Woodworking > Deconstruction
    • Crafting > Woodworking > Improvement
    • Fence > Sell
    • Fence > Launder
    • Guild Bank > Withdraw
    • Guild Bank > Deposit
    • Guilds > History
    • House Bank > Withdraw
    • House Bank > Deposit
    • Inventory > Items
    • Inventory > Craft Bag
    • Inventory > Quickslots
    • Mail > Send
    • Store (Merchant) > Buy
    • Store (Merchant) > Sell
    • Trading House (Guild Store) > Browse
    • Trading House (Guild Store) > Sell
    • Trading House (Guild Store) > Listings

Tabs keybinds
The tabs keybinds allow you to open essential tabs directly and also provides a way to switch to the next/previous tab/subtab where possible.

The following tabs can be toggled specifically using keybinds:
  • Group > Group
  • Group > Dungeon Finder
  • Group > Battlegrounds
  • Guilds > Home
  • Guilds > Roster
  • Inventory > Items
  • Inventory > Craft Items
  • Inventory > Currency
  • Quest Journal > Quests
  • Quest Journal > Achievements
  • Map > Quests
  • Map > Locations
Additionally, the following special tab behaviors are supported:
  • Champion points menu: Switch between constellations
Feature wish list
Things I want to make work if I can:
  • Breaking the keybinds up into modules that can be enabled/disabled
  • Switching items in vertical lists (for example quests in the quest journal)
  • Travel to favorite house (for example guild house)
Known issues
If you have many add-ons that define a lot of keybindings, you might hit keybindings shadow limit imposed by the ESO client. If your keybinds stop saving, you have hit the shadow limit.

I plan to break up the keybinds into separate modules that you'll be able to disable if you don't use any of their keybinds.

Additionally, I'm aware of the following issues that I, unfortunately, cannot do anything about currently:
  • Focus primary search box doesn't work in Guild Store > Browse with AwesomeGuildStore, as I cannot reliably look up the control.
  • Show next subtab and Show previous subtab don't work in the Alchemy window, as the tabs don't have proper descriptors.
  • Show next subtab and Show previous subtab don't work in the Guild Store with AwesomeGuildStore, as AwesomeGuildStore doesn't use a proper ZO_MenuBar.
  • Show next subtab and Show previous subtab don't work in the Outfit Station window, as the tabs don't have proper descriptors.
1.8.0 - 2020-05-29
Updated for Greymoor.

1.7.0 - 2020-05-17
Subtab switching is now supported in most windows using these new keybinds:
  • Tabs > Show next subtab
  • Tabs > Show previous subtab
Additionally, the Focus primary search box keybind is now also supported in the following locations:
  • Outfit Station > Equipment
  • Outfit Station > Costume and Hat
  • Trading House (Guild Store) > Browse (without AwesomeGuildStore)

1.6.0 - 2020-05-16
Added support for switching between champion point constellations with the Show next tab and Show previous tab keybinds.

1.5.0 - 2020-05-12
You can now use the Show next tab and Show previous tab keybinds in a lot more places.

I have also added the following new keybinds:
  • Chat > Toggle chat window
  • Miscellaneous > Focus primary search box
  • Miscellaneous > Travel to primary house
You can read more about the new features in the add-on's description.

1.4.2 - 2020-05-10
The startup message will now actually only be printed once per login. Sorry about that!

1.4.1 - 2020-05-09
The startup message will now only be printed once per login.

1.4.0 - 2020-05-05
Removed "nonessential" keybinds to prevent hitting the ESO keybindings shadow limit.

I hate having to do this, but I would rather do it now, when it doesn't impact as many people, than later.

The following keybinds were removed:

Chat keybinds
  • Write in Emote
  • Write in Say
  • Write in Yell
  • Write in Zone - English
  • Write in Zone - French
  • Write in Zone - German
  • Write in Zone - Japanese
  • Write in Officer 1 to 5
Tabs keybinds
  • Alliance War > Overview
  • Alliance War > Campaigns
  • Collections > Collectibles
  • Collections > Stories
  • Collections > Housing
  • Collections > Outfit Styles
  • Friends > Friends
  • Friends > Ignored
  • Group > Zone Guide
  • Guilds > Ranks
  • Guilds > Recruitment
  • Guilds > Heraldry
  • Guilds > History
  • Help > Tutorials
  • Help > Customer Support
  • Help > Emotes
  • Inventory > Quickslots
  • Journal > Cadwell's Almanac
  • Journal > Lore Library
  • Journal > Leaderboards
  • Mail > Inbox
  • Mail > Send
  • Map > Key
  • Map > Filters
  • Map > Locations
I hope to find a way to support them later, if nothing else then by getting ZOS to increase or remove the keybindings shadow limit.

1.3.0 - 2020-05-03
- Tab switching in the Crown Store panel now works reliably.

1.2.1 - 2020-05-03
- Fixed a bug that could occur when switching from certain panels to inventory or map tabs.

1.2.0 - 2020-05-03
- The inventory and map tabs are now supported.

1.1.0 - 2020-05-02
- The add-on now enables chording so Ctrl/Alt/Shift/Command can be used in keybinds. This allows keybinds like Ctrl+B, Ctrl+Shift+B, or even Ctrl+Alt+Shift+B.
Optional Files (0)


Archived Files (11)
File Name
Version
Size
Uploader
Date
1.7.0
14kB
Aenathel
05/17/20 04:51 AM
1.6.0
13kB
Aenathel
05/16/20 10:24 AM
1.5.0
13kB
Aenathel
05/12/20 02:37 PM
1.4.2
10kB
Aenathel
05/10/20 04:28 AM
1.4.1
10kB
Aenathel
05/09/20 04:02 PM
1.4.0
10kB
Aenathel
05/05/20 01:42 PM
1.3.0
11kB
Aenathel
05/03/20 03:38 PM
1.2.1
11kB
Aenathel
05/03/20 02:23 PM
1.2.0
11kB
Aenathel
05/03/20 08:35 AM
1.1.0
9kB
Aenathel
05/02/20 04:14 PM
1.0.0
9kB
05/02/20 02:01 PM


Post A Reply Comment Options
Unread 07/08/20, 03:13 AM  
Zelow

Forum posts: 0
File comments: 7
Uploads: 0
Love it so far!

Digging the addon, quick suggestion tho. Any chance we could get a binding for Journal -> Antiquities?
Report comment to moderator  
Reply With Quote
Unread 05/06/20, 10:57 AM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
Originally Posted by Baertram
Unfortunately they do not need to be bound, just need to exist as it seems
But to be honest: I'm already at the keybindings limit on my keyboard with all the addons active + chording enabled.
Most keybinds cannot be used in some windows as e.g. W or s + shift will "Move your character" as the s is global -> Menu closed, keybind not working.
And so on
Has anyone tried asking ZOS to increase/rework this limit? I imagine it's a storage concern, but storing unbound keys shouldn't be an issue...
Report comment to moderator  
Reply With Quote
Unread 05/05/20, 01:52 PM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2978
File comments: 3596
Uploads: 62
Unfortunately they do not need to be bound, just need to exist as it seems
But to be honest: I'm already at the keybindings limit on my keyboard with all the addons active + chording enabled.
Most keybinds cannot be used in some windows as e.g. W or s + shift will "Move your character" as the s is global -> Menu closed, keybind not working.
And so on

Originally Posted by Aenathel
Originally Posted by Baertram
Just a hint about keybinds:
The server got a "shadow" limit!
YOu can only enable like 150 to 200 keybindings. If you enable more because you use so many addons which use keybindings, the server will not save the keybindings anymore!
They work if you set them, for the current session.
After logout they are gone again.
You need to disable addons then to be able to set the keybinds for the other addons.
So better do not add "too much" with 1 addon (or include all needed keybinds in 1 addon, which is simply not possible ).
Just hit the limit. I thought they would have to be bound to count, but guess not.

So there goes my dream of adding keybinds for most things.

I guess I'll slim it down to the keybinds I find essential, but of course that might limit the usefulness of the add-on for other people. Such a shame. All just because of this stupid limit.
Report comment to moderator  
Reply With Quote
Unread 05/05/20, 12:29 PM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
Originally Posted by Baertram
Just a hint about keybinds:
The server got a "shadow" limit!
YOu can only enable like 150 to 200 keybindings. If you enable more because you use so many addons which use keybindings, the server will not save the keybindings anymore!
They work if you set them, for the current session.
After logout they are gone again.
You need to disable addons then to be able to set the keybinds for the other addons.
So better do not add "too much" with 1 addon (or include all needed keybinds in 1 addon, which is simply not possible ).
Just hit the limit. I thought they would have to be bound to count, but guess not.

So there goes my dream of adding keybinds for most things.

I guess I'll slim it down to the keybinds I find essential, but of course that might limit the usefulness of the add-on for other people. Such a shame. All just because of this stupid limit.
Report comment to moderator  
Reply With Quote
Unread 05/03/20, 02:30 PM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
The bug when switching from the Crown Store panel to any of the inventory or map tabs has been fixed in the just released v1.2.1.
Report comment to moderator  
Reply With Quote
Unread 05/03/20, 12:37 PM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
I'm aware of a bug with the inventory and map keybinds that occur if you switch to them from another scene.
Report comment to moderator  
Reply With Quote
Unread 05/03/20, 08:39 AM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
New version is out with working inventory and map keybinds!

Thanks for the tips, Baertram! It got a little ugly, and I hope to clean up the code later, but it works.
Report comment to moderator  
Reply With Quote
Unread 05/03/20, 01:15 AM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
Originally Posted by Baertram
Found another way for the inventory:
SCENE_MANAGER:Show("inventory")

inventory is the scene name of the inventory.
You can also open other scenes via their name like this.
Some of them are defined here, or at least named here:
https://github.com/esoui/esoui/blob/...gamescenes.lua
Yeah, I got that far myself. Showing the inventory wasn't the issue, showing the correct tab and switching between them was.

Originally Posted by Baertram
Just a hint about keybinds:
The server got a "shadow" limit!
YOu can only enable like 150 to 200 keybindings. If you enable more because you use so many addons which use keybindings, the server will not save the keybindings anymore!
They work if you set them, for the current session.
After logout they are gone again.
You need to disable addons then to be able to set the keybinds for the other addons.
So better do not add "too much" with 1 addon (or include all needed keybinds in 1 addon, which is simply not possible ).
I'm aware of the keybindings limit, but I don't actually bind every single one of them--and I don't expect users of the add-on to do so, either. But I like to give people the choice, hence all the chat keybinds, for example, even though I personally only use 3 of them. I'll put a note in the description, though, so users have a chance to find out.

Maybe I could even check how many keys have been bound and warn the user if they have bound too many...
Report comment to moderator  
Reply With Quote
Unread 05/02/20, 05:02 PM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2978
File comments: 3596
Uploads: 62
Found another way for the inventory:
SCENE_MANAGER:Show("inventory")

inventory is the scene name of the inventory.
You can also open other scenes via their name like this.
Some of them are defined here, or at least named here:
https://github.com/esoui/esoui/blob/...gamescenes.lua


Just a hint about keybinds:
The server got a "shadow" limit!
YOu can only enable like 150 to 200 keybindings. If you enable more because you use so many addons which use keybindings, the server will not save the keybindings anymore!
They work if you set them, for the current session.
After logout they are gone again.
You need to disable addons then to be able to set the keybinds for the other addons.
So better do not add "too much" with 1 addon (or include all needed keybinds in 1 addon, which is simply not possible ).
Last edited by Baertram : 05/02/20 at 05:04 PM.
Report comment to moderator  
Reply With Quote
Unread 05/02/20, 04:20 PM  
Aenathel
 
Aenathel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 22
Uploads: 3
Originally Posted by Baertram
Cool idea.
Thanks! I've wanted to make this for ages, but never got around to it. It surprised me how little effort it took to make it work.

Originally Posted by Baertram
About the worldmap, you can use this function e.g. to change the worldmap tabs (right panel):
Lua Code:
  1. --Show the worldmap
  2. ZO_WorldMap_ShowWorldMap()
  3. --Simulate click on the zo_menubar of the worldmap (ZO_WorldMapInfoMenuBar), at button 4 (from the left) -> selected via it's descriptor):
  4. ZO_MenuBar_SelectDescriptor(ZO_WorldMapInfoMenuBar,
  5. ZO_WorldMapInfoMenuBar.m_object.m_buttons[4][1].m_object.m_buttonData.descriptor)

This will change to the 4th button (as table index ZO_WorldMapInfoMenuBar.m_object.m_buttons[4] was chosen).

Maybe you can find out the descriptors of the buttons more easily as well somehow so you do not need to crawl all the way through ZO_WorldMapInfoMenuBar.m_object.m_buttons[buttinIndex].m_object.m_buttonData
to get the descriptor.


Player inventory:

Via the settings menu -> keybindings -> Inventory
https://github.com/esoui/esoui/blob/...board.lua#L110

I found the menu category MENU_CATEGORY_INVENTORY.
and then with a search for this keybind I found the function in the global keybinds:
https://github.com/esoui/esoui/blob/...dings.xml#L362


Lua Code:
  1. SYSTEMS:GetObject("mainMenu"):ToggleCategory(MENU_CATEGORY_INVENTORY)

With the inv opened:
Lua Code:
  1. ZO_PlayerInventoryTabs.m_object:SelectDescriptor(index)
  2. index is a number from 0 (All items) to 8 (Junk) (or even 9 if you use additional addons like Harvens Stolen Filter which adds filter buttons there)
Thanks for the tips! I've been looking at that part of the code, but hadn't managed to connect the dots yet.
Report comment to moderator  
Reply With Quote
Unread 05/02/20, 02:57 PM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2978
File comments: 3596
Uploads: 62
Cool idea.

About the worldmap, you can use this function e.g. to change the worldmap tabs (right panel):
Lua Code:
  1. --Show the worldmap
  2. ZO_WorldMap_ShowWorldMap()
  3. --Simulate click on the zo_menubar of the worldmap (ZO_WorldMapInfoMenuBar), at button 4 (from the left) -> selected via it's descriptor):
  4. ZO_MenuBar_SelectDescriptor(ZO_WorldMapInfoMenuBar,
  5. ZO_WorldMapInfoMenuBar.m_object.m_buttons[4][1].m_object.m_buttonData.descriptor)

This will change to the 4th button (as table index ZO_WorldMapInfoMenuBar.m_object.m_buttons[4] was chosen).

Maybe you can find out the descriptors of the buttons more easily as well somehow so you do not need to crawl all the way through ZO_WorldMapInfoMenuBar.m_object.m_buttons[buttinIndex].m_object.m_buttonData
to get the descriptor.


Player inventory:

Via the settings menu -> keybindings -> Inventory
https://github.com/esoui/esoui/blob/912d077a98c278b9074b9a7c630c92086a4d56a4/esoui/ingame/mainmenu/keyboard/zo_mainmenu_keyboard.lua#L110

I found the menu category MENU_CATEGORY_INVENTORY.
and then with a search for this keybind I found the function in the global keybinds:
https://github.com/esoui/esoui/blob/912d077a98c278b9074b9a7c630c92086a4d56a4/esoui/ingame/globals/bindings.xml#L362


Lua Code:
  1. SYSTEMS:GetObject("mainMenu"):ToggleCategory(MENU_CATEGORY_INVENTORY)

With the inv opened:
Lua Code:
  1. ZO_PlayerInventoryTabs.m_object:SelectDescriptor(index)
  2. index is a number from 0 (All items) to 8 (Junk) (or even 9 if you use additional addons like Harvens Stolen Filter which adds filter buttons there)
Last edited by Baertram : 05/02/20 at 03:36 PM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: