1
1
mirror of https://github.com/Eugeny/tabby.git synced 2024-11-27 00:50:49 +03:00
tabby/app/lib/cli.ts

44 lines
1.4 KiB
TypeScript
Raw Normal View History

import { app } from 'electron'
2020-03-01 18:10:45 +03:00
export function parseArgs (argv: string[], cwd: string): any {
if (argv[0].includes('node')) {
argv = argv.slice(1)
}
2021-01-02 22:24:26 +03:00
return require('yargs/yargs')(argv.slice(1))
2021-06-30 00:57:04 +03:00
.usage('tabby [command] [arguments]')
.command('open [directory]', 'open a shell in a directory', {
directory: { type: 'string', 'default': cwd },
})
.command(['run [command...]', '/k'], 'run a command in the terminal', {
command: { type: 'string' },
})
.command('profile [profileName]', 'open a tab with specified profile', {
profileName: { type: 'string' },
})
.command('paste [text]', 'paste stdin into the active tab', yargs => {
return yargs.option('escape', {
alias: 'e',
type: 'boolean',
2020-02-05 15:16:31 +03:00
describe: 'Perform shell escaping',
}).positional('text', {
2020-02-05 15:16:31 +03:00
type: 'string',
})
})
.command('recent [index]', 'open a tab with a recent profile', {
profileNumber: { type: 'number' },
})
2021-12-12 14:03:10 +03:00
.version(app.getVersion())
.option('debug', {
alias: 'd',
describe: 'Show DevTools on start',
2020-02-05 15:16:31 +03:00
type: 'boolean',
})
.option('hidden', {
describe: 'Start minimized',
2020-02-05 15:16:31 +03:00
type: 'boolean',
})
.help('help')
2021-01-02 22:24:26 +03:00
.parse()
}