@@ -37,9 +37,9 @@ describe('list_table.md', function()
3737 util .table_border (row :increment (2 ), true , { 8 , 15 , 7 , 6 }),
3838 util .table_pipe (row :get (), 0 , true ),
3939 util .highlight (row :get (), 2 , 8 , ' CodeInline' ),
40- util .table_padding (row :get (), 9 , 2 ),
40+ util .padding (row :get (), 9 , 2 , ' table ' ),
4141 util .table_pipe (row :get (), 9 , true ),
42- util .table_padding (row :get (), 11 , 3 ),
42+ util .padding (row :get (), 11 , 3 , ' table ' ),
4343 util .conceal (row :get (), 24 , 25 ),
4444 util .table_pipe (row :get (), 25 , true ),
4545 util .table_pipe (row :get (), 33 , true ),
@@ -49,21 +49,21 @@ describe('list_table.md', function()
4949 vim .list_extend (expected , {
5050 util .table_pipe (row :increment (), 0 , false ),
5151 util .highlight (row :get (), 2 , 8 , ' CodeInline' ),
52- util .table_padding (row :get (), 9 , 2 ),
52+ util .padding (row :get (), 9 , 2 , ' table ' ),
5353 util .table_pipe (row :get (), 9 , false ),
54- util .table_padding (row :get (), 11 , 4 ),
54+ util .padding (row :get (), 11 , 4 , ' table ' ),
5555 util .table_pipe (row :get (), 25 , false ),
5656 util .table_pipe (row :get (), 33 , false ),
5757 util .table_pipe (row :get (), 40 , false ),
5858 })
5959 vim .list_extend (expected , {
6060 util .table_pipe (row :increment (), 0 , false ),
6161 util .table_pipe (row :get (), 9 , false ),
62- util .table_padding (row :get (), 11 , 3 ),
62+ util .padding (row :get (), 11 , 3 , ' table ' ),
6363 util .link (row :get (), 11 , 24 , ' link' ),
64- util .table_padding (row :get (), 25 , 4 ),
64+ util .padding (row :get (), 25 , 4 , ' table ' ),
6565 util .table_pipe (row :get (), 25 , false ),
66- util .table_padding (row :get (), 27 , 1 ),
66+ util .padding (row :get (), 27 , 1 , ' table ' ),
6767 util .conceal (row :get (), 32 , 33 ),
6868 util .table_pipe (row :get (), 33 , false ),
6969 util .table_pipe (row :get (), 40 , false ),
@@ -99,4 +99,137 @@ describe('list_table.md', function()
9999 ' 24 [example]: https://example.com' ,
100100 })
101101 end )
102+
103+ it (' padding' , function ()
104+ util .setup (' demo/list_table.md' , {
105+ code = { inline_pad = 2 },
106+ bullet = { left_pad = 2 , right_pad = 2 },
107+ })
108+
109+ local expected , row = {}, util .row ()
110+
111+ vim .list_extend (expected , util .heading (row :get (), 1 ))
112+
113+ vim .list_extend (expected , {
114+ util .padding (row :increment (2 ), 0 , 2 ),
115+ util .bullet (row :get (), 0 , 1 ),
116+ util .padding (row :get (), 1 , 2 ),
117+ util .link (row :get (), 20 , 47 , ' web' ),
118+
119+ util .padding (row :increment (), 0 , 2 ),
120+ util .bullet (row :get (), 0 , 1 ),
121+ util .padding (row :get (), 1 , 2 ),
122+ util .padding (row :get (), 20 , 2 , ' code' ),
123+ util .highlight (row :get (), 20 , 28 , ' CodeInline' ),
124+ util .padding (row :get (), 28 , 2 , ' code' ),
125+
126+ util .padding (row :increment (), 0 , 2 ),
127+ util .bullet (row :get (), 2 , 2 , 2 ),
128+ util .padding (row :get (), 5 , 2 ),
129+
130+ util .padding (row :increment (), 0 , 2 ),
131+ util .bullet (row :get (), 4 , 2 ),
132+ util .padding (row :get (), 5 , 2 ),
133+
134+ util .padding (row :increment (), 0 , 2 ),
135+ util .bullet (row :get (), 6 , 3 ),
136+ util .padding (row :get (), 7 , 2 ),
137+
138+ util .padding (row :increment (), 0 , 2 ),
139+ util .bullet (row :get (), 8 , 4 ),
140+ util .padding (row :get (), 9 , 2 ),
141+
142+ util .padding (row :increment (), 0 , 2 ),
143+ util .bullet (row :get (), 10 , 1 ),
144+ util .padding (row :get (), 11 , 2 ),
145+
146+ util .padding (row :increment (), 0 , 2 ),
147+ util .bullet (row :get (), 0 , 1 ),
148+ util .padding (row :get (), 1 , 2 ),
149+ util .link (row :get (), 20 , 45 , ' link' ),
150+ })
151+
152+ vim .list_extend (expected , util .heading (row :increment (2 ), 1 ))
153+
154+ vim .list_extend (expected , {
155+ util .padding (row :increment (2 ), 0 , 2 ),
156+ util .ordered (row :get (), 0 , ' 1.' ),
157+ util .padding (row :get (), 2 , 2 ),
158+
159+ util .padding (row :increment (), 0 , 2 ),
160+ util .ordered (row :get (), 0 , ' 2.' ),
161+ util .padding (row :get (), 2 , 2 ),
162+ })
163+
164+ vim .list_extend (expected , util .heading (row :increment (2 ), 1 ))
165+
166+ vim .list_extend (expected , {
167+ util .table_border (row :increment (2 ), true , { 10 , 15 , 7 , 6 }),
168+ util .table_pipe (row :get (), 0 , true ),
169+ util .padding (row :get (), 2 , 2 , ' code' ),
170+ util .highlight (row :get (), 2 , 8 , ' CodeInline' ),
171+ util .padding (row :get (), 8 , 2 , ' code' ),
172+ util .table_pipe (row :get (), 9 , true ),
173+ util .padding (row :get (), 11 , 3 , ' table' ),
174+ util .conceal (row :get (), 24 , 25 ),
175+ util .table_pipe (row :get (), 25 , true ),
176+ util .table_pipe (row :get (), 33 , true ),
177+ util .table_pipe (row :get (), 40 , true ),
178+ })
179+ table.insert (expected , util .table_delimiter (row :increment (), { { 1 , 9 }, { 1 , 13 , 1 }, { 6 , 1 }, 6 }, nil , 2 ))
180+ vim .list_extend (expected , {
181+ util .table_pipe (row :increment (), 0 , false ),
182+ util .padding (row :get (), 2 , 2 , ' code' ),
183+ util .highlight (row :get (), 2 , 8 , ' CodeInline' ),
184+ util .padding (row :get (), 8 , 2 , ' code' ),
185+ util .table_pipe (row :get (), 9 , false ),
186+ util .padding (row :get (), 11 , 4 , ' table' ),
187+ util .table_pipe (row :get (), 25 , false ),
188+ util .table_pipe (row :get (), 33 , false ),
189+ util .table_pipe (row :get (), 40 , false ),
190+ })
191+ vim .list_extend (expected , {
192+ util .table_pipe (row :increment (), 0 , false ),
193+ util .padding (row :get (), 9 , 2 , ' table' ),
194+ util .table_pipe (row :get (), 9 , false ),
195+ util .padding (row :get (), 11 , 3 , ' table' ),
196+ util .link (row :get (), 11 , 24 , ' link' ),
197+ util .padding (row :get (), 25 , 4 , ' table' ),
198+ util .table_pipe (row :get (), 25 , false ),
199+ util .padding (row :get (), 27 , 1 , ' table' ),
200+ util .conceal (row :get (), 32 , 33 ),
201+ util .table_pipe (row :get (), 33 , false ),
202+ util .table_pipe (row :get (), 40 , false ),
203+ util .table_border (row :get (), false , { 10 , 15 , 7 , 6 }),
204+ })
205+
206+ util .assert_view (expected , {
207+ ' 1 Unordered List' ,
208+ ' 2' ,
209+ ' 3 ● List Item 1: with link' ,
210+ ' 4 ● List Item 2: with inline code' ,
211+ ' 5 ○ Nested List 1 Item 1' ,
212+ ' 6 ○ Nested List 1 Item 2' ,
213+ ' 7 ◆ Nested List 2 Item 1' ,
214+ ' 8 ◇ Nested List 3 Item 1' ,
215+ ' 9 ● Nested List 4 Item 1' ,
216+ ' 10 ● List Item 3: with reference link' ,
217+ ' 11' ,
218+ ' 12 Ordered List' ,
219+ ' 13' ,
220+ ' 14 1. Item 1' ,
221+ ' 15 2. Item 2' ,
222+ ' 16' ,
223+ ' 17 Table' ,
224+ ' 18' ,
225+ ' ┌──────────┬───────────────┬───────┬──────┐' ,
226+ ' 19 │ Left │ Center │ Right │ None │' ,
227+ ' 20 ├━─────────┼━─────────────━┼──────━┼──────┤' ,
228+ ' 21 │ Code │ Bold │ Plain │ Item │' ,
229+ ' 22 │ Item │ link │ Item │ Item │' ,
230+ ' └──────────┴───────────────┴───────┴──────┘' ,
231+ ' 23' ,
232+ ' 24 [example]: https://example.com' ,
233+ })
234+ end )
102235end )
0 commit comments