public void Backwards() { Create("cats dogs"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Character, _textBuffer.GetPoint(3), _textBuffer.GetPoint(1), tabStop: 4); Assert.Equal("ats", visualSelection.VisualSpan.EditSpan.OverarchingSpan.GetText()); }
public void Backwards() { Create("cats dogs"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Line, _textBuffer.GetPoint(3), _textBuffer.GetPoint(1), tabStop: 4); Assert.Equal(_textBuffer.GetLineRange(0), visualSelection.AsLine().Item1); }
public void CreateForPoints_Block_BackwardSeveralLines() { Create("big cat", "big dog"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Block, _textBuffer.GetPoint(2), _textBuffer.GetPointInLine(1, 1)); Assert.Equal(_textBuffer.GetBlockSpan(1, 2, 0, 2), visualSelection.AsBlock().Item1); }
public void SelectionInclusive() { Create("hello world"); var visualSelection = VisualSelection.CreateInitial(VisualKind.Character, _textBuffer.GetPoint(0), 4, SelectionKind.Inclusive); Assert.Equal(1, visualSelection.AsCharacter().Item1.Length); }
/// <summary> /// Change the selection to be the specified SnapshotSpan value and update the caret to be on the /// last included point in the SnapshotSpan. /// </summary> public static void SelectAndMoveCaret(this ITextView textView, SnapshotSpan span) { var characterSpan = CharacterSpan.CreateForSpan(span); var visualSelection = VisualSelection.CreateForward(VisualSpan.NewCharacter(characterSpan)); visualSelection.SelectAndMoveCaret(textView); }
public void CreateForPoints_Block_Backwards() { Create("cats dogs"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Block, _textBuffer.GetPoint(3), _textBuffer.GetPoint(1)); Assert.Equal(_textBuffer.GetSpan(1, 3), visualSelection.AsBlock().Item1.BlockSpans.Head); }
public void SelectionExclusive() { Create("hello world"); var visualSelection = VisualSelection.CreateInitial(VisualKind.Character, _textBuffer.GetVirtualPoint(0), 4, SelectionKind.Exclusive, false); Assert.Equal(0, visualSelection.AsCharacter().CharacterSpan.Length); }
public void CaretOnBlankLine(bool useVirtualSpace) { Create("cats", "", "dogs", ""); var visualSelection = VisualSelection.CreateForVirtualPoints(VisualKind.Line, _textBuffer.GetVirtualPoint(0), _textBuffer.GetVirtualPointInLine(1, 0), tabStop: 4, useVirtualSpace); Assert.Equal(_textBuffer.GetLineRange(0, 1), visualSelection.AsLine().Item1); }
public void CaretAtStart() { Create("cat", "dog", "bear"); var visualSpan = VisualSelection.CreateForPoints(VisualKind.Line, _textBuffer.GetPoint(0), caretPoint: _textBuffer.GetPointInLine(1, 0), tabStop: 4); Assert.Equal(_textBuffer.GetLineRange(0, 1), visualSpan.AsLine().Item1); }
/// <summary> /// Change the selection to be the specified SnapshotSpan value and update the caret to be on the /// last included point in the SnapshotSpan. /// </summary> public static void SelectAndUpdateCaret(this ITextView textView, SnapshotSpan span) { var characterSpan = CharacterSpan.CreateForSpan(span); CommonUtil.SelectAndUpdateCaret( textView, VisualSelection.CreateForVisualSpan(VisualSpan.NewCharacter(characterSpan))); }
public void GetCaretPoint_Block_TopRight() { Create("cats", "dogs", "fish"); var blockSpan = _textBuffer.GetBlockSpan(1, 2, 0, 2); var visualSelection = VisualSelection.NewBlock(blockSpan, BlockCaretLocation.TopRight); Assert.Equal(_textBuffer.GetPoint(2), visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void GetCaretPoint_Block_BottomRight() { Create("big dog", "big cat", "big tree", "big fish"); var blockSpan = _textBuffer.GetBlockSpan(1, 1, 0, 2); var visualSelection = VisualSelection.NewBlock(blockSpan, BlockCaretLocation.BottomRight); Assert.Equal(_textView.GetPointInLine(1, 1), visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void InLineBreakForwardDeep() { Create("cat", "dog"); var visualSelection = VisualSelection.NewCharacter( new CharacterSpan(_textBuffer.GetPoint(0), 1, 5), SearchPath.Forward); Assert.Equal(4, visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void Forward() { Create("cats", "dogs"); var visualSelection = VisualSelection.NewCharacter( new CharacterSpan(_textBuffer.GetSpan(0, 2)), SearchPath.Forward); Assert.Equal(_textBuffer.GetPoint(1), visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void ForwardIntoLineBreak() { Create("cat", "dog"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Character, _textBuffer.GetPoint(0), _textBuffer.GetPoint(3), tabStop: 4); var character = visualSelection.AsCharacter(); Assert.True(character.CharacterSpan.IncludeLastLineLineBreak); Assert.Equal(SearchPath.Forward, character.SearchPath); }
public void SetLocalMark_ReadOnlyMark() { Create("hello", "world"); var visualSpan = VisualSpan.NewCharacter(new CharacterSpan(_textBuffer.GetPoint(0), 1, 2)); _vimTextBuffer.LastVisualSelection = FSharpOption.Create(VisualSelection.CreateForward(visualSpan)); Assert.False(_vimTextBuffer.SetLocalMark(LocalMark.LastSelectionStart, 0, 4)); Assert.Equal(0, _vimTextBuffer.GetLocalMark(LocalMark.LastSelectionStart).Value.Position.Position); }
public void AdjustForSelectionKind_Block_SingleColumnExclusive() { Create("cats", "dogs", "trees"); var blockSpan = _textBuffer.GetBlockSpan(1, 1, 0, 2); var visualSpan = VisualSpan.NewBlock(blockSpan); var visualSelection = VisualSelection.CreateForward(visualSpan); Assert.Equal(visualSelection, visualSelection.AdjustForSelectionKind(SelectionKind.Exclusive)); }
public void AdjustForSelectionKind_Character_Forward() { Create("cat dog bear"); var characterSpan = CharacterSpan.CreateForSpan(_textBuffer.GetSpan(0, 4)); var visualSpan = VisualSpan.NewCharacter(characterSpan); var visualSelection = VisualSelection.CreateForward(visualSpan); Assert.Equal("cat", visualSelection.AdjustForSelectionKind(SelectionKind.Exclusive).VisualSpan.EditSpan.OverarchingSpan.GetText()); }
public void GetCaretPoint_Character_EmptyLastLine() { Create("cat", "", "dog"); var visualSelection = VisualSelection.NewCharacter( new CharacterSpan(_textBuffer.GetPoint(0), 2, 1), Path.Forward); Assert.Equal(_textBuffer.GetLine(1).Start, visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void CreateForVisualSpan_Block() { Create("cat", "dog"); var visualSpan = VisualSpan.NewBlock(_textView.GetBlockSpan(0, 2, 0, 2)); var visualSelection = VisualSelection.CreateForward(visualSpan); Assert.Equal(_textView.GetLine(1).Start.Add(1), visualSelection.GetCaretPoint(SelectionKind.Inclusive)); Assert.Equal(visualSpan, visualSelection.VisualSpan); }
public void ForwardIntoLineBreak2() { Create("cat", "dog"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Character, _textBuffer.GetPoint(0), _textBuffer.GetPoint(4)); var character = visualSelection.AsCharacter(); Assert.True(character.Item1.IncludeLastLineLineBreak); Assert.Equal(Path.Forward, character.Item2); }
public void GetCaretPoint_Character_Backward() { Create("cats", "dogs"); var visualSelection = VisualSelection.NewCharacter( CharacterSpan.CreateForSpan(_textBuffer.GetSpan(0, 2)), Path.Backward); Assert.Equal(_textBuffer.GetPoint(0), visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void InLineBreakBackward() { Create("cat", "dog"); var visualSelection = VisualSelection.NewCharacter( new CharacterSpan(_textBuffer.GetPoint(0), 1, 4), Path.Backward); Assert.Equal(0, visualSelection.GetCaretPoint(SelectionKind.Inclusive)); }
public void CaretPoint_Character_Backward() { Create("cats", "dogs"); var visualSelection = VisualSelection.NewCharacter( CharacterSpan.CreateForSpan(_textBuffer.GetSpan(0, 2)), false); Assert.AreEqual(_textBuffer.GetPoint(0), visualSelection.CaretPoint); }
private void EnterMode(SnapshotSpan span) { var characterSpan = CharacterSpan.CreateForSpan(span); var visualSelection = VisualSelection.NewCharacter(characterSpan, true); CommonUtil.SelectAndUpdateCaret(_textView, visualSelection); Assert.IsFalse(_context.IsEmpty); _context.RunAll(); Assert.IsTrue(_context.IsEmpty); }
public void BackwardsInlcudeAnchor() { Create("cats dogs"); var visualSelection = VisualSelection.CreateForPoints(VisualKind.Character, _textBuffer.GetPoint(3), _textBuffer.GetPoint(0)); var characterSpan = visualSelection.AsCharacter().Item1; Assert.Equal(0, characterSpan.Start.Position); Assert.Equal(3, characterSpan.Last.Value.Position); Assert.Equal(4, characterSpan.End.Position); }
public void VirtualSelectionInclusive() { Create("hello world"); var virtualPoint = _textBuffer.GetVirtualPointInLine(0, 20); var visualSelection = VisualSelection.CreateInitial(VisualKind.Character, virtualPoint, 4, SelectionKind.Inclusive, true); Assert.Equal(virtualPoint, visualSelection.AsCharacter().CharacterSpan.VirtualStart); Assert.Equal(1, visualSelection.AsCharacter().CharacterSpan.VirtualLength); }
public void InitialVisualSelection_Line() { Create("dogs", "cats", "fish"); var lineRange = _textView.GetLineRange(0, 1); var visualSelection = VisualSelection.NewLine(lineRange, true, 1); _buffer.SwitchMode(ModeKind.VisualLine, ModeArgument.NewInitialVisualSelection(visualSelection)); _context.RunAll(); Assert.AreEqual(visualSelection, VisualSelection.CreateForSelection(_textView, VisualKind.Line)); }
public void InitialVisualSelection_Block() { Create("dogs", "cats", "fish"); var blockSpan = _textView.GetBlockSpan(1, 2, 0, 2); var visualSelection = VisualSelection.NewBlock(blockSpan, BlockCaretLocation.BottomLeft); _buffer.SwitchMode(ModeKind.VisualBlock, ModeArgument.NewInitialVisualSelection(visualSelection)); _context.RunAll(); Assert.AreEqual(visualSelection, VisualSelection.CreateForSelection(_textView, VisualKind.Block)); }
public void InitialVisualSelection_Character() { Create("dogs", "cats"); var visualSpan = VimUtil.CreateVisualSpanCharacter(_textBuffer.GetSpan(1, 2)); var visualSelection = VisualSelection.CreateForVisualSpan(visualSpan); _buffer.SwitchMode(ModeKind.VisualCharacter, ModeArgument.NewInitialVisualSelection(visualSelection)); _context.RunAll(); Assert.AreEqual(visualSelection, VisualSelection.CreateForSelection(_textView, VisualKind.Character)); }