Skip to content

Commit 9426ccf

Browse files
committed
Small refactor
`$` is a special snowflake; embrace it
1 parent 952ac8d commit 9426ccf

File tree

4 files changed

+3
-11
lines changed

4 files changed

+3
-11
lines changed

src/actions/baseMotion.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,6 @@ export abstract class BaseMovement extends BaseAction {
5353
*/
5454
isRepeat = false;
5555

56-
/**
57-
* This is for commands like $ which force the desired column to be at
58-
* the end of even the longest line.
59-
*/
60-
public setsDesiredColumnToEOL = false;
61-
6256
protected selectionType = SelectionType.Concatenating;
6357

6458
constructor(keysPressed?: string[], isRepeat?: boolean) {

src/actions/motion.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,9 +1085,8 @@ class MoveRepeatReversed extends BaseMovement {
10851085
}
10861086

10871087
@RegisterAction
1088-
class MoveLineEnd extends BaseMovement {
1088+
export class MoveLineEnd extends BaseMovement {
10891089
keys = [['$'], ['<End>'], ['<D-right>']];
1090-
override setsDesiredColumnToEOL = true;
10911090

10921091
public override async execActionWithCount(
10931092
position: Position,

src/mode/modeHandler.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ import {
6060
isVisualMode,
6161
} from './mode';
6262
import { DocumentContentChangeAction } from '../actions/commands/documentChange';
63+
import { MoveLineEnd } from '../actions/motion';
6364

6465
interface IModeHandlerMap {
6566
get(editorId: Uri): ModeHandler | undefined;
@@ -862,7 +863,7 @@ export class ModeHandler implements vscode.Disposable, IModeHandler {
862863
if (!preservesDesiredColumn) {
863864
if (action instanceof BaseMovement) {
864865
// We check !operator here because e.g. d$ should NOT set the desired column to EOL.
865-
if (action.setsDesiredColumnToEOL && !recordedState.operator) {
866+
if (action instanceof MoveLineEnd && !recordedState.operator) {
866867
this.vimState.desiredColumn = Number.POSITIVE_INFINITY;
867868
} else {
868869
this.vimState.desiredColumn = this.vimState.cursorStopPosition.character;

src/textobject/textobject.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -595,8 +595,6 @@ export class SelectEntireIgnoringLeadingTrailing extends TextObject {
595595
}
596596

597597
abstract class IndentObjectMatch extends TextObject {
598-
override setsDesiredColumnToEOL = true;
599-
600598
protected includeLineAbove = false;
601599
protected includeLineBelow = false;
602600

0 commit comments

Comments
 (0)