mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-29 10:18:08 -07:00
dev-python/m2r: New package, dep of dev-python/automat
Package-Manager: Portage-2.3.5, Repoman-2.3.2_p30
This commit is contained in:
1
dev-python/m2r/Manifest
Normal file
1
dev-python/m2r/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST m2r-0.1.5.tar.gz 13202 SHA256 3448f770aed05ca10390d0917cd51836cbf82a2f095bc91507e6291cfab03223 SHA512 78e9e8daa293b2466c95f0adad937fa0bbefaf0dd9663695bb916be13182633e0d462afa5331a595db424420485ef54bbfd4e0625962026fab4ce0c63104bc84 WHIRLPOOL c701aa0a735eda9b7eaab7ff6f384bad7535337f6a7adcfce2d729f33b01aed9213d04fcfe1dc3521b2df0687f2b849a3eb5df628a87ea3ea2697ae389ad8438
|
||||
515
dev-python/m2r/files/m2r.1
Normal file
515
dev-python/m2r/files/m2r.1
Normal file
@@ -0,0 +1,515 @@
|
||||
.\" Man page generated from reStructuredText.
|
||||
.
|
||||
.TH "M2R" "1" "Mar 30, 2017" "0.1.5" "M2R"
|
||||
.SH NAME
|
||||
m2r \- M2R Documentation
|
||||
.
|
||||
.nr rst2man-indent-level 0
|
||||
.
|
||||
.de1 rstReportMargin
|
||||
\\$1 \\n[an-margin]
|
||||
level \\n[rst2man-indent-level]
|
||||
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
-
|
||||
\\n[rst2man-indent0]
|
||||
\\n[rst2man-indent1]
|
||||
\\n[rst2man-indent2]
|
||||
..
|
||||
.de1 INDENT
|
||||
.\" .rstReportMargin pre:
|
||||
. RS \\$1
|
||||
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
|
||||
. nr rst2man-indent-level +1
|
||||
.\" .rstReportMargin post:
|
||||
..
|
||||
.de UNINDENT
|
||||
. RE
|
||||
.\" indent \\n[an-margin]
|
||||
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.nr rst2man-indent-level -1
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
\fI\%PyPI\fP\fI\%PyPI version\fP\fI\%Build Status\fP\fI\%codecov\fP
|
||||
.sp
|
||||
.ce
|
||||
----
|
||||
|
||||
.ce 0
|
||||
.sp
|
||||
.sp
|
||||
M2R converts a markdown file including reST markups to a valid reST format.
|
||||
.SH WHY ANOTHER CONVERTER?
|
||||
.sp
|
||||
I wanted to write sphinx document in markdown, since it\(aqs widely used now and
|
||||
easy to write code blocks and lists. However, converters using pandoc or
|
||||
recommonmark do not support many reST markups and sphinx extensions. For
|
||||
example, reST\(aqs reference link like \fBsee \(garef\(ga_\fP (this is very convenient in
|
||||
long document in which same link appears multiple times) will be converted to
|
||||
a code block in HTML like \fBsee <code>ref</code>_\fP, which is not expected.
|
||||
.SH FEATURES
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Basic markdown and some extensions (see below)
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
inline/block\-level raw html
|
||||
.IP \(bu 2
|
||||
fenced\-code block
|
||||
.IP \(bu 2
|
||||
tables
|
||||
.IP \(bu 2
|
||||
footnotes (\fB[^1]\fP)
|
||||
.UNINDENT
|
||||
.IP \(bu 2
|
||||
Inline\- and Block\-level reST markups
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
single\- and multi\-line directives (\fB\&.. directive::\fP)
|
||||
.IP \(bu 2
|
||||
inline\-roles (\fB:code:\(gaprint(1)\(ga ...\fP)
|
||||
.IP \(bu 2
|
||||
ref\-link (\fBsee \(garef\(ga_\fP)
|
||||
.IP \(bu 2
|
||||
footnotes (\fB[#fn]_\fP)
|
||||
.IP \(bu 2
|
||||
math extension inspired by \fI\%recommonmark\fP
|
||||
.UNINDENT
|
||||
.IP \(bu 2
|
||||
Sphinx extension
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
add markdown support for sphinx
|
||||
.IP \(bu 2
|
||||
\fBmdinclude\fP directive to include markdown from md or reST files
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SH INSTALLATION
|
||||
.sp
|
||||
Python 2.7 or Python 3.3+ is required.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
pip install m2r
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SH USAGE
|
||||
.SS Command Line
|
||||
.sp
|
||||
\fBm2r\fP command converts markdown file to reST format.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
m2r your_document.md [your_document2.md ...]
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Then you will find \fByour_document.rst\fP in the same directory.
|
||||
.SS Programmatic Use
|
||||
.sp
|
||||
Instantiate \fBM2R\fP class and call with markdown text. Then it will return converted text.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
from m2r import M2R
|
||||
m2r = M2R()
|
||||
rest = m2r(\(aq# Title\en\enSentence.\(aq)
|
||||
print(rest)
|
||||
# Title
|
||||
# =====
|
||||
#
|
||||
# Sentence.
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Or, use \fBparse_from_file\fP function to load markdown file and obtain converted text.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
from m2r import parse_from_file
|
||||
output = parse_from_file(\(aqmarkdown_file.md\(aq)
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
This is an example of setup.py to write README in markdown, and publish it to PyPI as reST format.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
readme_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), \(aqREADME.md\(aq)
|
||||
try:
|
||||
from m2r import parse_from_file
|
||||
readme = parse_from_file(readme_file)
|
||||
except ImportError:
|
||||
# m2r may not be installed in user environment
|
||||
with open(readme_file) as f:
|
||||
readme = f.read()
|
||||
setup(
|
||||
...,
|
||||
long_description=readme,
|
||||
...,
|
||||
)
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SS Sphinx Integration
|
||||
.sp
|
||||
In your conf.py, add the following lines.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
extensions = [
|
||||
...,
|
||||
\(aqm2r\(aq,
|
||||
]
|
||||
|
||||
# source_suffix = \(aq.rst\(aq
|
||||
source_suffix = [\(aq.rst\(aq, \(aq.md\(aq]
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Write index.md and run \fBmake html\fP\&.
|
||||
.sp
|
||||
When \fBm2r\fP extension is enabled on sphinx and \fB\&.md\fP file is loaded, m2r
|
||||
converts to reST and pass to sphinx, not making new \fB\&.rst\fP file.
|
||||
.SS mdinclude directive
|
||||
.sp
|
||||
Like \fB\&.. include:: file\fP directive, \fB\&.. mdinclude:: file\fP directive inserts
|
||||
markdown file at the line.
|
||||
.sp
|
||||
Note: do not use \fB\&.. include:: file\fP directive to include markdown file even if
|
||||
in the markdown file, please use \fB\&.. mdinclude:: file\fP instead.
|
||||
.SH RESTRICTIONS
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
In the reST\(aqs directives, markdown is not available. Please write in reST.
|
||||
.IP \(bu 2
|
||||
Column alignment of tables is not supported. (reST does not support this feature)
|
||||
.IP \(bu 2
|
||||
Heading with overline\-and\-underline is not supported.
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
Heading with underline is OK
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
If you find any bug or unexpected behaviour, please report it to
|
||||
\fI\%Issues\fP\&.
|
||||
.SH EXAMPLE
|
||||
.sp
|
||||
See \fI\%example document\fP and \fI\%its
|
||||
source code\fP\&.
|
||||
.sp
|
||||
I\(aqm using m2r for writing user guide of \fI\%WDOM\fP\&.
|
||||
So you can see it as another example. Its \fI\%HTML is
|
||||
here\fP, and \fI\%its
|
||||
source code is here\fP\&.
|
||||
.SH ACKNOWLEDGEMENT
|
||||
.sp
|
||||
m2r is written as an extension of
|
||||
\fI\%mistune\fP, which is highly extensible
|
||||
pure\-python markdown parser.
|
||||
Without the mistune, I couldn\(aqt write this. Thank you!
|
||||
.SH LICENCE
|
||||
.sp
|
||||
\fI\%MIT\fP
|
||||
.SH CONTENTS
|
||||
.SS Example
|
||||
.sp
|
||||
This page is written in mixed markdown and reST.
|
||||
Source code is \fI\%here\fP\&.
|
||||
.SS Basic Markups (inline)
|
||||
.sp
|
||||
A \fBstrong\fP, \fIemphasis\fP, , \fBcode with single\-backtick\fP,
|
||||
\fBcode with two\-backticks\fP, ,
|
||||
\fBreST\(aqs code role\fP, and delete.
|
||||
.SS Link
|
||||
.sp
|
||||
Auto link to \fI\%http://example.com/\fP\&.
|
||||
.sp
|
||||
Link to \fI\%example.com\fP in markdown.
|
||||
.sp
|
||||
Link to \fI\%example.com\fP in reST.
|
||||
.sp
|
||||
Link to \fI\%example\fP in reST_ref.
|
||||
.SS Basic Markups (block)
|
||||
.sp
|
||||
This is a simple sentence.
|
||||
.nf
|
||||
sentence with
|
||||
newlines
|
||||
(reST)
|
||||
.fi
|
||||
.sp
|
||||
.sp
|
||||
Sentence with
|
||||
hard\-wrap (markdown, trailing two spaces)
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
block quote
|
||||
second line
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
nested quote
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
|
||||
.sp
|
||||
.ce
|
||||
----
|
||||
|
||||
.ce 0
|
||||
.sp
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
Block quote after raw\-html directive
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SS List
|
||||
.SS Unordered list
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
unordered list
|
||||
new line
|
||||
.IP \(bu 2
|
||||
next item
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
nested list
|
||||
with new line
|
||||
.IP \(bu 2
|
||||
nested list item 2
|
||||
.UNINDENT
|
||||
.IP \(bu 2
|
||||
original depth
|
||||
.INDENT 2.0
|
||||
.IP 1. 3
|
||||
ordered list item
|
||||
.IP 2. 3
|
||||
second
|
||||
with new line
|
||||
.UNINDENT
|
||||
.IP \(bu 2
|
||||
original depth again
|
||||
.UNINDENT
|
||||
.SS Ordered list
|
||||
.INDENT 0.0
|
||||
.IP 1. 3
|
||||
ordered list
|
||||
in new line
|
||||
.IP 2. 3
|
||||
second item
|
||||
.INDENT 3.0
|
||||
.IP \(bu 2
|
||||
nested unordered list
|
||||
.IP \(bu 2
|
||||
second item
|
||||
with new line
|
||||
.UNINDENT
|
||||
.IP 3. 3
|
||||
original depth
|
||||
.INDENT 3.0
|
||||
.IP 1. 3
|
||||
nested ordered list
|
||||
with new line
|
||||
.IP 2. 3
|
||||
again
|
||||
.UNINDENT
|
||||
.IP 4. 3
|
||||
original depth again
|
||||
.UNINDENT
|
||||
.SS Code Block
|
||||
.sp
|
||||
Simple, indented code block
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
pip install sphinx
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Code block with triple backticks and language.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
def a(n: int) \-> None:
|
||||
for i in range(n):
|
||||
print(i)
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Triple\-tildes (\fB~~~\fP) are also available.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
def a(n: int) \-> None:
|
||||
for i in range(n):
|
||||
print(i)
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Here is reST style code block.
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
if True:
|
||||
print(\(aq\en\(aq)
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SS Extensions
|
||||
.SS Table (Markdown\-Style)
|
||||
.sp
|
||||
(cell\-alignment is not supported currently)
|
||||
.TS
|
||||
center;
|
||||
|l|l|l|.
|
||||
_
|
||||
T{
|
||||
Table Header 1
|
||||
T} T{
|
||||
Table Header 2
|
||||
T} T{
|
||||
Table Header 3
|
||||
T}
|
||||
_
|
||||
T{
|
||||
normal
|
||||
T} T{
|
||||
\fIitalic\fP
|
||||
T} T{
|
||||
\fBbold\fP
|
||||
T}
|
||||
_
|
||||
T{
|
||||
\fBcode\fP
|
||||
T} T{
|
||||
T} T{
|
||||
T}
|
||||
_
|
||||
.TE
|
||||
.SS Math
|
||||
.sp
|
||||
This is E = mc^2 inline math.
|
||||
.sp
|
||||
The below is math\-block (markdown\-style).
|
||||
.sp
|
||||
.ce
|
||||
|
||||
.ce 0
|
||||
.sp
|
||||
The below is reST\-style math\-block.
|
||||
.sp
|
||||
.ce
|
||||
|
||||
.ce 0
|
||||
.SS Footnote
|
||||
.sp
|
||||
Footnote[2] and footnote[3] with markdown.
|
||||
.sp
|
||||
Footnote with reST[1]\&.
|
||||
.sp
|
||||
|
||||
.IP [1] 5
|
||||
reST footnote
|
||||
.IP [2] 5
|
||||
footnote 1
|
||||
.IP [3] 5
|
||||
footnote key
|
||||
.SS Change Log
|
||||
.SS Version 0.2
|
||||
.sp
|
||||
(next version)
|
||||
.SS Version 0.1.5 (2016\-06\-21)
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Support multiple backticks in inline code, like:
|
||||
.UNINDENT
|
||||
.SS Version 0.1.4 (2016\-06\-08)
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Support indented directives/reST\-comments
|
||||
.IP \(bu 2
|
||||
Support role\-name after backticks (\fB\(gatext\(ga:role: style\fP)
|
||||
.UNINDENT
|
||||
.SS Version 0.1.3 (2016\-06\-02)
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Remove extra escaped\-spaces (\(aq\(aq)
|
||||
.INDENT 2.0
|
||||
.IP \(bu 2
|
||||
before and after normal spaces
|
||||
.IP \(bu 2
|
||||
at the beginning of lines
|
||||
.IP \(bu 2
|
||||
before dots
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.SS Version 0.1.2 (2016\-06\-01)
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Add reST\(aqs \fB::\fP marker support
|
||||
.IP \(bu 2
|
||||
Add options to disable emphasis by underscore (\fB_\fP or \fB__\fP)
|
||||
.UNINDENT
|
||||
.SS Version 0.1.1 (2016\-05\-30)
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Fix Bug: when code or link is placed at the end of line, spaces to the next word is disappeared
|
||||
.UNINDENT
|
||||
.SS Version 0.1 (2016\-05\-30)
|
||||
.sp
|
||||
First public release.
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
genindex
|
||||
.IP \(bu 2
|
||||
modindex
|
||||
.IP \(bu 2
|
||||
search
|
||||
.UNINDENT
|
||||
.SH AUTHOR
|
||||
Hiroyuki Takagi
|
||||
.SH COPYRIGHT
|
||||
2016, Hiroyuki Takagi
|
||||
.\" Generated by docutils manpage writer.
|
||||
.
|
||||
5
dev-python/m2r/files/test.md
Normal file
5
dev-python/m2r/files/test.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# Title
|
||||
|
||||
## SubTitle
|
||||
|
||||
__content__
|
||||
8
dev-python/m2r/files/test.rst
Normal file
8
dev-python/m2r/files/test.rst
Normal file
@@ -0,0 +1,8 @@
|
||||
|
||||
Title
|
||||
=====
|
||||
|
||||
SubTitle
|
||||
--------
|
||||
|
||||
**content**
|
||||
50
dev-python/m2r/m2r-0.1.5.ebuild
Normal file
50
dev-python/m2r/m2r-0.1.5.ebuild
Normal file
@@ -0,0 +1,50 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy)
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Markdown to reStructuredText converter"
|
||||
HOMEPAGE="https://github.com/miyakogi/m2r https://pypi.python.org/pypi/m2r"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/mistune[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
test? ( $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7) )
|
||||
${RDEPEND}
|
||||
"
|
||||
|
||||
#S=${WORKDIR}/${P}
|
||||
|
||||
python_prepare_all() {
|
||||
# fix a Q/A violation, trying to install the tests as an independant package
|
||||
sed -e "s/packages=\['tests'\],/packages=[],/" -i setup.py
|
||||
# remove duped old file in the tarball
|
||||
rm "tests/test_r s.py" || die
|
||||
# add missing test files
|
||||
cp "${FILESDIR}/"test.md tests/ || die
|
||||
cp "${FILESDIR}/"test.rst tests/ || die
|
||||
cp "${FILESDIR}/"m2r.1 ./ || die
|
||||
matt
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
py.test -v || die "Tests failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
doman m2r.1
|
||||
}
|
||||
19
dev-python/m2r/metadata.xml
Normal file
19
dev-python/m2r/metadata.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>dolsen@gentoo.org</email>
|
||||
<description>Primary maintainer</description>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<maintainer>
|
||||
<email>miyako.dev@gmail.com</email>
|
||||
<name>Hiroyuki Takagi</name>
|
||||
</maintainer>
|
||||
<remote-id type="pypi">m2r</remote-id>
|
||||
<remote-id type="github">miyakogi/m2r</remote-id>
|
||||
</upstream>
|
||||
<longdescription>
|
||||
M2R converts a markdown file including reST markups to a valid reST format.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user