diff --git a/lib/review/latexbuilder.rb b/lib/review/latexbuilder.rb index c06711105..e8468c25a 100644 --- a/lib/review/latexbuilder.rb +++ b/lib/review/latexbuilder.rb @@ -262,7 +262,7 @@ def list(lines, id, caption, lang = nil) if highlight_listings? common_code_block_lst(id, lines, 'reviewlistlst', 'caption', caption, lang) else - common_code_block(id, lines, 'reviewlist', nil, lang) do |line, idx| + common_code_block(id, lines, 'reviewlist', caption, lang) do |line, idx| detab(line) + "\n" end end diff --git a/test/test_latexbuilder.rb b/test/test_latexbuilder.rb index 481f37afb..ace5b1a2f 100644 --- a/test/test_latexbuilder.rb +++ b/test/test_latexbuilder.rb @@ -277,6 +277,26 @@ def test_emlist_with_tab4 assert_equal %Q|\n\\begin{reviewemlist}\n foo\n bar\n\n buz\n\\end{reviewemlist}\n|, actual end + def test_list + actual = compile_block("//list[id1][cap1]{\nfoo\nbar\n\nbuz\n//}\n") + assert_equal %Q|\\reviewlistcaption{リスト1.1: cap1}\n\\begin{reviewlist}\nfoo\nbar\n\nbuz\n\\end{reviewlist}\n|, actual + end + + def test_list_lst + @book.config["highlight"] = {} + @book.config["highlight"]["latex"] = "listings" + actual = compile_block("//list[id1][cap1][sql]{\nSELECT COUNT(*) FROM tests WHERE tests.no > 10 AND test.name LIKE 'ABC%'\n//}\n") + assert_equal %Q|\\begin{reviewlistlst}[caption={cap1},language={sql}]\nSELECT COUNT(*) FROM tests WHERE tests.no > 10 AND test.name LIKE 'ABC%'\n\\end{reviewlistlst}\n|, actual + end + + def test_list_lst_with_lang + @book.config["highlight"] = {} + @book.config["highlight"]["latex"] = "listings" + @book.config["highlight"]["lang"] = "sql" + actual = compile_block("//list[id1][cap1]{\nSELECT COUNT(*) FROM tests WHERE tests.no > 10 AND test.name LIKE 'ABC%'\n//}\n") + assert_equal %Q|\\begin{reviewlistlst}[caption={cap1},language={sql}]\nSELECT COUNT(*) FROM tests WHERE tests.no > 10 AND test.name LIKE 'ABC%'\n\\end{reviewlistlst}\n|, actual + end + def test_listnum actual = compile_block("//listnum[test1][ruby]{\nclass Foo\n def foo\n bar\n\n buz\n end\nend\n//}\n") assert_equal %Q|\\reviewlistcaption{リスト1.1: ruby}\n\\begin{reviewlist}\n 1: class Foo\n 2: def foo\n 3: bar\n 4: \n 5: buz\n 6: end\n 7: end\n\\end{reviewlist}\n|, actual