1
- ' use babel'
1
+ " use babel"
2
2
3
- import { get as weaveGet ,
4
- moveNext as weaveMoveNext ,
5
- movePrev as weaveMovePrev } from './weave.js'
3
+ import { get as weaveGet , moveNext as weaveMoveNext , movePrev as weaveMovePrev } from "./weave.js"
6
4
7
- import { getLine } from ' ./blocks.js'
5
+ import { getLine } from " ./blocks.js"
8
6
9
- import { Point } from ' atom'
7
+ import { Point } from " atom"
10
8
11
- export function getRange ( ed ) {
9
+ export function getRange ( ed ) {
12
10
// Cell range is:
13
11
// Start of line below top delimiter (and/or start of top row of file) to
14
12
// End of line before end delimiter
15
13
var buffer = ed . getBuffer ( )
16
14
var start = buffer . getFirstPosition ( )
17
15
var end = buffer . getEndPosition ( )
18
- var regexString = '^(' + atom . config . get ( ' julia-client.uiOptions.cellDelimiter' ) . join ( '|' ) + ')'
16
+ var regexString = "^(" + atom . config . get ( " julia-client.uiOptions.cellDelimiter" ) . join ( "|" ) + ")"
19
17
var regex = new RegExp ( regexString )
20
18
var cursor = ed . getCursorBufferPosition ( )
21
19
cursor . column = Infinity // cursor on delimiter line means eval cell below
22
20
23
-
24
21
let foundDelim = false
25
22
for ( let i = cursor . row + 1 ; i <= ed . getLastBufferRow ( ) ; i ++ ) {
26
- let { line, scope} = getLine ( ed , i )
27
- foundDelim = regex . test ( line ) && scope . join ( '.' ) . indexOf ( ' comment.line' ) > - 1
23
+ let { line, scope } = getLine ( ed , i )
24
+ foundDelim = regex . test ( line ) && scope . join ( "." ) . indexOf ( " comment.line" ) > - 1
28
25
end . row = i
29
26
if ( foundDelim ) break
30
27
}
@@ -38,8 +35,8 @@ export function getRange (ed) {
38
35
foundDelim = false
39
36
if ( cursor . row > 0 ) {
40
37
for ( let i = end . row ; i >= 0 ; i -- ) {
41
- let { line, scope} = getLine ( ed , i )
42
- foundDelim = regex . test ( line ) && scope . join ( '.' ) . indexOf ( ' comment.line' ) > - 1
38
+ let { line, scope } = getLine ( ed , i )
39
+ foundDelim = regex . test ( line ) && scope . join ( "." ) . indexOf ( " comment.line" ) > - 1
43
40
start . row = i
44
41
if ( foundDelim ) {
45
42
break
@@ -51,59 +48,68 @@ export function getRange (ed) {
51
48
return [ start , end ]
52
49
}
53
50
54
- export function get ( ed ) {
55
- if ( ed . getGrammar ( ) . scopeName . indexOf ( ' source.julia' ) > - 1 ) {
51
+ export function get ( ed ) {
52
+ if ( ed . getGrammar ( ) . scopeName . indexOf ( " source.julia" ) > - 1 ) {
56
53
return jlGet ( ed )
57
54
} else {
58
55
return weaveGet ( ed )
59
56
}
60
57
}
61
58
62
- function jlGet ( ed ) {
59
+ function jlGet ( ed ) {
63
60
var range = getRange ( ed )
64
61
var text = ed . getTextInBufferRange ( range )
65
- if ( text . trim ( ) === '' ) text = ' '
62
+ if ( text . trim ( ) === "" ) text = " "
66
63
var res = {
67
- range : [ [ range [ 0 ] . row , range [ 0 ] . column ] , [ range [ 1 ] . row , range [ 1 ] . column ] ] ,
64
+ range : [
65
+ [ range [ 0 ] . row , range [ 0 ] . column ] ,
66
+ [ range [ 1 ] . row , range [ 1 ] . column ] ,
67
+ ] ,
68
68
selection : ed . getSelections ( ) [ 0 ] ,
69
69
line : range [ 0 ] . row ,
70
- text : text
70
+ text : text ,
71
71
}
72
72
return [ res ]
73
73
}
74
74
75
- export function moveNext ( ed ) {
75
+ export function moveNext ( ed ) {
76
76
if ( ed == null ) {
77
77
ed = atom . workspace . getActiveTextEditor ( )
78
78
}
79
- if ( ed . getGrammar ( ) . scopeName . indexOf ( ' source.julia' ) > - 1 ) {
79
+ if ( ed . getGrammar ( ) . scopeName . indexOf ( " source.julia" ) > - 1 ) {
80
80
return jlMoveNext ( ed )
81
81
} else {
82
82
return weaveMoveNext ( ed )
83
83
}
84
84
}
85
85
86
- function jlMoveNext ( ed ) {
86
+ function jlMoveNext ( ed ) {
87
87
var range = getRange ( ed )
88
88
var sel = ed . getSelections ( ) [ 0 ]
89
89
var nextRow = range [ 1 ] . row + 2 // 2 = 1 to get to delimiter line + 1 more to go past it
90
- return sel . setBufferRange ( [ [ nextRow , 0 ] , [ nextRow , 0 ] ] )
90
+ return sel . setBufferRange ( [
91
+ [ nextRow , 0 ] ,
92
+ [ nextRow , 0 ] ,
93
+ ] )
91
94
}
92
95
93
- export function movePrev ( ed ) {
96
+ export function movePrev ( ed ) {
94
97
if ( ed == null ) {
95
98
ed = atom . workspace . getActiveTextEditor ( )
96
99
}
97
- if ( ed . getGrammar ( ) . scopeName . indexOf ( ' source.weave' ) > - 1 ) {
100
+ if ( ed . getGrammar ( ) . scopeName . indexOf ( " source.weave" ) > - 1 ) {
98
101
return weaveMovePrev ( ed )
99
102
} else {
100
103
return jlMovePrev ( ed )
101
104
}
102
105
}
103
106
104
- function jlMovePrev ( ed ) {
107
+ function jlMovePrev ( ed ) {
105
108
var range = getRange ( ed )
106
109
var prevRow = range [ 0 ] . row - 2 // 2 = 1 to get to delimiter line + 1 more to go past it
107
110
var sel = ed . getSelections ( ) [ 0 ]
108
- return sel . setBufferRange ( [ [ prevRow , 0 ] , [ prevRow , 0 ] ] )
111
+ return sel . setBufferRange ( [
112
+ [ prevRow , 0 ] ,
113
+ [ prevRow , 0 ] ,
114
+ ] )
109
115
}
0 commit comments