export Configuration. rename all imports to use lower-case singleton

This commit is contained in:
Jason Poon 2018-01-27 18:00:29 +01:00 committed by Jason Poon
parent def2b28027
commit 3749394f25
27 changed files with 127 additions and 127 deletions

View File

@ -10,7 +10,7 @@ import * as vscode from 'vscode';
import { CommandLine } from './src/cmd_line/commandLine';
import { Position } from './src/common/motion/position';
import { Configuration } from './src/configuration/configuration';
import { configuration } from './src/configuration/configuration';
import { EditorIdentity } from './src/editorIdentity';
import { Globals } from './src/globals';
import { ModeName } from './src/mode/mode';
@ -35,7 +35,7 @@ export async function getAndUpdateModeHandler(): Promise<ModeHandler> {
let [curHandler, isNewModeHandler] = await ModeHandlerMap.getOrCreate(activeEditorId.toString());
if (isNewModeHandler) {
if (Configuration.enableNeovim) {
if (configuration.enableNeovim) {
await Neovim.initNvim(curHandler.vimState);
}
extensionContext.subscriptions.push(curHandler);
@ -94,13 +94,13 @@ export async function activate(context: vscode.ExtensionContext) {
// Event to update active configuration items when changed without restarting vscode
vscode.workspace.onDidChangeConfiguration(() => {
Configuration.reload();
configuration.reload();
});
vscode.window.onDidChangeActiveTextEditor(handleActiveEditorChange, this);
vscode.workspace.onDidChangeTextDocument(event => {
if (Configuration.disableExt) {
if (configuration.disableExt) {
return;
}
@ -209,7 +209,7 @@ export async function activate(context: vscode.ExtensionContext) {
const mh = await getAndUpdateModeHandler();
if (args.after) {
for (const key of args.after) {
await mh.handleKeyEvent(Notation.NormalizeKey(key, Configuration.leader));
await mh.handleKeyEvent(Notation.NormalizeKey(key, configuration.leader));
}
return;
}
@ -263,11 +263,11 @@ export async function activate(context: vscode.ExtensionContext) {
}
registerCommand(context, 'toggleVim', async () => {
Configuration.disableExt = !Configuration.disableExt;
toggleExtension(Configuration.disableExt);
configuration.disableExt = !configuration.disableExt;
toggleExtension(configuration.disableExt);
});
for (const boundKey of Configuration.boundKeyCombinations) {
for (const boundKey of configuration.boundKeyCombinations) {
registerCommand(context, boundKey.command, () => handleKeyEvent(`${boundKey.key}`));
}
@ -278,7 +278,7 @@ export async function activate(context: vscode.ExtensionContext) {
}
// This is called last because getAndUpdateModeHandler() will change cursor
toggleExtension(Configuration.disableExt);
toggleExtension(configuration.disableExt);
}
function overrideCommand(
@ -287,7 +287,7 @@ function overrideCommand(
callback: (...args: any[]) => any
) {
const disposable = vscode.commands.registerCommand(command, async args => {
if (Configuration.disableExt) {
if (configuration.disableExt) {
await vscode.commands.executeCommand('default:' + command, args);
return;
}
@ -342,7 +342,7 @@ function handleContentChangedFromDisk(document: vscode.TextDocument): void {
}
async function handleActiveEditorChange(): Promise<void> {
if (Configuration.disableExt) {
if (configuration.disableExt) {
return;
}

View File

@ -1,4 +1,4 @@
import { Configuration } from './../configuration/configuration';
import { configuration } from './../configuration/configuration';
import { ModeName } from './../mode/mode';
import { VimState } from './../state/vimState';
@ -63,17 +63,17 @@ export let compareKeypressSequence = function(one: string[] | string[][], two: s
continue;
}
if (left === '<leader>' && right === Configuration.leader) {
if (left === '<leader>' && right === configuration.leader) {
continue;
}
if (right === '<leader>' && left === Configuration.leader) {
if (right === '<leader>' && left === configuration.leader) {
continue;
}
if (left === Configuration.leader) {
if (left === configuration.leader) {
return false;
}
if (right === Configuration.leader) {
if (right === configuration.leader) {
return false;
}

View File

@ -11,7 +11,7 @@ import { Tab, TabCommand } from './../../cmd_line/commands/tab';
import { Position, PositionDiff } from './../../common/motion/position';
import { Range } from './../../common/motion/range';
import { NumericString } from './../../common/number/numericString';
import { Configuration } from './../../configuration/configuration';
import { configuration } from './../../configuration/configuration';
import { ModeName } from './../../mode/mode';
import { VisualBlockMode } from './../../mode/modes';
import { Register, RegisterMode } from './../../register/register';
@ -795,7 +795,7 @@ class CommandInsertInSearchMode extends BaseCommand {
}
// Make sure search history does not exceed configuration option
if (vimState.globalState.searchStatePrevious.length > Configuration.history) {
if (vimState.globalState.searchStatePrevious.length > configuration.history) {
vimState.globalState.searchStatePrevious.splice(0, 1);
}
@ -1514,7 +1514,7 @@ export class PutCommandVisual extends BaseCommand {
// linewise but not necessarily delete linewise.
let putResult = await new PutCommand(this.multicursorIndex).exec(start, vimState, true);
putResult.currentRegisterMode = isLineWise ? RegisterMode.LineWise : RegisterMode.CharacterWise;
putResult.recordedState.registerName = Configuration.useSystemClipboard ? '*' : '"';
putResult.recordedState.registerName = configuration.useSystemClipboard ? '*' : '"';
putResult = await new operator.YankOperator(this.multicursorIndex).run(putResult, start, end);
putResult.currentRegisterMode = RegisterMode.CharacterWise;
putResult = await new operator.DeleteOperator(this.multicursorIndex).run(

View File

@ -4,7 +4,7 @@ import { RecordedState } from '../../state/recordedState';
import { VimState } from '../../state/vimState';
import { Position, PositionDiff } from './../../common/motion/position';
import { Range } from './../../common/motion/range';
import { Configuration } from './../../configuration/configuration';
import { configuration } from './../../configuration/configuration';
import { ModeName } from './../../mode/mode';
import { Register, RegisterMode } from './../../register/register';
import { TextEditor } from './../../textEditor';
@ -194,7 +194,7 @@ class CommandInsertIndentInCurrentLine extends BaseCommand {
public async exec(position: Position, vimState: VimState): Promise<VimState> {
const originalText = TextEditor.getLineAt(position).text;
const indentationWidth = TextEditor.getIndentationLevel(originalText);
const tabSize = Configuration.tabstop || Number(vimState.editor.options.tabSize);
const tabSize = configuration.tabstop || Number(vimState.editor.options.tabSize);
const newIndentationWidth = (indentationWidth / tabSize + 1) * tabSize;
TextEditor.replaceText(
@ -246,7 +246,7 @@ export class CommandInsertInInsertMode extends BaseCommand {
range: new Range(selection.start as Position, selection.end as Position),
});
} else {
if (line.length > 0 && line.match(/^ +$/) && Configuration.expandtab) {
if (line.length > 0 && line.match(/^ +$/) && configuration.expandtab) {
// If the line is empty except whitespace, backspace should return to
// the next lowest level of indentation.
@ -391,7 +391,7 @@ class CommandDeleteIndentInCurrentLine extends BaseCommand {
return vimState;
}
const tabSize = Configuration.tabstop;
const tabSize = configuration.tabstop;
const newIndentationWidth = (indentationWidth / tabSize - 1) * tabSize;
await TextEditor.replace(

View File

@ -4,7 +4,7 @@ import { PairMatcher } from './../common/matching/matcher';
import { QuoteMatcher } from './../common/matching/quoteMatcher';
import { TagMatcher } from './../common/matching/tagMatcher';
import { Position, PositionDiff } from './../common/motion/position';
import { Configuration } from './../configuration/configuration';
import { configuration } from './../configuration/configuration';
import { ModeName } from './../mode/mode';
import { RegisterMode } from './../register/register';
import { ReplaceState } from './../state/replaceState';
@ -279,7 +279,7 @@ class MoveDown extends BaseMovement {
doesntChangeDesiredColumn = true;
public async execAction(position: Position, vimState: VimState): Promise<Position | IMovement> {
if (Configuration.foldfix && vimState.currentMode !== ModeName.VisualBlock) {
if (configuration.foldfix && vimState.currentMode !== ModeName.VisualBlock) {
return new MoveDownFoldFix().execAction(position, vimState);
}
return position.getDown(vimState.desiredColumn);
@ -308,7 +308,7 @@ class MoveUp extends BaseMovement {
doesntChangeDesiredColumn = true;
public async execAction(position: Position, vimState: VimState): Promise<Position | IMovement> {
if (Configuration.foldfix && vimState.currentMode !== ModeName.VisualBlock) {
if (configuration.foldfix && vimState.currentMode !== ModeName.VisualBlock) {
return new MoveUpFoldFix().execAction(position, vimState);
}
return position.getUp(vimState.desiredColumn);

View File

@ -2,7 +2,7 @@ import * as vscode from 'vscode';
import { Position, PositionDiff } from './../common/motion/position';
import { Range } from './../common/motion/range';
import { Configuration } from './../configuration/configuration';
import { configuration } from './../configuration/configuration';
import { ModeName } from './../mode/mode';
import { Register, RegisterMode } from './../register/register';
import { VimState } from './../state/vimState';
@ -746,7 +746,7 @@ class ActionVisualReflowParagraph extends BaseOperator {
}
public reflowParagraph(s: string, indentLevel: number): string {
const maximumLineLength = Configuration.textwidth - indentLevel - 2;
const maximumLineLength = configuration.textwidth - indentLevel - 2;
const indent = Array(indentLevel + 1).join(' ');
// Chunk the lines by commenting style.

View File

@ -1,6 +1,6 @@
import { VimState } from '../../../state/vimState';
import { Position } from './../../../common/motion/position';
import { Configuration } from './../../../configuration/configuration';
import { configuration } from './../../../configuration/configuration';
import { ModeName } from './../../../mode/mode';
import { RegisterAction } from './../../base';
import { BaseCommand } from './../../commands/actions';
@ -71,7 +71,7 @@ abstract class BaseEasyMotionCommand extends BaseCommand {
public async exec(position: Position, vimState: VimState): Promise<VimState> {
// Only execute the action if the configuration is set
if (!Configuration.easymotion) {
if (!configuration.easymotion) {
return vimState;
} else {
// Search all occurences of the character pressed
@ -118,7 +118,7 @@ function getMatchesForString(
default:
// Search all occurences of the character pressed
const ignorecase =
Configuration.ignorecase && !(Configuration.smartcase && /[A-Z]/.test(searchString));
configuration.ignorecase && !(configuration.smartcase && /[A-Z]/.test(searchString));
const regexFlags = ignorecase ? 'gi' : 'g';
return vimState.easyMotion.sortedSearch(
position,
@ -258,7 +258,7 @@ export class EasyMotionCharMoveCommandBase extends BaseCommand {
public async exec(position: Position, vimState: VimState): Promise<VimState> {
// Only execute the action if easymotion is enabled
if (!Configuration.easymotion) {
if (!configuration.easymotion) {
return vimState;
} else {
vimState.easyMotion = new EasyMotion();

View File

@ -1,7 +1,7 @@
import * as vscode from 'vscode';
import { Position } from './../../../common/motion/position';
import { Configuration } from './../../../configuration/configuration';
import { configuration } from './../../../configuration/configuration';
import { TextEditor } from './../../../textEditor';
import { EasyMotionSearchAction } from './easymotion.cmd';
import { MarkerGenerator } from './markerGenerator';
@ -209,7 +209,7 @@ export class EasyMotion {
private getEasymotionMarkerBackgroundColor() {
return this.getMarkerColor(
Configuration.easymotionMarkerBackgroundColor,
configuration.easymotionMarkerBackgroundColor,
'#000',
'activityBarBadge.background'
);
@ -217,7 +217,7 @@ export class EasyMotion {
private getEasymotionMarkerForegroundColorOneChar() {
return this.getMarkerColor(
Configuration.easymotionMarkerForegroundColorOneChar,
configuration.easymotionMarkerForegroundColorOneChar,
'#f00',
'activityBarBadge.foreground'
);
@ -225,7 +225,7 @@ export class EasyMotion {
private getEasymotionMarkerForegroundColorTwoChar() {
return this.getMarkerColor(
Configuration.easymotionMarkerForegroundColorTwoChar,
configuration.easymotionMarkerForegroundColorTwoChar,
'#ffa500',
'activityBarBadge.foreground'
);
@ -256,16 +256,16 @@ export class EasyMotion {
after: {
contentText: keystroke,
backgroundColor: this.getEasymotionMarkerBackgroundColor(),
height: `${Configuration.easymotionMarkerHeight}px`,
width: `${keystroke.length * Configuration.easymotionMarkerWidthPerChar}px`,
height: `${configuration.easymotionMarkerHeight}px`,
width: `${keystroke.length * configuration.easymotionMarkerWidthPerChar}px`,
color: fontColor,
textDecoration: `none;
font-family: ${Configuration.easymotionMarkerFontFamily};
font-size: ${Configuration.easymotionMarkerFontSize}px;
font-weight: ${Configuration.easymotionMarkerFontWeight};
font-family: ${configuration.easymotionMarkerFontFamily};
font-size: ${configuration.easymotionMarkerFontSize}px;
font-weight: ${configuration.easymotionMarkerFontWeight};
position: absolute;
z-index: 99;
bottom: ${Configuration.easymotionMarkerYOffset}px`,
bottom: ${configuration.easymotionMarkerYOffset}px`,
},
};
// Position should be offsetted by the length of the keystroke to prevent hiding behind the gutter

View File

@ -1,5 +1,5 @@
import { Position } from './../../../common/motion/position';
import { Configuration } from './../../../configuration/configuration';
import { configuration } from './../../../configuration/configuration';
import { EasyMotion } from './easymotion';
export class MarkerGenerator {
@ -46,8 +46,8 @@ export class MarkerGenerator {
* The key sequence for marker name generation
*/
private getKeyTable(): string[] {
if (Configuration.easymotionKeys) {
return Configuration.easymotionKeys.split('');
if (configuration.easymotionKeys) {
return configuration.easymotionKeys.split('');
} else {
return 'hklyuiopnm,qwertzxcvbasdgjf;'.split('');
}

View File

@ -2,7 +2,7 @@ import { VimState } from '../../state/vimState';
import { PairMatcher } from './../../common/matching/matcher';
import { Position } from './../../common/motion/position';
import { Range } from './../../common/motion/range';
import { Configuration } from './../../configuration/configuration';
import { configuration } from './../../configuration/configuration';
import { ModeName } from './../../mode/mode';
import { TextEditor } from './../../textEditor';
import { RegisterAction } from './../base';
@ -138,7 +138,7 @@ class CommandSurroundModeStart extends BaseCommand {
public async exec(position: Position, vimState: VimState): Promise<VimState> {
// Only execute the action if the configuration is set
if (!Configuration.surround) {
if (!configuration.surround) {
return vimState;
}
@ -204,7 +204,7 @@ class CommandSurroundModeStartVisual extends BaseCommand {
public async exec(position: Position, vimState: VimState): Promise<VimState> {
// Only execute the action if the configuration is set
if (!Configuration.surround) {
if (!configuration.surround) {
return vimState;
}

View File

@ -1,6 +1,6 @@
import * as vscode from 'vscode';
import { Configuration } from '../configuration/configuration';
import { configuration } from '../configuration/configuration';
import { Neovim } from '../neovim/nvimUtil';
import { VimState } from '../state/vimState';
import { StatusBar } from '../statusBar';
@ -16,7 +16,7 @@ export class CommandLine {
}
let cmd = await vscode.window.showInputBox(this.getInputBoxOptions(initialText));
if (cmd && cmd[0] === ':' && Configuration.cmdLineInitialColon) {
if (cmd && cmd[0] === ':' && configuration.cmdLineInitialColon) {
cmd = cmd.slice(1);
}
@ -30,7 +30,7 @@ export class CommandLine {
try {
const cmd = parser.parse(command);
const useNeovim = Configuration.enableNeovim && cmd.command && cmd.command.neovimCapable;
const useNeovim = configuration.enableNeovim && cmd.command && cmd.command.neovimCapable;
if (useNeovim) {
await Neovim.command(vimState, command);
@ -55,11 +55,11 @@ export class CommandLine {
private static getInputBoxOptions(text: string): vscode.InputBoxOptions {
return {
prompt: 'Vim command line',
value: Configuration.cmdLineInitialColon ? ':' + text : text,
value: configuration.cmdLineInitialColon ? ':' + text : text,
ignoreFocusOut: false,
valueSelection: [
Configuration.cmdLineInitialColon ? text.length + 1 : text.length,
Configuration.cmdLineInitialColon ? text.length + 1 : text.length,
configuration.cmdLineInitialColon ? text.length + 1 : text.length,
configuration.cmdLineInitialColon ? text.length + 1 : text.length,
],
};
}

View File

@ -1,4 +1,4 @@
import { Configuration } from '../../configuration/configuration';
import { configuration } from '../../configuration/configuration';
import * as util from '../../util';
import * as node from '../node';
@ -65,38 +65,38 @@ export class SetOptionsCommand extends node.CommandBase {
throw new Error('Missing argument.');
}
if (Configuration[this._arguments.name] == null) {
if (configuration[this._arguments.name] == null) {
throw new Error('Unsupported option. ' + this._arguments.name);
}
switch (this._arguments.operator) {
case SetOptionOperator.Set:
Configuration[this._arguments.name] = true;
configuration[this._arguments.name] = true;
break;
case SetOptionOperator.Reset:
Configuration[this._arguments.name] = false;
configuration[this._arguments.name] = false;
break;
case SetOptionOperator.Equal:
Configuration[this._arguments.name] = this._arguments.value!;
configuration[this._arguments.name] = this._arguments.value!;
break;
case SetOptionOperator.Invert:
Configuration[this._arguments.name] = !Configuration[this._arguments.name];
configuration[this._arguments.name] = !configuration[this._arguments.name];
break;
case SetOptionOperator.Append:
Configuration[this._arguments.name] += this._arguments.value!;
configuration[this._arguments.name] += this._arguments.value!;
break;
case SetOptionOperator.Subtract:
if (typeof this._arguments.value! === 'number') {
Configuration[this._arguments.name] -= this._arguments.value! as number;
configuration[this._arguments.name] -= this._arguments.value! as number;
} else {
let initialValue = Configuration[this._arguments.name];
Configuration[this._arguments.name] = initialValue
let initialValue = configuration[this._arguments.name];
configuration[this._arguments.name] = initialValue
.split(this._arguments.value! as string)
.join('');
}
break;
case SetOptionOperator.Info:
let value = Configuration[this._arguments.name];
let value = configuration[this._arguments.name];
if (value === undefined) {
await util.showError(`E518 Unknown option: ${this._arguments.name}`);
} else {

View File

@ -5,7 +5,7 @@ import * as node from '../node';
import * as token from '../token';
import { VimState } from '../../state/vimState';
import { TextEditor } from '../../textEditor';
import { Configuration } from '../../configuration/configuration';
import { configuration } from '../../configuration/configuration';
export interface ISubstituteCommandArguments extends node.ICommandArgs {
pattern: string;
@ -63,7 +63,7 @@ export class SubstituteCommand extends node.CommandBase {
getRegex(args: ISubstituteCommandArguments, vimState: VimState) {
let jsRegexFlags = '';
if (Configuration.substituteGlobalFlag === true) {
if (configuration.substituteGlobalFlag === true) {
// the gdefault flag is on, then /g if on by default and /g negates that
if (!(args.flags & SubstituteFlags.ReplaceAll)) {
jsRegexFlags += 'g';

View File

@ -2,7 +2,7 @@ import * as vscode from 'vscode';
import { TextEditor } from './../../textEditor';
import { Position, PositionDiff } from './../motion/position';
import { Configuration } from '../../configuration/configuration';
import { configuration } from '../../configuration/configuration';
function escapeRegExpCharacters(value: string): string {
return value.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g, '\\$&');
@ -181,7 +181,7 @@ export class PairMatcher {
*/
static immediateMatchingBracket(currentPosition: Position): vscode.Range | undefined {
// Don't delete bracket unless autoClosingBrackets is set
if (!Configuration.getConfiguration().get('editor.autoClosingBrackets')) {
if (!configuration.getConfiguration().get('editor.autoClosingBrackets')) {
return undefined;
}

View File

@ -2,7 +2,7 @@ import * as _ from 'lodash';
import * as vscode from 'vscode';
import { VimState } from '../../state/vimState';
import { Configuration } from './../../configuration/configuration';
import { configuration } from './../../configuration/configuration';
import { VisualBlockMode } from './../../mode/modes';
import { TextEditor } from './../../textEditor';
@ -95,7 +95,7 @@ export class PositionDiff {
}
export class Position extends vscode.Position {
private static NonWordCharacters = Configuration.iskeyword!;
private static NonWordCharacters = configuration.iskeyword!;
private static NonBigWordCharacters = '';
private static NonFileCharacters = '"\'`;<>{}[]()';
@ -655,7 +655,7 @@ export class Position extends vscode.Position {
* is disabled.
*/
public getLineBeginRespectingIndent(): Position {
if (!Configuration.autoindent) {
if (!configuration.autoindent) {
return this.getLineBegin();
}
return this.getFirstLineNonBlankChar();

View File

@ -67,7 +67,7 @@ export interface IKeyRemapping {
* 5. VSCodeVim flavored Vim option default values
*
*/
class ConfigurationClass {
export class Configuration {
private readonly leaderDefault = '\\';
private readonly cursorTypeMap = {
line: vscode.TextEditorCursorStyle.Line,
@ -484,4 +484,4 @@ function overlapSetting(args: {
};
}
export let Configuration = new ConfigurationClass();
export let configuration = new Configuration();

View File

@ -1,6 +1,6 @@
import * as vscode from 'vscode';
import { Configuration } from '../configuration/configuration';
import { configuration } from '../configuration/configuration';
export class Decoration {
static readonly Default = vscode.window.createTextEditorDecorationType({
@ -18,10 +18,10 @@ export class Decoration {
});
static readonly SearchHighlight = vscode.window.createTextEditorDecorationType({
backgroundColor: Configuration.searchHighlightColor,
backgroundColor: configuration.searchHighlightColor,
});
static readonly EasyMotion = vscode.window.createTextEditorDecorationType({
backgroundColor: Configuration.searchHighlightColor,
backgroundColor: configuration.searchHighlightColor,
});
}

View File

@ -2,7 +2,7 @@ import * as _ from 'lodash';
import * as vscode from 'vscode';
import { CommandLine } from '../cmd_line/commandLine';
import { Configuration, IKeyRemapping } from '../configuration/configuration';
import { configuration, IKeyRemapping } from '../configuration/configuration';
import { ModeName } from '../mode/mode';
import { ModeHandler } from '../mode/modeHandler';
import { VimState } from './../state/vimState';
@ -57,7 +57,7 @@ class Remapper implements IRemapper {
constructor(configKey: string, remappedModes: ModeName[], recursive: boolean) {
this._recursive = recursive;
this._remappedModes = remappedModes;
this._remappings = Configuration[configKey] as IKeyRemapping[];
this._remappings = configuration[configKey] as IKeyRemapping[];
}
public async sendKey(

View File

@ -2,7 +2,7 @@ import * as vscode from 'vscode';
import * as modes from './modes';
import { CommandLine } from '../cmd_line/commandLine';
import { Configuration } from '../configuration/configuration';
import { configuration } from '../configuration/configuration';
import { Decoration } from '../configuration/decoration';
import { Remappers } from '../configuration/remapper';
import { Globals } from '../globals';
@ -58,7 +58,7 @@ export class ModeHandler implements vscode.Disposable {
new modes.DisabledMode(),
];
this.vimState = new VimState(vscode.window.activeTextEditor!, Configuration.startInInsertMode);
this.vimState = new VimState(vscode.window.activeTextEditor!, configuration.startInInsertMode);
this.setCurrentMode(this.vimState.currentMode);
// Sometimes, Visual Studio Code will start the cursor in a position which
@ -75,7 +75,7 @@ export class ModeHandler implements vscode.Disposable {
// Handle scenarios where mouse used to change current position.
const disposable = vscode.window.onDidChangeTextEditorSelection(e => {
if (Configuration.disableExt) {
if (configuration.disableExt) {
return;
}
@ -239,7 +239,7 @@ export class ModeHandler implements vscode.Disposable {
}
if (
Configuration.mouseSelectionGoesIntoVisualMode &&
configuration.mouseSelectionGoesIntoVisualMode &&
!this.currentMode.isVisualMode &&
this.currentMode.name !== ModeName.Insert
) {
@ -268,7 +268,7 @@ export class ModeHandler implements vscode.Disposable {
const now = Number(new Date());
// Rewrite commands
if (Configuration.overrideCopy) {
if (configuration.overrideCopy) {
// The conditions when you trigger a "copy" rather than a ctrl-c are
// too sophisticated to be covered by the "when" condition in package.json
if (key === '<D-c>') {
@ -277,7 +277,7 @@ export class ModeHandler implements vscode.Disposable {
if (key === '<C-c>' && process.platform !== 'darwin') {
if (
!Configuration.useCtrlKeys ||
!configuration.useCtrlKeys ||
this.vimState.currentMode === ModeName.Visual ||
this.vimState.currentMode === ModeName.VisualBlock ||
this.vimState.currentMode === ModeName.VisualLine
@ -289,7 +289,7 @@ export class ModeHandler implements vscode.Disposable {
// <C-d> triggers "add selection to next find match" by default,
// unless users explicity make <C-d>: true
if (key === '<C-d>' && !(Configuration.handleKeys['<C-d>'] === true)) {
if (key === '<C-d>' && !(configuration.handleKeys['<C-d>'] === true)) {
key = '<D-d>';
}
@ -301,7 +301,7 @@ export class ModeHandler implements vscode.Disposable {
try {
// Take the count prefix out to perform the correct remapping.
const keys = this.vimState.recordedState.getCurrentCommandWithoutCountPrefix();
const withinTimeout = now - this.vimState.lastKeyPressedTimestamp < Configuration.timeout;
const withinTimeout = now - this.vimState.lastKeyPressedTimestamp < configuration.timeout;
let handled = false;
@ -1261,12 +1261,12 @@ export class ModeHandler implements vscode.Disposable {
let cursorStyle = Mode.translateCursor(this.currentMode.cursorType);
if (
this.currentMode.cursorType === VSCodeVimCursorType.Native &&
Configuration.userCursor !== undefined
configuration.userCursor !== undefined
) {
cursorStyle = Configuration.userCursor;
cursorStyle = configuration.userCursor;
}
cursorStyle = Configuration.modeToCursorStyleMap[this.currentMode.friendlyName.toLowerCase()] || cursorStyle;
cursorStyle = configuration.modeToCursorStyleMap[this.currentMode.friendlyName.toLowerCase()] || cursorStyle;
let options = this.vimState.editor.options;
options.cursorStyle = cursorStyle;
@ -1310,8 +1310,8 @@ export class ModeHandler implements vscode.Disposable {
// Draw search highlight
let searchRanges: vscode.Range[] = [];
if (
(Configuration.incsearch && this.currentMode.name === ModeName.SearchInProgressMode) ||
(Configuration.hlsearch && vimState.globalState.hl && vimState.globalState.searchState)
(configuration.incsearch && this.currentMode.name === ModeName.SearchInProgressMode) ||
(configuration.hlsearch && vimState.globalState.hl && vimState.globalState.searchState)
) {
const searchState = vimState.globalState.searchState!;
@ -1356,8 +1356,8 @@ export class ModeHandler implements vscode.Disposable {
private _renderStatusBar(): void {
// change status bar color based on mode
if (Configuration.statusBarColorControl) {
const colorToSet = Configuration.statusBarColors[this.currentMode.friendlyName.toLowerCase()];
if (configuration.statusBarColorControl) {
const colorToSet = configuration.statusBarColors[this.currentMode.friendlyName.toLowerCase()];
if (colorToSet !== undefined) {
StatusBar.SetColor(colorToSet);
}
@ -1365,14 +1365,14 @@ export class ModeHandler implements vscode.Disposable {
let text = [];
if (Configuration.showmodename) {
if (configuration.showmodename) {
text.push(this.currentMode.getStatusBarText(this.vimState));
if (this.vimState.isMultiCursor) {
text.push(' MULTI CURSOR ');
}
}
if (Configuration.showcmd) {
if (configuration.showcmd) {
text.push(this.currentMode.getStatusBarCommandText(this.vimState));
}

View File

@ -2,7 +2,7 @@ import { spawn } from 'child_process';
import { attach } from 'promised-neovim-client';
import * as vscode from 'vscode';
import { Configuration } from '../configuration/configuration';
import { configuration } from '../configuration/configuration';
import { ModeName } from '../mode/mode';
import { Register, RegisterMode } from '../register/register';
import { TextEditor } from '../textEditor';
@ -11,13 +11,13 @@ import { VimState } from './../state/vimState';
export class Neovim {
static async initNvim(vimState: VimState) {
const proc = spawn(Configuration.neovimPath, ['-u', 'NONE', '-N', '--embed'], {
const proc = spawn(configuration.neovimPath, ['-u', 'NONE', '-N', '--embed'], {
cwd: __dirname,
});
proc.on('error', function(err) {
console.log(err);
vscode.window.showErrorMessage('Unable to setup neovim instance! Check your path.');
Configuration.enableNeovim = false;
configuration.enableNeovim = false;
});
vimState.nvim = await attach(proc.stdin, proc.stdout);
}
@ -26,11 +26,11 @@ export class Neovim {
static async syncVSToVim(vimState: VimState) {
const nvim = vimState.nvim;
const buf = await nvim.getCurrentBuf();
if (Configuration.expandtab) {
if (configuration.expandtab) {
await vscode.commands.executeCommand('editor.action.indentationToTabs');
}
await nvim.setOption('gdefault', Configuration.substituteGlobalFlag === true);
await nvim.setOption('gdefault', configuration.substituteGlobalFlag === true);
await buf.setLines(0, -1, true, TextEditor.getText().split('\n'));
const [rangeStart, rangeEnd] = [
Position.EarlierOf(vimState.cursorPosition, vimState.cursorStartPosition),
@ -91,7 +91,7 @@ export class Neovim {
new Position(row - 1, character)
);
if (Configuration.expandtab) {
if (configuration.expandtab) {
await vscode.commands.executeCommand('editor.action.indentationToSpaces');
}
// We're only syncing back the default register for now, due to the way we could

View File

@ -1,6 +1,6 @@
import * as _ from 'lodash';
import { Configuration } from '../configuration/configuration';
import { configuration } from '../configuration/configuration';
import { ModeName } from '../mode/mode';
import { BaseAction } from './../actions/base';
import { BaseCommand } from './../actions/commands/actions';
@ -32,7 +32,7 @@ import { Transformation } from './../transformations/transformations';
*/
export class RecordedState {
constructor() {
this.registerName = Configuration.useSystemClipboard ? '*' : '"';
this.registerName = configuration.useSystemClipboard ? '*' : '"';
}
/**
@ -54,7 +54,7 @@ export class RecordedState {
let result = '';
for (const key of this.commandList) {
if (key === Configuration.leader) {
if (key === configuration.leader) {
result += '<leader>';
} else {
result += key;

View File

@ -1,6 +1,6 @@
import * as vscode from 'vscode';
import { Configuration } from '../../src/configuration/configuration';
import { configuration } from '../../src/configuration/configuration';
import { Position } from './../common/motion/position';
import { ModeName } from './../mode/mode';
import { TextEditor } from './../textEditor';
@ -74,9 +74,9 @@ export class SearchState {
* If ignorecase is true, the search should be case insensitive.
* If both ignorecase and smartcase are true, the search is case sensitive only when the search string contains UpperCase character.
*/
let ignorecase = Configuration.ignorecase;
let ignorecase = configuration.ignorecase;
if (ignorecase && Configuration.smartcase && /[A-Z]/.test(search)) {
if (ignorecase && configuration.smartcase && /[A-Z]/.test(search)) {
ignorecase = false;
}

View File

@ -1,7 +1,7 @@
import * as vscode from 'vscode';
import { Position, PositionDiff } from './common/motion/position';
import { Configuration } from './configuration/configuration';
import { configuration } from './configuration/configuration';
import { VimState } from './state/vimState';
import { ReplaceTextTransformation } from './transformations/transformations';
@ -195,7 +195,7 @@ export class TextEditor {
}
static getIndentationLevel(line: string): number {
let tabSize = Configuration.tabstop;
let tabSize = configuration.tabstop;
let firstNonWhiteSpace = 0;
let checkLine = line.match(/^\s*/);
@ -226,8 +226,8 @@ export class TextEditor {
}
static setIndentationLevel(line: string, screenCharacters: number): string {
let tabSize = Configuration.tabstop;
let insertTabAsSpaces = Configuration.expandtab;
let tabSize = configuration.tabstop;
let insertTabAsSpaces = configuration.expandtab;
if (screenCharacters < 0) {
screenCharacters = 0;

View File

@ -1,6 +1,6 @@
import { getAndUpdateModeHandler } from '../../extension';
import { CommandLine } from '../../src/cmd_line/commandLine';
import { Configuration } from '../../src/configuration/configuration';
import { configuration } from '../../src/configuration/configuration';
import { ModeHandler } from '../../src/mode/modeHandler';
import { assertEqualLines, cleanUpWorkspace, setupWorkspace } from './../testUtils';
@ -108,12 +108,12 @@ suite('Basic substitute', () => {
let originalGlobalFlag = false;
setup(async () => {
originalGlobalFlag = Configuration.substituteGlobalFlag;
Configuration.substituteGlobalFlag = true;
originalGlobalFlag = configuration.substituteGlobalFlag;
configuration.substituteGlobalFlag = true;
});
teardown(async () => {
Configuration.substituteGlobalFlag = originalGlobalFlag;
configuration.substituteGlobalFlag = originalGlobalFlag;
});
test('Replace all matches in the line', async () => {

View File

@ -1,7 +1,7 @@
import * as assert from 'assert';
import { getAndUpdateModeHandler } from '../../extension';
import { Configuration } from '../../src/configuration/configuration';
import { configuration } from '../../src/configuration/configuration';
import { ModeName } from '../../src/mode/mode';
import { ModeHandler } from '../../src/mode/modeHandler';
import { TextEditor } from '../../src/textEditor';
@ -688,12 +688,12 @@ suite('Mode Visual', () => {
let originalVisualstarValue = false;
setup(() => {
originalVisualstarValue = Configuration.visualstar;
Configuration.visualstar = true;
originalVisualstarValue = configuration.visualstar;
configuration.visualstar = true;
});
teardown(() => {
Configuration.visualstar = originalVisualstarValue;
configuration.visualstar = originalVisualstarValue;
});
newTest({

View File

@ -3,7 +3,7 @@ import {
buildTriggerKeys,
EasymotionTrigger,
} from '../../src/actions/plugins/easymotion/easymotion.cmd';
import { Configuration } from '../../src/configuration/configuration';
import { configuration } from '../../src/configuration/configuration';
import { ModeHandler } from '../../src/mode/modeHandler';
import { getTestingFunctions } from '../testSimplifier';
import { cleanUpWorkspace, setupWorkspace } from './../testUtils';
@ -19,11 +19,11 @@ suite('easymotion plugin', () => {
setup(async () => {
await setupWorkspace();
modeHandler = await getAndUpdateModeHandler();
Configuration.easymotion = true;
configuration.easymotion = true;
});
teardown(async () => {
Configuration.easymotion = false;
configuration.easymotion = false;
await cleanUpWorkspace();
});

View File

@ -4,7 +4,7 @@ import * as os from 'os';
import { join } from 'path';
import * as vscode from 'vscode';
import { Configuration } from '../src/configuration/configuration';
import { configuration } from '../src/configuration/configuration';
import { TextEditor } from '../src/textEditor';
function rndName() {
@ -118,9 +118,9 @@ export async function cleanUpWorkspace(): Promise<any> {
}
export function setTextEditorOptions(tabSize: number, insertSpaces: boolean): void {
Configuration.enableNeovim = false;
Configuration.tabstop = tabSize;
Configuration.expandtab = insertSpaces;
configuration.enableNeovim = false;
configuration.tabstop = tabSize;
configuration.expandtab = insertSpaces;
let options = vscode.window.activeTextEditor!.options;
options.tabSize = tabSize;
options.insertSpaces = insertSpaces;