Здравствуйте. Я вот от нечего делать написал на коленке утилиту.
Внимание: утилита написана на коленке и там есть баги!
Что она умеет:
- жирный, наклонный, подчеркнутый,
зачеркнутыйтекст - списки
- картинки!!!
- обычный и вынесенный варианты кода
- ссылочки, куда же без них!
- надстрочный и подстрочный тексты.
Ну, кажется, все перечислил.
Прога:
#!/usr/bin/env bash
file="$2"
if [[ ! -f $file ]]; then
echo "Документ $1 не найден, создайте его и напишите нужный код либо исправьте название, если это опечатка"
exit 1
fi
echo "<!DOCTYPE html>
<html lang=ru>
<head><meta content=\"text/html; charset=utf-8\"><title>$3</title></head>
<body style='font-family:verdana,garamond,sans;font-size:16px'>" > $file
cat $1 >> $file
sed -i "s:\[b\]:<strong>:g" $file
sed -i "s:\[/b\]:</strong>:g" $file
sed -i "s:\[i\]:<em>:g" $file
sed -i "s:\[/i\]:</em>:g" $file
sed -i "s:\[u\]:<u>:g" $file
sed -i "s:\[/u\]:</u>:g" $file
sed -i "s:\[s\]:<s>:g" $file
sed -i "s:\[/s\]:</s>:g" $file
sed -i "s:\[sup\]:<sup>:g" $file
sed -i "s:\[/sup\]:</sup>:g" $file
sed -i "s:\[sub\]:<sub>:g" $file
sed -i "s:\[/sub\]:</sub>:g" $file
sed -i "s:\[list\]:<ul>:g" $file
sed -i "s:\[/list\]:</ul>:g" $file
sed -i "s:\[numlist\]:<ol>:g" $file
sed -i "s:\[/numlist\]:</ol>:g" $file
sed -i "s:\[\*\]:<li/>:g" $file
sed -i "s:\[br\]:<br/>:g" $file
sed -i "s:\[code\]:<br/> <pre>:g" $file
sed -i "s:\[/code\]:</pre> <br/>:g" $file
sed -i "s:\[c\]:<code>:g" $file
sed -i "s:\[/c\]:</code>:g" $file
sed -i "s:\[img=:<img src=:g" $file
sed -i "s:\[url=:<a href=:g" $file
sed -i "s:\[/url\]:</a>:g" $file
sed -i "s:\[comment\]:<!-- :g" $file
sed -i "s:\[/comment\]: -->:g" $file
sed -i "s:\"]:\">:g" $file
echo "</body></html>" >> $file
Было:
[img="https://www.linux.org.ru/photos/177986:2038028256.jpg"]BBc0de -- отличный язык разметки! Только я за полмесяца юзанья макдауна от него отвык :)[br]
Есть [b]жирный[/b], [i]курсив[/i], [u]подчеркнутый[/u] и [s]зачеркнутый[/s] текст. А также [sup]надстрочный[/sup] и [sub]подстрочный[/sub].[br]
А еще есть код... вот, сейчас я показал вам, что использую Linux, а не бздю или макос:
[c0de]~$ uname -s
Linux
~$[/c0de]
Хорошая штука -- этот код, но встроенный код еще лучше! [c]uname -s[/c] выдаст, какое ядро у вас.[br]
Вот [url="https://linux.org.ru"]LOR[/url][br]
А это список моих хотелок:[br][list]
[*] Набрать скора
[*] Научиться использовать слаку
[/list]
[numlist]
[*] А это
[*] нумерованный
[*] список,
[*] в котором
[*] ничего нет!
[/numlist]
[comment]Я -- комментарий! Меня видно?[/comment]
Стало:
<!DOCTYPE html>
<html lang=ru>
<head><meta content="text/html; charset=utf-8"><title></title></head>
<body style='font-family:verdana,garamond,sans;font-size:16px'>
<img src="https://www.linux.org.ru/photos/177986:2038028256.jpg">BBcode -- отличный язык разметки! Только я за полмесяца юзанья макдауна от него отвык :)<br/>
Есть <strong>жирный</strong>, <em>курсив</em>, <u>подчеркнутый</u> и <s>зачеркнутый</s> текст. А также <sup>надстрочный</sup> и <sub>подстрочный</sub>.<br/>
А еще есть код... вот, сейчас я показал вам, что использую Linux, а не бздю или макос:
<br/> <pre>~$ uname -s
Linux
~$</pre> <br/>
Хорошая штука -- этот код, но встроенный код еще лучше! <code>uname -s</code> выдаст, какое ядро у вас.<br/>
Вот <a href="https://linux.org.ru">LOR</a><br/>
А это список моих хотелок:<br/><ul>
<li/> Набрать скора
<li/> Научиться использовать слаку
</ul>
<ol>
<li/> А это
<li/> нумерованный
<li/> список,
<li/> в котором
<li/> ничего нет!
</ol>
<!-- Я -- комментарий! Меня видно? -->
</body></html>
Внутри исходников тестовой станицы я поменял тег [code] на [c0de], чтобы читалось лором нормально. (Я использую лоркод в этом сообщении.)
Выглядит готовый результат вот так. На этом можно написать сайт!
Ну как идея? Как реализация?