From ca03f8928d53161b3c61d9c2122ea19044a18ce2 Mon Sep 17 00:00:00 2001 From: Daniel Imms Date: Fri, 30 Jun 2017 17:07:52 -0700 Subject: [PATCH 1/2] Remove colon from the word separators Fixes #745 --- src/SelectionManager.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SelectionManager.ts b/src/SelectionManager.ts index b3316ae6cd..ef8d501cce 100644 --- a/src/SelectionManager.ts +++ b/src/SelectionManager.ts @@ -42,7 +42,7 @@ const CLEAR_MOUSE_DISTANCE = 10; * A string containing all characters that are considered word separated by the * double click to select work logic. */ -const WORD_SEPARATORS = ' ()[]{}:\'"'; +const WORD_SEPARATORS = ' ()[]{}\'"'; // TODO: Move these constants elsewhere, they belong in a buffer or buffer // data/line class. From 7463166aec50e2e310ebfbf6803f4d756093aa8a Mon Sep 17 00:00:00 2001 From: Daniel Imms Date: Sun, 2 Jul 2017 12:29:31 -0700 Subject: [PATCH 2/2] Fix tests --- src/SelectionManager.test.ts | 40 +++++++++++++++--------------------- 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/src/SelectionManager.test.ts b/src/SelectionManager.test.ts index dcc9cb5a9c..0fe674378f 100644 --- a/src/SelectionManager.test.ts +++ b/src/SelectionManager.test.ts @@ -143,46 +143,38 @@ describe('SelectionManager', () => { assert.equal(selectionManager.selectionText, 'foo'); }); it('should select up to non-path characters that are commonly adjacent to paths', () => { - buffer.push(stringToRow(':ab:(cd)[ef]{gh}\'ij"')); + buffer.push(stringToRow('(cd)[ef]{gh}\'ij"')); selectionManager.selectWordAt([0, 0]); - assert.equal(selectionManager.selectionText, ':ab'); - selectionManager.selectWordAt([1, 0]); - assert.equal(selectionManager.selectionText, 'ab'); - selectionManager.selectWordAt([2, 0]); - assert.equal(selectionManager.selectionText, 'ab'); - selectionManager.selectWordAt([3, 0]); - assert.equal(selectionManager.selectionText, 'ab:'); - selectionManager.selectWordAt([4, 0]); assert.equal(selectionManager.selectionText, '(cd'); - selectionManager.selectWordAt([5, 0]); + selectionManager.selectWordAt([1, 0]); assert.equal(selectionManager.selectionText, 'cd'); - selectionManager.selectWordAt([6, 0]); + selectionManager.selectWordAt([2, 0]); assert.equal(selectionManager.selectionText, 'cd'); - selectionManager.selectWordAt([7, 0]); + selectionManager.selectWordAt([3, 0]); assert.equal(selectionManager.selectionText, 'cd)'); - selectionManager.selectWordAt([8, 0]); + selectionManager.selectWordAt([4, 0]); assert.equal(selectionManager.selectionText, '[ef'); - selectionManager.selectWordAt([9, 0]); + selectionManager.selectWordAt([5, 0]); assert.equal(selectionManager.selectionText, 'ef'); - selectionManager.selectWordAt([10, 0]); + selectionManager.selectWordAt([6, 0]); assert.equal(selectionManager.selectionText, 'ef'); - selectionManager.selectWordAt([11, 0]); + selectionManager.selectWordAt([7, 0]); assert.equal(selectionManager.selectionText, 'ef]'); - selectionManager.selectWordAt([12, 0]); + selectionManager.selectWordAt([8, 0]); assert.equal(selectionManager.selectionText, '{gh'); - selectionManager.selectWordAt([13, 0]); + selectionManager.selectWordAt([9, 0]); assert.equal(selectionManager.selectionText, 'gh'); - selectionManager.selectWordAt([14, 0]); + selectionManager.selectWordAt([10, 0]); assert.equal(selectionManager.selectionText, 'gh'); - selectionManager.selectWordAt([15, 0]); + selectionManager.selectWordAt([11, 0]); assert.equal(selectionManager.selectionText, 'gh}'); - selectionManager.selectWordAt([16, 0]); + selectionManager.selectWordAt([12, 0]); assert.equal(selectionManager.selectionText, '\'ij'); - selectionManager.selectWordAt([17, 0]); + selectionManager.selectWordAt([13, 0]); assert.equal(selectionManager.selectionText, 'ij'); - selectionManager.selectWordAt([18, 0]); + selectionManager.selectWordAt([14, 0]); assert.equal(selectionManager.selectionText, 'ij'); - selectionManager.selectWordAt([19, 0]); + selectionManager.selectWordAt([15, 0]); assert.equal(selectionManager.selectionText, 'ij"'); }); });