diff --git a/athame.c b/athame.c index 0fd4990..26054c7 100644 --- a/athame.c +++ b/athame.c @@ -111,7 +111,7 @@ void athame_init(int instream, FILE* outstream) if (is_vim_alive()) { athame_remote_expr("Vimbed_Reset()", 1); int cursor = ap_get_cursor(); - snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "Vimbed_UpdateText(%d, %d, %d, %d, 1)", athame_row+1, cursor+1, athame_row+1, cursor+1); + snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "Vimbed_UpdateText(%d, %d, %d, %d, 1, 'StartLine')", athame_row+1, cursor+1, athame_row+1, cursor+1); athame_remote_expr(athame_buffer, 1); athame_poll_vim(1); } else { diff --git a/athame_util.h b/athame_util.h index 8a5fb4f..17f7071 100644 --- a/athame_util.h +++ b/athame_util.h @@ -118,7 +118,7 @@ static int start_vim(int char_break, int instream) if (pid == 0) { int cursor = ap_get_cursor(); - snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "+call Vimbed_UpdateText(%d, %d, %d, %d, 1)", athame_row+1, cursor+1, athame_row+1, cursor+1); + snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "+call Vimbed_UpdateText(%d, %d, %d, %d, 1, 'StartLine')", athame_row+1, cursor+1, athame_row+1, cursor+1); int vim_error = 0; if (ATHAME_VIM_BIN[0]) { if (testrc) { @@ -458,7 +458,7 @@ static void athame_update_vimline(int row, int col) fclose(updateFile); - snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "Vimbed_UpdateText(%d, %d, %d, %d, 0)", row+1, col+1, row+1, col+1); + snprintf(athame_buffer, DEFAULT_BUFFER_SIZE-1, "Vimbed_UpdateText(%d, %d, %d, %d, 0, '')", row+1, col+1, row+1, col+1); athame_remote_expr(athame_buffer, 1); updated = 1; diff --git a/athamerc b/athamerc index bb03217..b51765b 100644 --- a/athamerc +++ b/athamerc @@ -15,7 +15,8 @@ set backspace+=start "Without this, you can't delete shell completions set textwidth=0 "Don't try to wrap text -startinsert "Start in insert mode. Most shell vi-modes do this. +"Start each line in insert mode. Most shell vi-modes do this: +autocmd User Vimbed_StartLine call feedkeys("\\i","n") " These make arrows more shell like. Feel free to comment them out: if v:version>=800 || has("patch928") diff --git a/vimbed b/vimbed index bfd6b82..8600378 160000 --- a/vimbed +++ b/vimbed @@ -1 +1 @@ -Subproject commit bfd6b8271fc3c838202d4c0100d7e993e99afb82 +Subproject commit 8600378f61e6bfd468963749c94d7bf361440725