Really quick post here.
I was wanting to set up aliases for CommandBox. Here’s a few examples:
Notice Line 2? The problem was that I wanted to use
bss for both
box server start and
box server stop. “Wouldn’t it be nice,” I wondered, “if CommandBox would just choose the right one?”
Yes. Yes, it would.
I started with a pull request. Brad Wood helped me out with some code review and helped me realize that this was better off as a ForgeBox command.
Brad also talked about how CommandBox commands are moving to modules in the next version.
While I’m super excited for that (Modules are the best!), I wanted this now, so this is a normal CommandBox command.
The code was pretty simple:
toggle command is nested in a
server folder. CommandBox nests commands in namespaces according to their folder structure. By nesting
server, I am essentially adding the
toggle command to the existing
Also note the
aliasesmetadata on the command of
toggle. That let’s us just type
toggleas opposed to
One thing to note is Line 6. The value in
createPackageDirectory overrides the default name for the package. Since my package’s name is
server-toggle, CommandBox was installing it to a
server-toggle folder. Specifiying
server in the
createPackageDirectory field ensures this command is under the
That’s it! You can check out the code on GitHub or install the package yourself by running
install server-toggle in CommandBox.