A fork of https://github.com/ueokande/vim-vixen
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
756 B
51 lines
756 B
5 years ago
|
export default interface MarkKeyRepository {
|
||
|
isSetMode(): boolean;
|
||
|
|
||
|
enableSetMode(): void;
|
||
|
|
||
|
disabeSetMode(): void;
|
||
|
|
||
|
isJumpMode(): boolean;
|
||
|
|
||
|
enableJumpMode(): void;
|
||
|
|
||
|
disabeJumpMode(): void;
|
||
|
}
|
||
|
|
||
|
interface Mode {
|
||
|
setMode: boolean;
|
||
|
jumpMode: boolean;
|
||
|
}
|
||
|
|
||
|
let current: Mode = {
|
||
|
setMode: false,
|
||
|
jumpMode: false,
|
||
|
};
|
||
|
|
||
|
export class MarkKeyRepositoryImpl implements MarkKeyRepository {
|
||
|
|
||
|
isSetMode(): boolean {
|
||
|
return current.setMode;
|
||
|
}
|
||
|
|
||
|
enableSetMode(): void {
|
||
|
current.setMode = true;
|
||
|
}
|
||
|
|
||
|
disabeSetMode(): void {
|
||
|
current.setMode = false;
|
||
|
}
|
||
|
|
||
|
isJumpMode(): boolean {
|
||
|
return current.jumpMode;
|
||
|
}
|
||
|
|
||
|
enableJumpMode(): void {
|
||
|
current.jumpMode = true;
|
||
|
}
|
||
|
|
||
|
disabeJumpMode(): void {
|
||
|
current.jumpMode = false;
|
||
|
}
|
||
|
}
|