@@ -163,10 +163,11 @@ export default function nvimGitRebaseTodo(plugin: NvimPlugin): void {
163
163
width, //
164
164
height,
165
165
} : SetWindowRelativeToCursorOpts ) : Promise < OpenWindowOptions > => {
166
- const cursor = await vim . window . cursor ;
167
-
168
- const relWin = await vim . window ;
169
- const col : number = config . closeToLeft || ( await relWin . width ) ;
166
+ const [ relWin , cursor , col ] = await Promise . all ( [
167
+ vim . window ,
168
+ vim . window . cursor ,
169
+ config . closeToLeft || vim . window . width ,
170
+ ] ) ;
170
171
171
172
return {
172
173
// relative: "cursor",
@@ -195,26 +196,35 @@ export default function nvimGitRebaseTodo(plugin: NvimPlugin): void {
195
196
* instead of taking it in as param
196
197
*/
197
198
198
- const relWin : Window = await vim . getWindow ( ) ;
199
- const col : number = config . closeToLeft || ( await relWin . width ) ;
200
-
201
- const opts : OpenWindowOptions = config . relativeToCursor
202
- ? {
203
- ...( await getRelativeWindowOptions ( { width, height } ) ) ,
204
- }
205
- : ( {
206
- relative : "win" ,
207
- win : relWin . id ,
208
- //
209
- width,
210
- height,
211
- //
212
- // anchor: "NE", // TODO is this needed?
213
- row : 0 + ( config . closeToLeft ? config . rowLowerIfCloseToLeft : 0 ) ,
214
- col,
215
- //
216
- style : "minimal" ,
217
- } as const ) ;
199
+ let relWin : Window ;
200
+ let col : number ;
201
+ let opts : OpenWindowOptions ;
202
+
203
+ if ( config . relativeToCursor ) {
204
+ [ relWin , col , opts ] = await Promise . all ( [
205
+ vim . window , //
206
+ vim . window . width ,
207
+ getRelativeWindowOptions ( { width, height } ) ,
208
+ ] ) ;
209
+ } else {
210
+ [ relWin , col ] = await Promise . all ( [
211
+ vim . window , //
212
+ vim . window . width ,
213
+ ] ) ;
214
+ opts = {
215
+ relative : "win" ,
216
+ win : relWin . id ,
217
+ //
218
+ width,
219
+ height,
220
+ //
221
+ // anchor: "NE", // TODO is this needed?
222
+ row : 0 + ( config . closeToLeft ? config . rowLowerIfCloseToLeft : 0 ) ,
223
+ col,
224
+ //
225
+ style : "minimal" ,
226
+ } ;
227
+ }
218
228
219
229
const enter = false ;
220
230
const window : number | Window = await vim . openWindow ( buffer , enter , opts ) ;
0 commit comments