mirror of
https://github.com/showdownjs/showdown.git
synced 2024-03-22 13:30:55 +08:00
Fix multi-table issue (buffer not flushed)
This commit is contained in:
parent
5eb7e618e9
commit
476d18f47f
|
@ -1,29 +0,0 @@
|
||||||
//
|
|
||||||
// Twitter Extension
|
|
||||||
// @username -> <a href="http://twitter.com/username">@username</a>
|
|
||||||
// #hashtag -> <a href="http://twitter.com/search/%23hashtag">#hashtag</a>
|
|
||||||
//
|
|
||||||
|
|
||||||
(function(){
|
|
||||||
|
|
||||||
var furigana = function(converter) {
|
|
||||||
return [
|
|
||||||
|
|
||||||
// @username syntax
|
|
||||||
{ type: 'lang', regex: '([\u4e00-\u9faf])(([\u3040-\u3096]+?))', replace: function(match, kanji, furigana) {
|
|
||||||
// Check if we matched the leading \ and return nothing changed if so
|
|
||||||
if (leadingSlash === '\\') {
|
|
||||||
return match;
|
|
||||||
} else {
|
|
||||||
return '<ruby><rb>'+kanji + '</rb><rp>(</rp><rt>'+furigana+'</rt><rp>)</rp></ruby>';
|
|
||||||
}
|
|
||||||
}}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
// Client-side export
|
|
||||||
if (typeof window !== 'undefined' && window.Showdown && window.Showdown.extensions) { window.Showdown.extensions.furigana = furigana; }
|
|
||||||
// Server-side export
|
|
||||||
if (typeof module !== 'undefined') module.exports = furigana;
|
|
||||||
|
|
||||||
}());
|
|
|
@ -55,12 +55,13 @@
|
||||||
return out;
|
return out;
|
||||||
};
|
};
|
||||||
filter = function(text) {
|
filter = function(text) {
|
||||||
var i=0, lines = text.split('\n'), tbl = [], line, hs, rows, out = [];
|
var i=0, lines = text.split('\n'), line, hs, rows, out = [];
|
||||||
for (i; i<lines.length;i+=1) {
|
for (i; i<lines.length;i+=1) {
|
||||||
line = lines[i];
|
line = lines[i];
|
||||||
// looks like a table heading
|
// looks like a table heading
|
||||||
if (line.trim().match(/^[|]{1}.*[|]{1}$/)) {
|
if (line.trim().match(/^[|]{1}.*[|]{1}$/)) {
|
||||||
line = line.trim();
|
line = line.trim();
|
||||||
|
var tbl = [];
|
||||||
tbl.push('<table>');
|
tbl.push('<table>');
|
||||||
hs = line.substring(1, line.length -1).split('|');
|
hs = line.substring(1, line.length -1).split('|');
|
||||||
tbl.push(tables.thead.apply(this, hs));
|
tbl.push(tables.thead.apply(this, hs));
|
||||||
|
|
|
@ -1,137 +0,0 @@
|
||||||
Cours 2
|
|
||||||
==========
|
|
||||||
|
|
||||||
2014年10月06日
|
|
||||||
|
|
||||||
Présentation - じこしょうかい
|
|
||||||
----------------------
|
|
||||||
|
|
||||||
めがねのはんばいいん = vendeur de lunettes
|
|
||||||
|
|
||||||
ほうていのひしょ = secrétaire au tribunal
|
|
||||||
|
|
||||||
いしゃ = médecin
|
|
||||||
|
|
||||||
絵(え)を書(か)く = dessiner, peindre
|
|
||||||
|
|
||||||
どこに住(す)んでいますか = Où habitez-vous ?
|
|
||||||
|
|
||||||
小(しょう)児(に)精(せい)神(しん)科(か) = pédopsychiatre (科 pour la spécialisation)
|
|
||||||
|
|
||||||
治(なお)す= soigner
|
|
||||||
|
|
||||||
ローラースケート = patins à roulettes
|
|
||||||
|
|
||||||
ローラーブレード = rollers en lignes
|
|
||||||
|
|
||||||
乗(じょう)馬(ば) = équitation
|
|
||||||
|
|
||||||
庭(にわ)仕(し)事(ごと) = faire du jardinage
|
|
||||||
|
|
||||||
しばいをする = faire du théâtre
|
|
||||||
|
|
||||||
家(か)事(じ)をする = faire le ménage
|
|
||||||
|
|
||||||
公(こう)園(えん)**を**さんぽします = se promener (avec le を de passage)
|
|
||||||
|
|
||||||
はしをわたります = traverser le pont
|
|
||||||
|
|
||||||
友(とも)達(だち)に会(あ)います = voir des amis
|
|
||||||
|
|
||||||
れきし = histoire
|
|
||||||
|
|
||||||
|
|
||||||
Structure grammaticale - 文(ぶん)型(けい)
|
|
||||||
----------------------
|
|
||||||
|
|
||||||
### Demander, Question ouverte
|
|
||||||
|
|
||||||
Mot interrogatif + [Verbe | adj neutre | Nom] + か
|
|
||||||
|
|
||||||
#### 例(れい)1
|
|
||||||
|
|
||||||
* 何(なん)時(じ)に到(とう)着(ちゃく)しますか。
|
|
||||||
À quelle heure est-ce que j'arrive ?
|
|
||||||
* しらべてください。
|
|
||||||
Renseignez-vous
|
|
||||||
|
|
||||||
何(なん)時(じ)に到(とう)着(ちゃく)**するか**しらべてください。
|
|
||||||
Renseignez-vous pour moi sur l'heure d'arrivée.
|
|
||||||
|
|
||||||
#### 例(れい)2
|
|
||||||
|
|
||||||
* 会(かい)ぎは何(なん)時(じ)におわりますか。
|
|
||||||
À quelle heure fini la réunion ?
|
|
||||||
* わかりません。
|
|
||||||
Je ne sais pas
|
|
||||||
|
|
||||||
会(かい)ぎは何(なん)時(じ)に**おわるか**わかりません。
|
|
||||||
Je ne sais pas à quelle heure fini la réunion.
|
|
||||||
|
|
||||||
#### 例(れい)3
|
|
||||||
|
|
||||||
* ビールは何(なん)本(ぼん)ありますか。
|
|
||||||
Combien de bières y a-t-il ?
|
|
||||||
* おしえてください。
|
|
||||||
Renseignez moi sur …
|
|
||||||
|
|
||||||
ビールは何(なん)本(ぼん)あるかおしえてください。
|
|
||||||
Dites moi combien y a-t-il de bières.
|
|
||||||
|
|
||||||
### かどうか - Question fermée (Oui ou non)
|
|
||||||
|
|
||||||
[Verbe | adj | Nom] かどうか
|
|
||||||
|
|
||||||
#### 例(れい)1
|
|
||||||
|
|
||||||
* 間(まち)違(が)いがありませんか。
|
|
||||||
Est-ce qu'il y a des erreurs ?
|
|
||||||
* 見(み)てください。
|
|
||||||
Regardez, svp.
|
|
||||||
|
|
||||||
間(まち)違(が)いが**ないかどうか**見(み)ってください。
|
|
||||||
Regardez s'il n'y aurait pas des fautes, svp.
|
|
||||||
|
|
||||||
* マリアンヌさんが来(き)ますか。
|
|
||||||
Est-ce que Marie-Anne est venue ?
|
|
||||||
* 分(わ)かりません。
|
|
||||||
Elle ne savait pas
|
|
||||||
|
|
||||||
マリアンヌさんが**くるかどうか**分(わ)かりません。
|
|
||||||
|
|
||||||
### Exercices
|
|
||||||
|
|
||||||
例1:先生は学生に元(げん)気(き)**かどうか**、聞(き)きました。
|
|
||||||
Le professeur a demandé à l'étudiante si elle allait bien.
|
|
||||||
|
|
||||||
例2:先生は学生に何(なん)時(じ)に**来たか**、聞(き)きました。
|
|
||||||
Le professeur a demandé à l'étudiante à quelle heure elle est arrivée.
|
|
||||||
|
|
||||||
1. 学生は先生にどんな学(がっ)校(こう)**いいか**相(そう)談(だん)しました。
|
|
||||||
L'étudiant a demandé quelle école était bien.
|
|
||||||
2. 学生は田(た)中(なか)さんにパスポートがひっよう**かどうか**確(たし)かめました。
|
|
||||||
L'étudiant a demandé à Mme Yamada si le passport était nécessaire.
|
|
||||||
3. 先生は学生に困(こま)っていることが**ないか**聞(き)きました。
|
|
||||||
Le professeur a demandé à l'étudiant s'il était embêté.
|
|
||||||
|
|
||||||
### essayer de … pour voir - Vテ + 見(み)ます
|
|
||||||
|
|
||||||
靴(くつ)をはいてみます。Essayer des chaussures
|
|
||||||
|
|
||||||
* 来て見ます
|
|
||||||
* はいてみます Essayer (des chaussures)
|
|
||||||
* めがねをかけて見ます Essayer des lunettes
|
|
||||||
* かぶって見ます Essayer (un chapeau)
|
|
||||||
* たしかめて見ます Vérifier
|
|
||||||
* 聞いて見ます demander pour vérifier
|
|
||||||
* 電(でん)話(わ)して見ます téléphoner pour vérifier
|
|
||||||
* 食(た)べてみます goûter
|
|
||||||
|
|
||||||
漢字 Kanji
|
|
||||||
----------
|
|
||||||
|
|
||||||
* <font size="+2">画</font>・ガ・dessin
|
|
||||||
* <font size="+2">用</font>・ヨウ・dédié pour
|
|
||||||
* <font size="+2">角</font>・カク・かど・angle
|
|
||||||
* <font size="+2">絵</font>・え・dessin
|
|
||||||
* <font size="+2">形</font>・かたち・forme
|
|
|
@ -1,17 +1,43 @@
|
||||||
Table Test
|
<h1 id="tabletest">Table Test</h1>
|
||||||
============
|
|
||||||
|
|
||||||
section 1
|
<h2 id="section1">section 1</h2>
|
||||||
------------
|
|
||||||
|
|
||||||
|header1 |header2 |header3|
|
<table>
|
||||||
|-----------|-----------|---------|
|
<thead>
|
||||||
|Value1 |Value2 |Value3 |
|
<tr>
|
||||||
|
<th id="header1" style="text-align:left;">header1 </th>
|
||||||
|
<th id="header2" style="text-align:left;">header2 </th>
|
||||||
|
<th id="header3" style="text-align:left;">header3</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:left;"><p>Value1 </p></td>
|
||||||
|
<td style="text-align:left;"><p>Value2 </p></td>
|
||||||
|
<td style="text-align:left;"><p>Value3 </p></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
section 2
|
</tbody>
|
||||||
-----------
|
</table>
|
||||||
|
|
||||||
|headerA |headerB |headerC|
|
<h2 id="section2">section 2</h2>
|
||||||
|-----------|-----------|---------|
|
|
||||||
|ValueA |ValueB |ValueC |
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th id="headera" style="text-align:left;">headerA </th>
|
||||||
|
<th id="headerb" style="text-align:left;">headerB </th>
|
||||||
|
<th id="headerc" style="text-align:left;">headerC</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:left;"><p>ValueA </p></td>
|
||||||
|
<td style="text-align:left;"><p>ValueB </p></td>
|
||||||
|
<td style="text-align:left;"><p>ValueC </p></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
24
test/testTable.js
Normal file
24
test/testTable.js
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
var Showdown = require('../src/showdown');
|
||||||
|
var fs = require('fs');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
setUp:function(callback) {
|
||||||
|
this.showdown = new Showdown.converter({extensions:['table']});
|
||||||
|
callback();
|
||||||
|
},
|
||||||
|
testMakeHtml:function(test) {
|
||||||
|
var html = this.showdown.makeHtml("**blah**");
|
||||||
|
console.log(html);
|
||||||
|
test.equals(html ,'<p><strong>blah</strong></p>');
|
||||||
|
test.done();
|
||||||
|
},
|
||||||
|
testMakeTable:function(test) {
|
||||||
|
var md = fs.readFileSync('test/extensions/table/multiple-tables.md','UTF-8');
|
||||||
|
var html = fs.readFileSync('test/extensions/table/multiple-tables.html','UTF-8');
|
||||||
|
|
||||||
|
var result = this.showdown.makeHtml(md);
|
||||||
|
console.log(result);
|
||||||
|
test.equals(result, html);
|
||||||
|
test.done();
|
||||||
|
}
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user