JSPM

  • Created
  • Published
  • Downloads 71
  • Score
    100M100P100Q85956F
  • License ISC

globby with sort id/chinese/fullwidth number for node-novel

Package Exports

  • node-novel-globby
  • node-novel-globby/g
  • node-novel-globby/g.js
  • node-novel-globby/index.js
  • node-novel-globby/lib/glob-sort
  • node-novel-globby/lib/glob-sort.js
  • node-novel-globby/lib/helper
  • node-novel-globby/lib/helper.js
  • node-novel-globby/lib/options
  • node-novel-globby/lib/options.js
  • node-novel-globby/lib/sort
  • node-novel-globby/lib/sort.js
  • node-novel-globby/lib/util
  • node-novel-globby/lib/util.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (node-novel-globby) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

node-novel-globby

globby with sort id/chinese/fullwidth number for node-novel

npm install node-novel-globby

options

  • useDefaultPatternsExclude: true
  • disableAutoHandle: false
  • disableSort: false
  • libPromise: Promise from bluebird
  • throwEmpty: true - throw error when list is empty
  • checkRoman: false - if true will sort roman as number
  • sortCallback - sort compare function

defaultPatternsExclude

[
    '!**/*.raw.*',
    '!**/*.new.*',
    '!**/out/**/*',
    '!**/raw/**/*',
    '!**/*_out/**/*',
    '!**/待修正屏蔽字.txt',
    '!**/英語.txt',
    '!**/node_modules/**/*',
    '!**/.*/**/*',
    '!**/~*/**/*',
    '!**/~*',
    '!**/.*',
]

demo

import novelGlobby from 'node-novel-globby';
import { globbyASync, globbySync, returnGlobList } from 'node-novel-globby';
const globbyASync = require('node-novel-globby').globbyASync;
globbyASync(patterns: string[], options: IOptions)
    .tap(function (ls)
    {
        console.log(ls);
    })
    .then(returnGlobList)
    .tap(function (ls)
    {
        console.log(ls);
    })
;

console.log(globbySync());

output

{ temp: 
   [ { path: 'temp/00000_序曲.txt',
       path_dir: 'temp',
       dir: 'temp',
       file: '00000_序曲',
       ext: '.txt',
       volume_title: 'temp',
       chapter_title: '序曲',
       val_file: '00000_序曲',
       val_dir: 'temp' },
     { path: 'temp/0000_转载信息.64849.txt',
       path_dir: 'temp',
       dir: 'temp',
       file: '0000_转载信息.64849',
       ext: '.txt',
       volume_title: 'temp',
       chapter_title: '转载信息',
       val_file: '0000_転載信息.64849',
       val_dir: 'temp' },
     { path: 'temp/六話 練級 経験值来源都多虧了山賊.txt',
       path_dir: 'temp',
       dir: 'temp',
       file: '六話 練級 経験值来源都多虧了山賊',
       ext: '.txt',
       volume_title: 'temp',
       chapter_title: '六話 練級 経験值来源都多虧了山賊',
       val_file: '0006_練級_経験值来源都多虧了山賊',
       val_dir: 'temp' },
     { path: 'temp/123.txt',
       path_dir: 'temp',
       dir: 'temp',
       file: '123',
       ext: '.txt',
       volume_title: 'temp',
       chapter_title: '123',
       val_file: '0123',
       val_dir: 'temp' } ] }

with returnGlobList

[ 'temp/00000_序曲.txt',
  'temp/0000_转载信息.64849.txt',
  'temp/六話 練級 経験值来源都多虧了山賊.txt',
  'temp/123.txt' ]

getOptions(patterns, options)

1

let ret = getOptions(patterns, options);
[patterns, options] = [ret.patterns, ret.options];

2

[patterns, options] = getOptions(patterns, options);

use like globby

import globby, { globbyASync, globbySync } from 'node-novel-globby/g';
globby(patterns, options)
globby.sync(patterns, options)
globby.async(patterns, options)

globbyASync(patterns, options)
globbySync(patterns, options)