cli-high
Version:
tiny cli highlighter
3 lines (2 loc) • 2.56 kB
JavaScript
import p from"node:path";import h from"node:fs/promises";import t from"node:process";import{hideBin as m}from"yargs/helpers";import d from"yargs";import{note as u,log as n,intro as g}from"@clack/prompts";import{inverse as y,redStylize as o,magentaStylize as b,dim as f}from"xycolors";import{highlight as x}from"./index.mjs";import"sugar-high";const v="cli-high",k="0.4.3",w="tiny cli highlighter",j="module",S=["cli","highlighter","highlight","color","terminal","console"],z="MIT",$="https://github.com/xinyao27/cli-high#readme",N={url:"https://github.com/xinyao27/cli-high/issues"},D={type:"git",url:"git+https://github.com/xinyao27/cli-high.git"},E={name:"xinyao",email:"hi@xinyao.me"},F="https://github.com/sponsors/xinyao27",I=["bin/*","dist/*","package.json"],L="./dist/index.cjs",O="./dist/index.mjs",T="./dist/index.d.ts",q={".":{types:"./dist/index.d.ts",require:"./dist/index.cjs",import:"./dist/index.mjs"}},B=!1,H="./bin/index.js",M={build:"unbuild",stub:"unbuild --stub",typecheck:"tsc --noEmit",lint:"nr typecheck && eslint . --fix",prepublishOnly:"nr build",release:"release-it",start:"bun run src/index.ts",test:"bun test",up:"taze major -I",prepare:"husky"},_={"@clack/prompts":"^0.7.0","sugar-high":"^0.7.1",xycolors:"^0.1.2",yargs:"^17.7.2"},A={"@antfu/ni":"^0.23.0","@commitlint/cli":"^19.5.0","@release-it/conventional-changelog":"^9.0.0","@types/bun":"^1.1.11","@types/yargs":"^17.0.33","@xystack/style-guide":"^0.2.4",commitizen:"^4.3.1","cz-conventional-changelog":"^3.3.0",eslint:"^9.12.0",husky:"^9.1.6","lint-staged":"^15.2.10",prettier:"^3.3.3","release-it":"^17.9.0",taze:"^0.17.2",typescript:"^5.6.3",unbuild:"^2.0.0"},C="@xystack/style-guide/prettier",s={name:v,version:k,description:w,type:j,keywords:S,license:z,homepage:$,bugs:N,repository:D,author:E,funding:F,files:I,main:L,module:O,types:T,exports:q,sideEffects:B,bin:H,scripts:M,dependencies:_,devDependencies:A,prettier:C};function G(){console.log(`
`),g(`\u2728 ${b(`${s.name} `)}${f(`v${s.version}`)}`)}const J=d(m(t.argv)).scriptName("cli-high").usage("").command("*","Outputs a file or STDIN input with syntax highlighting",e=>e.option("showLineNumbers",{alias:"s",description:"Show line numbers",type:"boolean"}).help(),async e=>{const{_:r,showLineNumbers:c}=e;G();try{const i=p.join(t.cwd(),r[0].toString()),l=await h.readFile(i,"utf-8"),a=x(l,{showLineNumbers:c});u(a)}catch(i){n.error(y(o(" Failed to read file"))),n.error(o(`\u2718 ${String(i)}`)),t.exit(1)}}).showHelpOnFail(!1).alias("h","help").version("version",s.version).alias("v","version");J.help().argv;