├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── esbuild.js ├── package.json ├── src └── index.ts ├── tsconfig.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | lib 2 | node_modules/ 3 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | src 2 | node_modules 3 | tsconfig.json 4 | *.map 5 | .tags 6 | .DS_Store 7 | webpack.config.js 8 | yarn.lock 9 | yarn-error.log 10 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Heyward Fann 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # coc-ci 2 | 3 | 支持中文分词的 `w/b` 移动。 4 | 5 | ![1](https://user-images.githubusercontent.com/345274/76495493-f43de300-6471-11ea-82af-c9d9b0b32008.gif) 6 | 7 | ## Install 8 | 9 | `:CocInstall coc-ci` 10 | 11 | ## Usage 12 | 13 | ```vim 14 | nmap w (coc-ci-w) 15 | nmap b (coc-ci-b) 16 | ``` 17 | 18 | ## License 19 | 20 | MIT 21 | 22 | --- 23 | 24 | > This extension is created by [create-coc-extension](https://github.com/fannheyward/create-coc-extension) 25 | -------------------------------------------------------------------------------- /esbuild.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable @typescript-eslint/no-var-requires */ 2 | async function start(watch) { 3 | await require('esbuild').build({ 4 | entryPoints: ['src/index.ts'], 5 | bundle: true, 6 | watch, 7 | minify: process.env.NODE_ENV === 'production', 8 | sourcemap: process.env.NODE_ENV === 'development', 9 | mainFields: ['module', 'main'], 10 | external: ['coc.nvim'], 11 | platform: 'node', 12 | target: 'node10.12', 13 | outfile: 'lib/index.js', 14 | }); 15 | } 16 | 17 | let watch = false; 18 | if (process.argv.length > 2 && process.argv[2] === '--watch') { 19 | console.log('watching...'); 20 | watch = { 21 | onRebuild(error) { 22 | if (error) { 23 | console.error('watch build failed:', error); 24 | } else { 25 | console.log('watch build succeeded'); 26 | } 27 | }, 28 | }; 29 | } 30 | 31 | start(watch).catch((e) => { 32 | console.error(e); 33 | }); 34 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "coc-ci", 3 | "version": "0.1.0", 4 | "description": "支持中文分词的 w/b 移动", 5 | "author": "Heyward Fann ", 6 | "license": "MIT", 7 | "main": "lib/index.js", 8 | "keywords": [ 9 | "coc.nvim" 10 | ], 11 | "engines": { 12 | "coc": "^0.0.80" 13 | }, 14 | "scripts": { 15 | "build": "node esbuild.js", 16 | "prepare": "node esbuild.js" 17 | }, 18 | "devDependencies": { 19 | "@types/node": "^16.4.10", 20 | "coc.nvim": "^0.0.80", 21 | "esbuild": "^0.12.5", 22 | "segmentit": "^2.0.3", 23 | "typescript": "^4.0.2" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import { ExtensionContext, workspace } from 'coc.nvim'; 2 | import { enPOSTag, Segment, SegmentToken, useDefault } from 'segmentit'; 3 | 4 | const segmentit = useDefault(new Segment()); 5 | 6 | async function fallbackMove(w = true) { 7 | await workspace.nvim.eval(`feedkeys(${w ? '"w"' : '"b"'}, "n")`); 8 | } 9 | 10 | async function move(w = true) { 11 | const { nvim } = workspace; 12 | const line = await nvim.line; 13 | if (!line) { 14 | return fallbackMove(w); 15 | } 16 | 17 | const cursor = await nvim.eval('[line("."), col(".")]'); 18 | const col = cursor[1]; 19 | 20 | const lineBuf = Buffer.from(line); 21 | if (col >= lineBuf.length) { 22 | return fallbackMove(w); 23 | } 24 | 25 | const lineBegin = lineBuf.subarray(0, col - 1).toString(); 26 | const lineEnd = lineBuf.subarray(col - 1).toString(); 27 | const parts = segmentit.doSegment(w ? lineEnd : lineBegin) as SegmentToken[]; 28 | if (!parts || parts.length <= 0) { 29 | return fallbackMove(w); 30 | } 31 | 32 | const seg = w ? parts[0] : parts[parts.length - 1]; 33 | if (['un', 'nx', 'w', 'uri'].includes(enPOSTag(seg.p))) { 34 | return fallbackMove(w); 35 | } 36 | 37 | const len = Buffer.from(seg.w).length; 38 | await nvim.call('cursor', [cursor[0], w ? col + len : col - len]); 39 | } 40 | 41 | export async function activate(context: ExtensionContext): Promise { 42 | context.subscriptions.push( 43 | workspace.registerKeymap( 44 | ['n'], 45 | 'ci-w', 46 | async () => { 47 | await move(); 48 | }, 49 | { sync: false, cancel: true, silent: true } 50 | ), 51 | 52 | workspace.registerKeymap( 53 | ['n'], 54 | 'ci-b', 55 | async () => { 56 | await move(false); 57 | }, 58 | { sync: false, cancel: true, silent: true } 59 | ) 60 | ); 61 | } 62 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es2017", 4 | "lib": ["es2017", "es2018"], 5 | "module": "commonjs", 6 | "declaration": false, 7 | "sourceMap": true, 8 | "outDir": "lib", 9 | "strict": true, 10 | "moduleResolution": "node", 11 | "noImplicitAny": false, 12 | "esModuleInterop": true 13 | }, 14 | "include": ["src"] 15 | } 16 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0": 6 | version "7.5.5" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 8 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/highlight@^7.0.0": 13 | version "7.5.0" 14 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" 15 | integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== 16 | dependencies: 17 | chalk "^2.0.0" 18 | esutils "^2.0.2" 19 | js-tokens "^4.0.0" 20 | 21 | "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2": 22 | version "7.7.2" 23 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a" 24 | integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw== 25 | dependencies: 26 | regenerator-runtime "^0.13.2" 27 | 28 | "@types/node@^16.4.10": 29 | version "16.4.10" 30 | resolved "https://registry.yarnpkg.com/@types/node/-/node-16.4.10.tgz#e57e2a54fc6da58da94b3571b1cb456d39f88597" 31 | integrity sha512-TmVHsm43br64js9BqHWqiDZA+xMtbUpI1MBIA0EyiBmoV9pcEYFOSdj5fr6enZNfh4fChh+AGOLIzGwJnkshyQ== 32 | 33 | "@types/parse-json@^4.0.0": 34 | version "4.0.0" 35 | resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" 36 | integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== 37 | 38 | ansi-styles@^3.2.1: 39 | version "3.2.1" 40 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 41 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 42 | dependencies: 43 | color-convert "^1.9.0" 44 | 45 | babel-plugin-macros@^2.6.1: 46 | version "2.8.0" 47 | resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" 48 | integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== 49 | dependencies: 50 | "@babel/runtime" "^7.7.2" 51 | cosmiconfig "^6.0.0" 52 | resolve "^1.12.0" 53 | 54 | babel-plugin-preval@^4.0.0: 55 | version "4.0.0" 56 | resolved "https://registry.yarnpkg.com/babel-plugin-preval/-/babel-plugin-preval-4.0.0.tgz#edb8501167985752aafcc31086791e1314052e9d" 57 | integrity sha512-fZI/4cYneinlj2k/FsXw0/lTWSC5KKoepUueS1g25Gb5vx3GrRyaVwxWCshYqx11GEU4mZnbbFhee8vpquFS2w== 58 | dependencies: 59 | "@babel/runtime" "^7.7.2" 60 | babel-plugin-macros "^2.6.1" 61 | require-from-string "^2.0.2" 62 | 63 | callsites@^3.0.0: 64 | version "3.1.0" 65 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 66 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 67 | 68 | chalk@^2.0.0: 69 | version "2.4.2" 70 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 71 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 72 | dependencies: 73 | ansi-styles "^3.2.1" 74 | escape-string-regexp "^1.0.5" 75 | supports-color "^5.3.0" 76 | 77 | coc.nvim@^0.0.80: 78 | version "0.0.80" 79 | resolved "https://registry.yarnpkg.com/coc.nvim/-/coc.nvim-0.0.80.tgz#785145c382660db03f517f9b497900d95cbd0e4f" 80 | integrity sha512-/3vTcnofoAYMrdENrlQmADTzfXX4+PZ0fiM10a39UA37dTR2dpIGi9O469kcIksuunLjToqWG8S45AGx/9wV7g== 81 | 82 | color-convert@^1.9.0: 83 | version "1.9.3" 84 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 85 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 86 | dependencies: 87 | color-name "1.1.3" 88 | 89 | color-name@1.1.3: 90 | version "1.1.3" 91 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 92 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 93 | 94 | cosmiconfig@^6.0.0: 95 | version "6.0.0" 96 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" 97 | integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== 98 | dependencies: 99 | "@types/parse-json" "^4.0.0" 100 | import-fresh "^3.1.0" 101 | parse-json "^5.0.0" 102 | path-type "^4.0.0" 103 | yaml "^1.7.2" 104 | 105 | error-ex@^1.3.1: 106 | version "1.3.2" 107 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 108 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 109 | dependencies: 110 | is-arrayish "^0.2.1" 111 | 112 | esbuild@^0.12.5: 113 | version "0.12.17" 114 | resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.12.17.tgz#5816f905c2905de0ebbc658860df7b5b48afbcd3" 115 | integrity sha512-GshKJyVYUnlSXIZj/NheC2O0Kblh42CS7P1wJyTbbIHevTG4jYMS9NNw8EOd8dDWD0dzydYHS01MpZoUcQXB4g== 116 | 117 | escape-string-regexp@^1.0.5: 118 | version "1.0.5" 119 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 120 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 121 | 122 | esutils@^2.0.2: 123 | version "2.0.3" 124 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 125 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 126 | 127 | has-flag@^3.0.0: 128 | version "3.0.0" 129 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 130 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 131 | 132 | import-fresh@^3.1.0: 133 | version "3.2.1" 134 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" 135 | integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== 136 | dependencies: 137 | parent-module "^1.0.0" 138 | resolve-from "^4.0.0" 139 | 140 | is-arrayish@^0.2.1: 141 | version "0.2.1" 142 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 143 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 144 | 145 | js-tokens@^4.0.0: 146 | version "4.0.0" 147 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 148 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 149 | 150 | json-parse-better-errors@^1.0.1: 151 | version "1.0.2" 152 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 153 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 154 | 155 | lines-and-columns@^1.1.6: 156 | version "1.1.6" 157 | resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" 158 | integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= 159 | 160 | parent-module@^1.0.0: 161 | version "1.0.1" 162 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 163 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 164 | dependencies: 165 | callsites "^3.0.0" 166 | 167 | parse-json@^5.0.0: 168 | version "5.0.0" 169 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" 170 | integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== 171 | dependencies: 172 | "@babel/code-frame" "^7.0.0" 173 | error-ex "^1.3.1" 174 | json-parse-better-errors "^1.0.1" 175 | lines-and-columns "^1.1.6" 176 | 177 | path-parse@^1.0.6: 178 | version "1.0.7" 179 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" 180 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 181 | 182 | path-type@^4.0.0: 183 | version "4.0.0" 184 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" 185 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== 186 | 187 | preval.macro@^4.0.0: 188 | version "4.0.0" 189 | resolved "https://registry.yarnpkg.com/preval.macro/-/preval.macro-4.0.0.tgz#24218fa36f68bf8a01a8c65c45d19a3ccad6496c" 190 | integrity sha512-sJJnE71X+MPr64CVD2AurmUj4JEDqbudYbStav3L9Xjcqm4AR0ymMm6sugw1mUmfI/7gw4JWA4JXo/k6w34crw== 191 | dependencies: 192 | babel-plugin-preval "^4.0.0" 193 | 194 | regenerator-runtime@^0.13.2: 195 | version "0.13.3" 196 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" 197 | integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== 198 | 199 | require-from-string@^2.0.2: 200 | version "2.0.2" 201 | resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" 202 | integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== 203 | 204 | resolve-from@^4.0.0: 205 | version "4.0.0" 206 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 207 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 208 | 209 | resolve@^1.12.0: 210 | version "1.12.0" 211 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" 212 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== 213 | dependencies: 214 | path-parse "^1.0.6" 215 | 216 | segmentit@^2.0.3: 217 | version "2.0.3" 218 | resolved "https://registry.yarnpkg.com/segmentit/-/segmentit-2.0.3.tgz#799897667acbc518b27811acdb2a341a79c7973f" 219 | integrity sha512-7mn2XL3OdTUQ+AhHz7SbgyxLTaQRzTWQNVwiK+UlTO8aePGbSwvKUzTwE4238+OUY9MoR6ksAg35zl8sfTunQQ== 220 | dependencies: 221 | preval.macro "^4.0.0" 222 | 223 | supports-color@^5.3.0: 224 | version "5.5.0" 225 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 226 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 227 | dependencies: 228 | has-flag "^3.0.0" 229 | 230 | typescript@^4.0.2: 231 | version "4.3.5" 232 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.5.tgz#4d1c37cc16e893973c45a06886b7113234f119f4" 233 | integrity sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA== 234 | 235 | yaml@^1.7.2: 236 | version "1.7.2" 237 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.7.2.tgz#f26aabf738590ab61efaca502358e48dc9f348b2" 238 | integrity sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw== 239 | dependencies: 240 | "@babel/runtime" "^7.6.3" 241 | --------------------------------------------------------------------------------