[HN Gopher] Textual Adds a Command Palette
___________________________________________________________________
Textual Adds a Command Palette
Author : willm
Score : 52 points
Date : 2023-09-16 13:54 UTC (9 hours ago)
(HTM) web link (textual.textualize.io)
(TXT) w3m dump (textual.textualize.io)
| eichin wrote:
| Love it, but ctl-\ in particular ("send sigquit", ie. core-dump
| the app) will make me twitch every time :-)
| isoprophlex wrote:
| This will come off as angry old-man-yells-at-UI but man do I
| dislike the concept of a command palette. It just feels so lazy.
| Stuff everything wherever you want and the command palette will
| sort it out.
|
| I'm happy to change my mind, maybe there's good use cases for
| it/people that really like the concept... but every time I have
| to use one, it feels suboptimal. As if there was a logical menu
| structure & keymap on the roadmap, but the software needed
| shipping, so now everything is everywhere and the user will just
| have to search for it.
|
| Edit: thank you everyone for the thoughtful replies. I will try
| to love these things in the coming weeks.
| SnowflakeOnIce wrote:
| This is not quite a command palette, but in macOS apps, you can
| press command-shift-/ to search the names of menu commands. I
| use that frequently in apps that I don't use regularly (and
| hence don't remember where all the menu items are). Very
| helpful for discoverability.
| bloopernova wrote:
| That's great!
|
| and _of course_ Microsoft Teams (preview) breaks it.
| BiteCode_dev wrote:
| And they world agree since we never adopted search engine and
| stayed on web portails with index of sites.
| agumonkey wrote:
| Menus have limits, and fuzzy search is most often the right fit
| there.
| milkshakes wrote:
| have you ever used spotlight? 1password? sublime? vscode?
|
| there are definitely use cases where a command palette is a
| vast improvement over navigating through multiple
| folders/menus, and it keeps your hands from leaving the
| keyboard
| frou_dh wrote:
| Sublime Text where the current style of Command Palette was
| created/popularised does have hierarchical menus, context
| menus, and keybindings with the commands. The Palette is an
| alternative interface for accessing the same stuff.
| willm wrote:
| I use the command palette in VSCode frequently. Almost
| everything is available as a keybinding, or with a few clicks
| in nested menus, but I've only committed a subset to memory.
| The command palette means I only need remember the name of
| something to quickly find it again.
|
| The Textual CP can also provide dynamic commands. Like opening
| a file. If I wanted to open "foo.py" I could hit "ofp" to match
| the "open foo.py" command (or any other matching fuzzy search).
| That's likely to be faster than a file open dialog.
| davepdotorg wrote:
| I've been using a "command palette" in the same app since the
| mid 90s, on lots of different operating systems, and I've never
| really found that it's a lazy way to make commands available.
| Mostly what I want to use _is_ available from a menu, and /or
| available from keyboard bindings, but if I wish I can also pull
| up the command palette and run the command directly --
| sometimes that's handy if I personally know what the command is
| called but I can't remember which menu it might be in, or what
| the key binding is.
|
| Of course, it's not called a "command palette"; normally Emacs
| calls it `execute-extended-command`, and more commonly people
| will refer to it as the minibuffer.
|
| But that's just me doing the angry-old-man-yells-about-ancient-
| useful-UI thing. ;-)
| hprotagonist wrote:
| and then embark, the right-click of emacs!
| chimichurri wrote:
| Notion too. Slash commands (command pallete) provide a quick
| and easy way to execute actions without navigating through
| menus. I would argue that slash commands are much more
| discoverable than keyboard or graphical menus since they
| present of the option for documentation snippets.
| agumonkey wrote:
| I wonder how it would look if they had some kind of fuzzy command
| bar where you could evaluate code.
| wakahiu wrote:
| This is very cool and I can see how it'd be helpful for users.
| How did you arrive at this feature? Slash command's
| discoverability is key. The commands serve as documentation and
| hints. Additionally, love the fact that users can create
| customized commands as shortcuts for frequent workflows or other
| logic. Reduces repetitive clicking/navigating.
|
| As the builder of LeapTable
| (https://github.com/peterwnjenga/leaptable), an open-source low-
| code database powered by AI agents, one of the first pieces of
| feedback I received from early users was the desire for slash
| commands similar to Notion.
|
| After evaluating different options, I settled on incorporating
| PlateJS (https://platejs.org/docs/mention) to enable @mention-
| style slash commands in LeapTable's React-based interface.
|
| PlateJS proved to be a great fit for easily bringing robust slash
| command capabilities into our webapp. The @mention commands allow
| for convenient execution of actions, integration with external
| services, and automation workflows.
|
| For any other React developers looking to incorporate flexible,
| Notion-style slash commands into their webapps, I highly
| recommend checking out PlateJS. It provided the perfect building
| block for enabling rich slash command interactions in LeapTable.
___________________________________________________________________
(page generated 2023-09-16 23:02 UTC)