# Maps # TODO make it without side effects # -- Use the normal vimwiki or reset it # 0 Configure {{{1 ################## Execute (VimwikiIndex): VimwikiIndex 2 AssertEqual 1, vimwiki#vars#get_bufferlocal('wiki_nr') AssertEqual 'vimwiki', &filetype AssertEqual $HOME . '/testmarkdown/', vimwiki_wikilocal_vars[1]['path'] AssertEqual $HOME . '/testmarkdown/index.md', expand('%') Execute (Open buzz bozz): edit $HOME/testmarkdown/buzz_bozz.md AssertEqual $HOME . '/testmarkdown/buzz_bozz.md', expand('%') # 1 Global {{{1 ############### Execute (===========================================================): Log "Checking global map" Do (,ww -> open index [Assert]): ,ww :AssertEqual $HOME . '/testmarkdown/index.md', expand('%') \ :call AssertTab(1) \ Do (,wt -> open index in tab [Assert]): ,wt :AssertEqual $HOME . '/testmarkdown/index.md', expand('%') \ :call AssertTab(2) \ Do (,w,w -> open diary [Assert]): ,w,w :AssertEqual $HOME . '/testmarkdown/diary/' . strftime('%Y-%m-%d') . '.md', expand('%') \ :call AssertTab(1) \ Do (,w,t -> open diary in tab [Assert]): ,w,t :AssertEqual $HOME . '/testmarkdown/diary/' . strftime('%Y-%m-%d') . '.md', expand('%') \ :call AssertTab(2) \ Do (,ws -> list and select wiki [Assert]): ,ws 1 \ :AssertEqual $HOME . '/testmarkdown/index.md', expand('%') \ :call AssertTab(1) \ Do (,wi -> open diary index [Assert]): ,wi :AssertEqual $HOME . '/testmarkdown/diary/diary.md', expand('%') \ :call AssertTab(1) \ Do (,w,y -> open yesterday [Assert]): ,w,y :AssertEqual $HOME . '/testmarkdown/diary/' . strftime('%Y-%m-%d', localtime() - 60*60*24) . '.md', expand('%') \ :call AssertTab(1) \ Do (,w,m -> open tomorrow [Assert]): ,wm :AssertEqual $HOME . '/testmarkdown/diary/' . strftime('%Y-%m-%d', localtime() + 60*60*24) . '.md', expand('%') \ :call AssertTab(1) \ # 2 Local {{{1 ############## Execute (===========================================================): Log "Checking local map" # 2.1 Heading {{{2 ############## Do (,wn -> Create new wiki [Assert]): ,wn new_file1 \ :AssertEqual $HOME . '/testmarkdown/new_file1.md', expand('%') \ :call AssertTab(1) \ Do (,wd -> Delete wiki yes [Assert]): :edit $HOME . '/testmarkdown/file_new1.md' \ ,wn new_file2 \ ithis is content 2 \ ,wd yes \ :AssertEqual $HOME . '/testmarkdown/index.md', expand('%') \ Do (,wd -> Delete wiki no [Assert]): :edit $HOME . '/testmarkdown/file_new1.md' \ ,wn new_file2 \ ithis is content 1 \ ,wd no \ :AssertEqual $HOME . '/testmarkdown/new_file2.md', expand('%') \ Do (,wn -> Rename wiki [Assert]): ,wn new_file1 \ ithis is content 1 \ ,wn new_file2 \ :AssertEqual $HOME . '/testmarkdown/new_file2.md', expand('%') \ Given (Some headings): # Head 1 ## Head 1.1 content 1 # Head2 content 2 Execute (file .md): file toto.md edit! AssertEqual 'vimwiki', &ft Do (= -> add header level): = Expect (Inc header level): ## Head 1 ## Head 1.1 content 1 # Head2 content 2 Do (- -> Dec header level): j - Expect (Dec header level): # Head 1 # Head 1.1 content 1 # Head2 content 2 # TODO fix for vim_7.3.429 # Do ([[ -> Go to the previous header): # G # k # [[ # A placeholder # # Expect (placeholder): # # Head 1 # ## Head 1.1 placeholder # content 1 # # # Head2 # content 2 # # Do (]] -> Go to the next header): # ]] # A placeholder # # Expect (placeholder): # # Head 1 # ## Head 1.1 placeholder # content 1 # # # Head2 # content 2 # # Do ([= -> Go to the previous header which has the same level): # G # k # [= # A placeholder # # Expect (placeholder): # # Head 1 placeholder # ## Head 1.1 # content 1 # # # Head2 # content 2 # # Do (]= -> Go to the next header which has the same level): # ]= # A placeholder # # Expect (placeholder): # # Head 1 # ## Head 1.1 # content 1 # # # Head2 placeholder # content 2 # # Do (]u Go one level up): # j # ]u # A placeholder # # Expect (placeholder): # # Head 1 placeholder # ## Head 1.1 # content 1 # # # Head2 # content 2 # # Do ([u Go one level up): # j # [u # A placeholder # # Expect (placeholder): # # Head 1 placeholder # ## Head 1.1 # content 1 # # # Head2 # content 2 # 2.2 List {{{2 ############## Given vimwiki (Completion list #813 {{{3): complete1 complete2 complete3 Do (Insert a list item and complete): Go * comp\\\\ # -Es -> Delete trailing * :let mode = mode(1)\ :Log 'Mode : ' .mode\ :if mode ==# 'ce' || mode ==# 'cv' || v:version < 704\ Log 'Cheating'\ try\ g/^\* \?$/d\ endtry\ endif\ Expect (With a completion but no new item): complete1 complete2 complete3 * complete2 Given (Number list): 1. I 1. Relly 2. Love 1. Very 1. Much 3. You Execute (file .md): file toto.md edit! AssertEqual 'vimwiki', &ft set sw=2 Do (gll): gll Expect (Increase): 1. I 2. Relly 1. Love 1. Very 1. Much 2. You Do (gLl): gLl Expect (Increase self + child): 1. I 1. Relly 1. Love 1. Very 1. Much 2. You Do (glh): jjj glh Expect (Decrease): 1. I 1. Relly 2. Love 3. Very 1. Much 4. You Do (gLh): jjj gLh Expect (Decrease self + child): 1. I 1. Relly 2. Love 3. Very 1. Much 4. You Do (glr): \\ glr Expect (Renumber): 1. I 1. Relly 2. Love 1. Very 1. Much 3. You # New launch # Given (Number list): 1. I 1. Relly 2. Love 1. Very 1. Much 3. You Execute (file .md): file toto.md edit! AssertEqual 'vimwiki', &ft set sw=2 Do (gl*): gl* Expect (item -> *): * I 1. Relly 1. Love 1. Very 1. Much 2. You Do (gL*): gL* Expect (list -> *): * I 1. Relly * Love 1. Very 1. Much * You # New launch # Given (Bulleted list): * I - Relly * Love - Very + Much * You Execute (file .md): set sw=2 file toto.md edit! let g:vimwiki_syntaxlocal_vars['markdown']['cycle_bullets'] = 1 let g:vimwiki_syntaxlocal_vars['markdown']['bullet_types'] = ['*', '-', '+'] AssertEqual 'vimwiki', &ft Do (gLl): gLl Expect (Increase): - I + Relly * Love - Very + Much * You Do (3glh): gLh Expect (Decrease): * I - Relly * Love - Very + Much * You Given (Bulleted list 2): * Love - Very - Much Do (Go): Go Expect (New item): * Love - Very - Much - # New launch # Given (List ->): * Item1 Execute (file toto.md): " Note: let s:markdown_syntax.bullet_types = ['*', '-', '+'] file toto.md edit! Log "Cycle bullets" let g:vimwiki_syntaxlocal_vars['bullet_types'] = ['*', '-'] let g:vimwiki_syntaxlocal_vars['markdown']['cycle_bullets'] = 1 AssertEqual g:vimwiki_syntaxlocal_vars['markdown']['cycle_bullets'], 1 AssertEqual 'vimwiki', &ft set sw=2 set expandtab " Otherwise, getting some tab before some items, when enought space Do (o): oItem2 Expect (Good bullet type): * Item1 * Item2 # TODO test more, (see real cycle, but do not work with low vim) Do (o + ): o2 \\ o3 \\ Expect (Good bullet type): * Item1 - 2 + 3 Do (o + ): A1\ 2\\ 3\ Expect (Good nested bullet type): * Item11 - 2 + 3 # TODO test: let g:vimwiki_bullet_types = ['-', '•', '→', '*'] # 3 Text Object {{{1 #################### Execute (===========================================================): Log "Checking text object" # 3.1 HEading Object {{{2 #################### Given (Some headings): # Head 1 ## Head 1.1 content 1 # Head2 content 2 Do (ah): j dah Expect (Change A header including its content up to the next header): # Head 1 # Head2 content 2 Do (ih): j dih Expect (The content under a header): # Head 1 ## Head 1.1 # Head2 content 2 Do (aH): daH Expect (A header including all of its subheaders): # Head2 content 2 Do (iH): diH Expect (Like 'aH', but excluding the header itself): # Head 1 # Head2 content 2 # vim: foldmethod=marker foldlevel=30 sw=2