12345678910111213141516171819202122232425262728293031 |
- /*---------------------------------------------------------------------------------------------
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
- export function getSpaceCnt(str, tabSize) {
- let spacesCnt = 0;
- for (let i = 0; i < str.length; i++) {
- if (str.charAt(i) === '\t') {
- spacesCnt += tabSize;
- }
- else {
- spacesCnt++;
- }
- }
- return spacesCnt;
- }
- export function generateIndent(spacesCnt, tabSize, insertSpaces) {
- spacesCnt = spacesCnt < 0 ? 0 : spacesCnt;
- let result = '';
- if (!insertSpaces) {
- let tabsCnt = Math.floor(spacesCnt / tabSize);
- spacesCnt = spacesCnt % tabSize;
- for (let i = 0; i < tabsCnt; i++) {
- result += '\t';
- }
- }
- for (let i = 0; i < spacesCnt; i++) {
- result += ' ';
- }
- return result;
- }
|