Commits

Takayuki Shimizukawa committed c7631fb

add sphinx-dev blog

  • Participants
  • Parent commits 6b065aa

Comments (0)

Files changed (3)

site/build/rss_entry_fragments/2014-06-15T17%3A30%3A00---%23%23%23---blog%2Fsphinx-dev-20140615%2Findex

+(dp0
+S'pubdate'
+p1
+cdatetime
+datetime
+p2
+(S'\x07\xde\x06\x0f\x11\x1e\x00\x00\x00\x00'
+p3
+tp4
+Rp5
+sS'link'
+p6
+Vhttp://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html
+p7
+sS'description'
+p8
+V<div id=sphinx class=section>\u000a<h1>2014/6/15 Sphinx\u30e1\u30f3\u30c6\u30ca\u65e5\u8a18: \u30c1\u30b1\u30c3\u30c8\u3068\u30e1\u30fc\u30eb\u306e\u5bfe\u5fdc\u3044\u308d\u3044\u308d<a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#sphinx title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h1>\u000a<p><em>Category: 'Python', 'Sphinx'</em></p>\u000a<p>\u524d\u7f6e\u304d: Sphinx\u672c\u5bb6\u306eML\u306b\u8fd4\u4fe1\u3057\u305f\u308a\u3001\u30c1\u30b1\u30c3\u30c8\u306b\u8fd4\u4fe1\u3057\u305f\u5185\u5bb9\u306e\u30e1\u30e2\u3067\u3059\u3002\u3053\u306e\u30a8\u30f3\u30c8\u30ea\u3092\u8aad\u3080\u3068\u3001Sphinx\u306e\u3053\u307e\u304b\u3044\u6a5f\u80fd\u3092\u77e5\u308b\u3053\u3068\u304c\u51fa\u6765\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\u524d\u7f6e\u304d\u304a\u308f\u308a\u3002</p>\u000a<div id=contents class="contents local topic">\u000a<ul class=simple>\u000a<li><a id=id24 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#docs-python-org class="reference internal">docs.python.org \u307f\u305f\u3044\u306a\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30d0\u30fc\u30b8\u30e7\u30f3\u5207\u308a\u66ff\u3048</a></li>\u000a<li><a id=id25 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#pdf class="reference internal">\u30b9\u30da\u30a4\u30f3\u8a9e\u306e\u65e5\u4ed8\u3092PDF\u51fa\u529b\u306b\u8868\u793a\u3057\u305f\u3044</a></li>\u000a<li><a id=id26 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id3 class="reference internal">\u811a\u6ce8\u30de\u30fc\u30af\u3092 [] \u3067\u56f2\u308f\u306a\u3044\u65b9\u6cd5\u306f\uff1f</a></li>\u000a<li><a id=id27 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id5 class="reference internal">\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5c5e\u6027\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u304c1\u884c\u3067\u8907\u6570\u8a2d\u5b9a\u3057\u305f\u5834\u5408\u53cd\u6620\u3055\u308c\u306a\u3044</a></li>\u000a<li><a id=id28 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#property class="reference internal">@property \u30c7\u30b3\u30ec\u30fc\u30bf\u3092\u4ed8\u3051\u305f\u5c5e\u6027\u306b\u30b7\u30b0\u30cd\u30c1\u30e3\u304c\u4ed8\u304f\u554f\u984c</a></li>\u000a<li><a id=id29 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#sphinxautodo class="reference internal">Sphinx\u306eautodo\u306e\u305f\u3081\u306e\u8907\u96d1\u306a\u30b3\u30fc\u30c9\u3092\u7c21\u7565\u5316</a></li>\u000a<li><a id=id30 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#minifyjquery-js-underscore-jsmake-html class="reference internal">\u975eminify\u7248\u306ejquery.js, underscore.js\u3092make html\u3067\u9078\u3079\u308b\u3088\u3046\u306b\u3059\u308b</a></li>\u000a<li><a id=id31 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#cifsmake-html class="reference internal">CIFS\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u4e0a\u3067make html\u3059\u308b\u3068\u30a8\u30e9\u30fc</a></li>\u000a<li><a id=id32 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id11 class="reference internal">\u753b\u50cf\u304c\u6b21\u306e\u30da\u30fc\u30b8\u306b\u8868\u793a\u3055\u308c\u3066\u3001\u30ad\u30e3\u30d7\u30b7\u30e7\u30f3\u3060\u3051\u524d\u306e\u30da\u30fc\u30b8\u306b\u3042\u308b</a></li>\u000a<li><a id=id33 href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#importpep8 class="reference internal">\u4f7f\u308f\u308c\u3066\u306a\u3044import\u3068\u304bPEP8\u7684\u306a\u4fee\u6b63\u3068\u304b</a></li>\u000a</ul>\u000a</div>\u000a<div id=docs-python-org class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id24>docs.python.org \u307f\u305f\u3044\u306a\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30d0\u30fc\u30b8\u30e7\u30f3\u5207\u308a\u66ff\u3048</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#docs-python-org title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>sphinx-users ML: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id15 class=problematic>`Different version drop-down like python.org`__</span></a></p>\u000a<p><strong>Q.</strong> docs.python.org \u306e\u3088\u3046\u306b\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u30c9\u30ed\u30c3\u30d7\u30c0\u30a6\u30f3\u3067\u8868\u793a\u3057\u3066\u5207\u308a\u63db\u3048\u308b\u6a5f\u80fd\u306fSphinx\u306b\u3042\u308a\u307e\u3059\u304b\uff1f</p>\u000a<p><strong>A.</strong> \u3042\u308a\u307e\u305b\u3093\u3002</p>\u000a<p>Python\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30c1\u30fc\u30e0\u304c\u305d\u306e\u6a5f\u80fd\u3092\u7528\u610f\u3057\u305f\u307d\u3044\u3067\u3059\u306d\u3002\u000a<a class="reference external" href=http://blog.python.org/2012/10/updates-to-docspythonorg.html>http://blog.python.org/2012/10/updates-to-docspythonorg.html</a></p>\u000a<p>\u4ed6\u306e\u4f8b\u3067\u306f\u3001Read The Docs \u306e\u30b7\u30b9\u30c6\u30e0\u3068\u5c02\u7528\u30c6\u30fc\u30de\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u000a\u4f3c\u305f\u3088\u3046\u306a\u6a5f\u80fd\u3092\u63d0\u4f9b\u3057\u3066\u3044\u307e\u3059\u3002\u000a<a class="reference external" href=https://github.com/snide/sphinx_rtd_theme/>https://github.com/snide/sphinx_rtd_theme/</a></p>\u000a</div>\u000a<div id=pdf class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id25>\u30b9\u30da\u30a4\u30f3\u8a9e\u306e\u65e5\u4ed8\u3092PDF\u51fa\u529b\u306b\u8868\u793a\u3057\u305f\u3044</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#pdf title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>sphinx-users ML <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id16 class=problematic>`How i can generate the date into Spanish with latexpdf?`__</span></a></p>\u000a<p><strong>Q.</strong> language='es' \u3067 <tt class="docutils literal"><span class=pre>make</span> <span class=pre>latexpdf</span></tt> \u3057\u305f\u3089\u65e5\u4ed8\u304c <tt class="docutils literal"><span class=pre>5</span> <span class=pre>de</span> <span class=pre>june</span> <span class=pre>de</span> <span class=pre>2014</span></tt> \u3068\u8868\u793a\u3055\u308c\u305f\u3093\u3060\u3051\u3069\u3001\u30b9\u30da\u30a4\u30f3\u8a9e\u3068\u3057\u3066\u306f <tt class="docutils literal"><span class=pre>5</span> <span class=pre>de</span> <span class=pre>junio</span> <span class=pre>de</span> <span class=pre>2014</span></tt> \u304c\u6b63\u3057\u3044\u3002conf.py\u306e <tt class="docutils literal"><span class=pre>today</span></tt> \u3068 <tt class="docutils literal"><span class=pre>today_fmt</span></tt> \u3092\u8a2d\u5b9a\u3057\u3066\u307f\u305f\u3051\u3069\u3046\u307e\u304f\u3044\u304b\u306a\u3044\u3002\u3069\u3046\u3059\u308c\u3070\u3044\u3044\u3060\u308d\u3046\uff1f</p>\u000a<p><strong>A.</strong>  Sphinx\u306ftoday_fmt\u306e\u30b9\u30da\u30a4\u30f3\u8a9e\u7ffb\u8a33\u3092\u6301\u3063\u3066\u3044\u307e\u3059:\u000a<a class="reference external" href=https://bitbucket.org/birkenfeld/sphinx/src/6e61d8a5/sphinx/locale/es/LC_MESSAGES/sphinx.po#cl-47>https://bitbucket.org/birkenfeld/sphinx/src/6e61d8a5/sphinx/locale/es/LC_MESSAGES/sphinx.po#cl-47</a> \u3057\u304b\u3057\u306a\u304c\u3089\u3001Sphinx\u306flocale\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u306a\u3044\u306e\u3067\u3001 "%B" \u3092\u6307\u5b9a\u3059\u308b\u3068\u82f1\u8a9e\u306e\u6708\u540d\u3092\u8868\u793a\u3057\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u305d\u3053\u3067\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306b <tt class="docutils literal"><span class=pre>locale.setlocale</span></tt> \u3092conf.py\u3067\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u554f\u984c\u3092\u56de\u907f\u3067\u304d\u307e\u3059:</p>\u000a<div class=highlight-python><div class=highlight><pre><span class=c>#today = ''</span>\u000a<span class=c>#today_fmt = '%B %d, %Y'</span>\u000a<span class=kn>import</span> <span class=nn>locale</span>\u000a<span class=n>locale</span><span class=o>.</span><span class=n>setlocale</span><span class=p>(</span><span class=n>locale</span><span class=o>.</span><span class=n>LC_TIME</span><span class=p>,</span> <span class=s>'es_ES.UTF-8'</span><span class=p>)</span>\u000a</pre></div>\u000a</div>\u000a<p>%B\u3092\u6307\u5b9a\u3059\u308b\u3068\u6708\u304c\u82f1\u8a9e\u8868\u793a\u306b\u306a\u308b\u3001\u3063\u3066\u3001\u3053\u308c\u306f\u30d0\u30b0\u3063\u307d\u3044\u6c17\u3082\u3059\u308b\u3002\u3057\u304b\u3057\u3001setlocale\u306e\u5024\u306f\u30b7\u30b9\u30c6\u30e0\u306b\u3088\u3063\u3066\u7570\u306a\u308b\u306e\u3067\u3001Windows\u3060\u3068 'es_ES.UTF-8' \u3058\u3083\u306a\u304f\u3066 'spanish' \u3092\u6307\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3002\u305d\u3046\u3044\u3046config\u8a2d\u5b9a\u5897\u3084\u3059\u306e\u304c\u826f\u3044\u306e\u304b\u306a\u3042\u3002</p>\u000a</div>\u000a<div id=id3 class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id26>\u811a\u6ce8\u30de\u30fc\u30af\u3092 [] \u3067\u56f2\u308f\u306a\u3044\u65b9\u6cd5\u306f\uff1f</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id3 title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>sphinx-users ML: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id17 class=problematic>`Can I have a footnote without []?`__</span></a></p>\u000a<p><strong>Q.</strong> \u6587\u4e2d\u306b\u811a\u6ce8\u3078\u306e\u30ea\u30f3\u30af\u304c\u3042\u308b\u3068 <tt class="docutils literal"><span class=pre>[1]</span></tt> \u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u308b\u3051\u3069\u3001\u3053\u306e\u89d2\u62ec\u5f27\u3092\u4ed8\u3051\u306a\u3044HTML\u51fa\u529b\u306b\u3057\u3066\u3001CSS\u3067superscript(\u4e0a\u4ed8\u304d)\u8868\u793a\u306b\u3057\u305f\u3044\u3002</p>\u000a<p><strong>A.</strong> \u305d\u308cdocutils.conf\u306b\u30aa\u30d7\u30b7\u30e7\u30f3\u8a2d\u5b9a\u3059\u308c\u3070\u51fa\u6765\u308b\u3088</p>\u000a<p>Sphinx-1.2 \u4ee5\u964d\u3067\u306f <tt class="docutils literal"><span class=pre>docutils.conf</span></tt> \u3067docutils\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002\u000a<a class="reference external" href=http://sphinx-doc.org/changes.html#release-1-2-beta2-released-sep-17-2013>http://sphinx-doc.org/changes.html#release-1-2-beta2-released-sep-17-2013</a></p>\u000a<p>docutils.conf\u3092conf.py\u3068\u540c\u3058\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u7f6e\u3044\u3066\uff08\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3060\u3063\u305f\u304b\u306a\uff09\u3001\u4ee5\u4e0b\u306e\u5185\u5bb9\u3092\u66f8\u3044\u3066\u4e0b\u3055\u3044:</p>\u000a<div class=highlight-python><pre>[html4css1 writer]\u000afootnote_references = superscript</pre>\u000a</div>\u000a<p>docutils\u306e\u8a2d\u5b9a\u5024\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u3082\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044:\u000a<a class="reference external" href=http://docutils.sourceforge.net/docs/user/config.html#footnote-references>http://docutils.sourceforge.net/docs/user/config.html#footnote-references</a></p>\u000a</div>\u000a<div id=id5 class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id27>\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5c5e\u6027\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u304c1\u884c\u3067\u8907\u6570\u8a2d\u5b9a\u3057\u305f\u5834\u5408\u53cd\u6620\u3055\u308c\u306a\u3044</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id5 title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>sphinx-users ML: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id18 class=problematic>`autoattribute for parallel assignment`__</span></a></p>\u000a<p><strong>Q.</strong> \u4ee5\u4e0b\u306e\u3088\u3046\u306b\u66f8\u3044\u305f\u3089autodoc\u3067\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5c5e\u6027\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u3057\u3066\u53cd\u6620\u3055\u308c\u307e\u3059:</p>\u000a<div class=highlight-python><div class=highlight><pre><span class=k>class</span> <span class=nc>Foo</span><span class=p>:</span>\u000a    <span class=k>def</span> <span class=nf>__init__</span><span class=p>(</span><span class=bp>self</span><span class=p>):</span>\u000a        <span class=bp>self</span><span class=o>.</span><span class=n>spam</span> <span class=o>=</span> <span class=mi>4</span>\u000a        <span class=sd>"""Docstring for instance attribute spam."""</span>\u000a</pre></div>\u000a</div>\u000a<p>\u3067\u3082\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u66f8\u304f\u3068\u53cd\u6620\u3055\u308c\u307e\u305b\u3093:</p>\u000a<div class=highlight-python><div class=highlight><pre><span class=k>class</span> <span class=nc>Foo</span><span class=p>:</span>\u000a    <span class=k>def</span> <span class=nf>__init__</span><span class=p>(</span><span class=bp>self</span><span class=p>):</span>\u000a        <span class=bp>self</span><span class=o>.</span><span class=n>spam</span><span class=p>,</span> <span class=bp>self</span><span class=o>.</span><span class=n>bar</span><span class=p>,</span> <span class=bp>self</span><span class=o>.</span><span class=n>moo</span> <span class=o>=</span> <span class=mi>4</span><span class=p>,</span> <span class=mi>5</span><span class=p>,</span> <span class=mi>6</span>\u000a        <span class=sd>"""Docstring for instance attribute spam."""</span>\u000a</pre></div>\u000a</div>\u000a<p>\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53cd\u6620\u3059\u308b\u65b9\u6cd5\u306f\u3042\u308a\u307e\u3059\u304b\uff1f</p>\u000a<p><strong>A.</strong> \u3042\u308a\u307e\u305b\u3093\u3002\u5c5e\u6027\u6bce\u306b\u5225\u306e\u884c\u306b\u3057\u3066\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u66f8\u3044\u3066\u4e0b\u3055\u3044\u3002</p>\u000a<p>\u6280\u8853\u7684\u306b\u306f\u3001 <tt class="docutils literal"><span class=pre>sphinx.pycode.AttrDocVisitor.add_docstring</span></tt> \u95a2\u6570\u304c\u5c5e\u6027\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u89e3\u91c8\u3057\u3066\u3044\u307e\u3059\u3002146\u884c\u76ee\u306eIF\u30d6\u30ed\u30c3\u30af\u306f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30b3\u30e1\u30f3\u30c8\u306e\u524d\u304b\u5f8c\u306b <cite>self.variable = value</cite> \u3068\u3044\u3063\u305f\u5f62\u5f0f\u306e\u884c\u304c\u306a\u3051\u308c\u3070\u5c5e\u6027\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u307f\u306a\u3057\u307e\u305b\u3093\u3002\u000a<a class="reference external" href=https://bitbucket.org/birkenfeld/sphinx/src/ba4b069e/sphinx/pycode/__init__.py#cl-146>https://bitbucket.org/birkenfeld/sphinx/src/ba4b069e/sphinx/pycode/__init__.py#cl-146</a></p>\u000a</div>\u000a<div id=property class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id28>@property \u30c7\u30b3\u30ec\u30fc\u30bf\u3092\u4ed8\u3051\u305f\u5c5e\u6027\u306b\u30b7\u30b0\u30cd\u30c1\u30e3\u304c\u4ed8\u304f\u554f\u984c</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#property title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>Pull Request #157 <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id19 class=problematic>`Remove spurious signatures from @property decorated attributes`__</span></a></p>\u000a<p>\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u5c5e\u6027 myattribute \u3092\u66f8\u304f\u3068\u3001cython\u304cdocstring\u306e\u5148\u982d\u306b 'Bar.myattributes(self)' \u3063\u3066\u4ed8\u3051\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u3057\u307e\u3063\u305f\u306e\u3067\u3001autodoc\u3067docstring\u5148\u982d\u306e\u30b7\u30b0\u30cd\u30c1\u30e3\u3092\u30e1\u30bd\u30c3\u30c9\u306e\u3068\u304d\u3068\u540c\u3058\u3088\u3046\u306b@property\u304c\u4ed8\u3044\u3066\u3044\u308b\u6642\u3082\u7121\u8996\u3059\u308b\u3088\u3046\u306b\u3057\u305f\u3044:</p>\u000a<div class=highlight-python><div class=highlight><pre><span class=c># cython: embedsignature=True</span>\u000a<span class=k>class</span> <span class=nc>Bar</span><span class=p>(</span><span class=nb>object</span><span class=p>):</span>\u000a    <span class=k>def</span> <span class=nf>__init__</span><span class=p>(</span><span class=bp>self</span><span class=p>):</span>\u000a        <span class=k>pass</span>\u000a\u000a    <span class=nd>@property</span>\u000a    <span class=k>def</span> <span class=nf>myattribute</span><span class=p>(</span><span class=bp>self</span><span class=p>):</span>\u000a        <span class=sd>"""my docstring"""</span>\u000a</pre></div>\u000a</div>\u000a<p>\u3053\u308c\u306e\u52d5\u4f5c\u691c\u8a3c\u3092\u3057\u3066\u3001\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u66f8\u3044\u3066merge\u3057\u305f\u3002\u000a<a class="reference external" href=https://bitbucket.org/birkenfeld/sphinx/commits/679955b96d>https://bitbucket.org/birkenfeld/sphinx/commits/679955b96d</a></p>\u000a</div>\u000a<div id=sphinxautodo class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id29>Sphinx\u306eautodo\u306e\u305f\u3081\u306e\u8907\u96d1\u306a\u30b3\u30fc\u30c9\u3092\u7c21\u7565\u5316</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#sphinxautodo title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>Pull Request #246: <cite>remove complex distinguishing method/classmethod/staticmethod approach for autodoc</cite></p>\u000a<p>\u81ea\u5206\u3067\u63d0\u51fa\u3057\u305fPR\u3002\u3042\u308b\u30e1\u30bd\u30c3\u30c9\u304cclassmethod\u304b\u3001staticmethod\u304b\u3001\u666e\u901a\u306emethod\u304b\u3092\u5224\u5225\u3059\u308b\u5b9f\u88c5\u304c\u8907\u96d1\u3060\u3063\u305f\u306e\u3067\u7c21\u7565\u5316\u3057\u305f\u3044\u3002</p>\u000a<p>\u4fee\u6b63\u524d:</p>\u000a<ul class=simple>\u000a<li>py2: \u30e1\u30bd\u30c3\u30c9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b <tt class="docutils literal"><span class=pre>getattr(classobj,</span> <span class=pre>'methname')</span></tt> \u3057\u3066\u304b\u3089\u3044\u304f\u3064\u304b\u306e\u6761\u4ef6\u30c1\u30a7\u30c3\u30af\u3092\u884c\u3046</li>\u000a<li>py3: \u30e1\u30bd\u30c3\u30c9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b <tt class="docutils literal"><span class=pre>classobj.__dict__.get('methname')</span></tt> \u3057\u3066\u304b\u3089isinstance()\u3067classmethod\u304bstaticmethod\u304b\u306e\u30c1\u30a7\u30c3\u30af\u3092\u884c\u3046</li>\u000a</ul>\u000a<p>\u4fee\u6b63\u5f8c:</p>\u000a<ul class=simple>\u000a<li>\u4fee\u6b63\u524d\u306epy3\u7528\u306e\u5b9f\u88c5\u306b\u7d71\u4e00</li>\u000a</ul>\u000a<p>\u3053\u306e\u4fee\u6b63\u3067\u65e2\u5b58\u306e\u6a5f\u80fd\u304c\u58ca\u308c\u308b\u3053\u3068\u306f\u306a\u3055\u305d\u3046\u3060\u3051\u3069\u3001\u5fc3\u914d\u3060\u3063\u305f\u306e\u3067PR\u51fa\u3057\u3066\u30ec\u30d3\u30e5\u30fc\u3057\u3066\u3082\u3089\u3063\u305f\u3002\u305f\u3076\u3093\u5927\u4e08\u592b\u3001\u3068\u3044\u3046\u3053\u3068\u3067\u30de\u30fc\u30b8\u3002</p>\u000a</div>\u000a<div id=minifyjquery-js-underscore-jsmake-html class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id30>\u975eminify\u7248\u306ejquery.js, underscore.js\u3092make html\u3067\u9078\u3079\u308b\u3088\u3046\u306b\u3059\u308b</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#minifyjquery-js-underscore-jsmake-html title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>Issue #1434: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id20 class=problematic>`provide non-minified options for jquery.js, underscore.js, all others`__</span></a></p>\u000a<p>Debian\u306elintian\u304c\u3001\u914d\u5e03\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5185\u5bb9\u7269\u306b\u30e9\u30a4\u30bb\u30f3\u30b9\u9055\u53cd\u304c\u306a\u3044\u304b\u30c1\u30a7\u30c3\u30af\u3092\u81ea\u52d5\u7684\u306b\u884c\u3063\u3066\u3044\u308b\u304c\u3001\u305d\u308c\u306b\u3088\u3063\u3066\u3001Sphinx\u304c\u540c\u68b1\u3057\u3066\u3044\u308bminified\u7248\u306eJS\u30d5\u30a1\u30a4\u30eb\u304c\u3072\u3063\u304b\u304b\u3063\u3066\u3001SQLAlchemy\u306e\u914d\u5e03\u7269\u3092\u4f5c\u308b\u305f\u3081\u306b\u4eba\u9593\u304c\u6bce\u56de\u624b\u52d5\u3067JS\u30d5\u30a1\u30a4\u30eb\u3092\u5165\u308c\u66ff\u3048\u3066\u3044\u308b\u3002\u3053\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3057\u305f\u3044\u3002</p>\u000a<p>\u6700\u7d42\u7684\u306b\u3001\u9078\u629e\u51fa\u6765\u308b\u3088\u3046\u306b\u3001\u3067\u306f\u306a\u304f\u3001\u975eminified\u7248\u3092\u5e38\u306bmake html\u306e\u7d50\u679c\u3068\u3057\u3066\u540c\u68b1\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\u3002\u3068\u308a\u3042\u3048\u305a\u53cd\u8ad6\u306f\u306a\u3055\u305d\u3046\u306a\u306e\u3067\u3001Issue\u3092\u4e00\u65e6\u30af\u30ed\u30fc\u30ba\u3002</p>\u000a</div>\u000a<div id=cifsmake-html class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id31>CIFS\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u4e0a\u3067make html\u3059\u308b\u3068\u30a8\u30e9\u30fc</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#cifsmake-html title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>Issue #1490: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id21 class=problematic>`sphinx-build -b html . ./_build -&gt; No such file or directory`__</span></a></p>\u000a<p>cifs\u3067Windows\u306e\u5171\u6709\u30c7\u30a3\u30ec\u30af\u30c8\u30eaUbuntu\u306b\u30de\u30a6\u30f3\u30c8\u3057\u3066\u305d\u3053\u3067make html\u3059\u308b\u3068 <tt class="docutils literal"><span class=pre>OSError:</span> <span class=pre>[Errno</span> <span class=pre>2]</span> <span class=pre>No</span> <span class=pre>such</span> <span class=pre>file</span> <span class=pre>or</span> <span class=pre>directory</span></tt> \u3068\u3044\u3046\u30a8\u30e9\u30fc\u304c\u51fa\u308b\u3002</p>\u000a<p>\u3053\u308c\u306f <tt class="docutils literal"><span class=pre>libc</span> <span class=pre>getcwd(3)</span></tt> \u306e\u5236\u9650\u306a\u306e\u3067\u3001Python/Sphinx\u3067\u306f\u3069\u3046\u306b\u3082\u306a\u3089\u306a\u305d\u3046: <a class="reference external" href=http://bugs.python.org/issue17525>http://bugs.python.org/issue17525</a></p>\u000a<p>\u306a\u306e\u3067\u3001make html\u3057\u3066\u304b\u3089\u51fa\u529b\u7d50\u679c\u3092cifs\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u30b3\u30d4\u30fc\u3059\u308b\u65b9\u6cd5\u3092\u9032\u3081\u3066\u304a\u3044\u305f\u3002</p>\u000a</div>\u000a<div id=id11 class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id32>\u753b\u50cf\u304c\u6b21\u306e\u30da\u30fc\u30b8\u306b\u8868\u793a\u3055\u308c\u3066\u3001\u30ad\u30e3\u30d7\u30b7\u30e7\u30f3\u3060\u3051\u524d\u306e\u30da\u30fc\u30b8\u306b\u3042\u308b</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id11 title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p>Issue #1482: <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id22 class=problematic>`Forcing images to be seen in the same page`__</span></a></p>\u000a<p>PDF\u51fa\u529b\u3059\u308b\u3068\u3001\u30da\u30fc\u30b8\u5185\u306b\u53ce\u307e\u3089\u306a\u3044\u753b\u50cf\u306f\u6b21\u306e\u30da\u30fc\u30b8\u306b\u9001\u3089\u308c\u3066\u3057\u307e\u3046\u3051\u3069\u3001\u753b\u50cf\u306e\u6b21\u306e\u884c\u306b\u66f8\u3044\u305f\u8aac\u660e\u6587\u306f\u524d\u306e\u30da\u30fc\u30b8\u306b\u6b8b\u308b\u306e\u3067\u3001\u753b\u50cf\u306a\u3057\u3067\u8aac\u660e\u6587\u3060\u3051\u3042\u308b\u3068\u610f\u5473\u304c\u5206\u304b\u3089\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3046\u3001\u3068\u3044\u3046\u554f\u984c\u3002</p>\u000a<p>\u624b\u5143\u3067\u306f\u518d\u73fe\u3057\u306a\u304b\u3063\u305f\u3002 figure \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6\u3068 image \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6\u4e21\u65b9\u3067\u8a66\u3057\u3066\u307f\u305f\u3051\u3069\u518d\u73fe\u305b\u305a\u3002\u30bd\u30fc\u30b9\u3092\u6dfb\u4ed8\u3057\u3066\u3001\u3063\u3066\u4f9d\u983c\u3057\u3066HOLD\u72b6\u614b\u3078\u3002</p>\u000a</div>\u000a<div id=importpep8 class=section>\u000a<h2><a class=toc-backref href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id33>\u4f7f\u308f\u308c\u3066\u306a\u3044import\u3068\u304bPEP8\u7684\u306a\u4fee\u6b63\u3068\u304b</a><a class=headerlink href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#importpep8 title=\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af>ś</a></h2>\u000a<p><a class="reference external" href=https://bitbucket.org/birkenfeld/sphinx/commits/ba4b069ed617a6479a7d701fb3cc8fd3544db25e>https://bitbucket.org/birkenfeld/sphinx/commits/ba4b069ed617a6479a7d701fb3cc8fd3544db25e</a></p>\u000a<p>Sphinx\u306e\u30c6\u30b9\u30c8\u3067\u306fpyflakes\u3068\u304bpep8\u3068\u304b\u5b9f\u884c\u3057\u3066\u3044\u306a\u3044\u3051\u3069\u3001 <a href=http://www.freia.jp/taka/blog/sphinx-dev-20140615/index.html#id14><span id=id23 class=problematic>`check_sources.py`__</span></a> \u3068\u3044\u3046\u30c1\u30a7\u30c3\u30af\u30b9\u30af\u30ea\u30d7\u30c8\u3067\u30c1\u30a7\u30c3\u30af\u3059\u308b\u904b\u7528\u306b\u306a\u3063\u3066\u3044\u308b\u3002\u306a\u3093\u3067\u3053\u3046\u3044\u3046\u4ed5\u7d44\u307f\u306b\u3057\u305f\u3093\u3060\u308d\u3046\uff1fflake8\u3067\u691c\u67fb\u3057\u3066\u307f\u305f\u3089\u5927\u91cf\u306b\u30a8\u30e9\u30fc\u51fa\u904e\u304e\u305f\u306e\u3067\u3001\u305d\u306e\u3046\u3061flake8\u3067\u901a\u308b\u3088\u3046\u306b\u3057\u3066\u3001flake8\u306b\u5207\u308a\u63db\u3048\u3088\u3046\u30fb\u30fb\u30fb\u3002</p>\u000a</div>\u000a</div>\u000a
+p9
+sS'unique_id'
+p10
+g7
+sS'title'
+p11
+V2014/6/15 Sphinx\u30e1\u30f3\u30c6\u30ca\u65e5\u8a18: \u30c1\u30b1\u30c3\u30c8\u3068\u30e1\u30fc\u30eb\u306e\u5bfe\u5fdc\u3044\u308d\u3044\u308d
+p12
+s.

site/source/blog/index.rst

 .. toctree::
    :maxdepth: 1
 
+   sphinx-dev-20140615/index
    sphinx-dev-remove-2to3/index
    docker-python-image-py34/index
    sphinx-dev-autosummary-doesnt-respect-attribute-comment/index

site/source/blog/sphinx-dev-20140615/index.rst

+:date: 2014-6-15 17:30
+:categories: ['Python', 'Sphinx']
+:body type: text/x-rst
+
+============================================================
+2014/6/15 Sphinxメンテナ日記: チケットとメールの対応いろいろ
+============================================================
+
+*Category: 'Python', 'Sphinx'*
+
+前置き: Sphinx本家のMLに返信したり、チケットに返信したĺ†
+
+.. contents::
+   :local:
+
+docs.python.org みたいなドキュメントバージョン切り替え
+=======================================================
+
+sphinx-users ML: `Different version drop-down like python.org`__
+
+.. __: https://groups.google.com/d/msg/sphinx-users/t-USA30hQTY/t85h2Z1d80QJ
+
+**Q.** docs.python.org のようにドキュメントのバージョンをドロップダウンで表示して切り換える機能はSphinxにありますか?
+
+**A.** ありません。
+
+Pythonのドキュメントチームがその機能を用意したぽいですね。
+http://blog.python.org/2012/10/updates-to-docspythonorg.html 
+
+他の例では、Read The Docs のシステムと専用テーマの組み合わせで
+似たような機能を提供しています。
+https://github.com/snide/sphinx_rtd_theme/
+
+
+スペイン語の日付をPDF出力に表示したい
+======================================
+
+sphinx-users ML `How i can generate the date into Spanish with latexpdf?`__
+
+.. __: https://groups.google.com/d/msg/sphinx-users/vBDx5_waC8g/-d70dT8tdR8J
+
+**Q.** language='es' で ``make latexpdf`` したら日付が ``5 de june de 2014`` と表示されたんだけど、スペイン語としては ``5 de junio de 2014`` が正しい。conf.pyの ``today`` と ``today_fmt`` を設定してみたけどうまくいかない。どうすればいいだろう?
+
+**A.**  Sphinxはtoday_fmtのスペイン語翻訳を持っています: 
+https://bitbucket.org/birkenfeld/sphinx/src/6e61d8a5/sphinx/locale/es/LC_MESSAGES/sphinx.po#cl-47 しかしながら、Sphinxはlocaleを設定していないので、 "%B" を指定すると英語の月名を表示してしまいます。そこで、以下のように ``locale.setlocale`` をconf.pyで実行することで問題を回避できます::
+
+   #today = '' 
+   #today_fmt = '%B %d, %Y' 
+   import locale 
+   locale.setlocale(locale.LC_TIME, 'es_ES.UTF-8') 
+
+
+%Bを指定すると月が英語表示になる、って、これはバグっぽい気もする。しかし、setlocaleの値はシステムによって異なるので、Windowsだと 'es_ES.UTF-8' じゃなくて 'spanish' を指定するĺż
+
+
+脚注マークを [] で囲わない方法は?
+===================================
+
+sphinx-users ML: `Can I have a footnote without []?`__
+
+.. __: https://groups.google.com/d/msg/sphinx-users/vAgojGx4V-E/FSI0_38dneIJ
+
+**Q.** 文中に脚注へのリンクがあると ``[1]`` のように表示されるけど、この角括弧を付けないHTML出力にして、CSSでsuperscript(上付き)表示にしたい。
+
+**A.** それdocutils.confにオプション設定すれば出来るよ
+
+Sphinx-1.2 以降では ``docutils.conf`` でdocutilsのオプションを設定できます。
+http://sphinx-doc.org/changes.html#release-1-2-beta2-released-sep-17-2013
+
+docutils.confをconf.pyと同じディレクトリに置いて(カレントディレクトリだったかな)、以下のĺ†
+
+   [html4css1 writer]
+   footnote_references = superscript
+
+docutilsの設定値については以下も参ç
+http://docutils.sourceforge.net/docs/user/config.html#footnote-references 
+
+
+インスタンス属性のドキュメントが1行で複数設定した場合反映されない
+==================================================================
+
+sphinx-users ML: `autoattribute for parallel assignment`__
+
+.. __: https://groups.google.com/d/msg/sphinx-users/kPlTpeMQNOE/OOdImIuCSsoJ
+
+
+**Q.** 以下のように書いたらautodocでインスタンス属性のドキュメントとして反映されます::
+
+   class Foo:
+       def __init__(self):
+           self.spam = 4
+           """Docstring for instance attribute spam."""
+
+でも以下のように書くと反映されません::
+
+   class Foo:
+       def __init__(self):
+           self.spam, self.bar, self.moo = 4, 5, 6
+           """Docstring for instance attribute spam."""
+
+ドキュメントを反映する方法はありますか?
+
+
+**A.** ありません。属性毎に別の行にしてドキュメントを書いて下さい。
+
+技術的には、 ``sphinx.pycode.AttrDocVisitor.add_docstring`` 関数が属性ドキュメントを解釈しています。146行目のIFブロックはドキュメントコメントの前か後に `self.variable = value` といった形式の行がなければ属性ドキュメントとみなしません。
+https://bitbucket.org/birkenfeld/sphinx/src/ba4b069e/sphinx/pycode/__init__.py#cl-146
+
+
+
+@property デコレータを付けた属性にシグネチャが付く問題
+=======================================================
+
+Pull Request #157 `Remove spurious signatures from @property decorated attributes`__
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/pull-request/157/remove-spurious-signatures-from-property
+
+
+以下のような属性 myattribute を書くと、cythonがdocstringぎĺ
+
+   # cython: embedsignature=True
+   class Bar(object):
+       def __init__(self):
+           pass
+
+       @property
+       def myattribute(self):
+           """my docstring"""
+
+
+これの動作検証をして、テストコード書いてmergeした。
+https://bitbucket.org/birkenfeld/sphinx/commits/679955b96d
+
+
+Sphinxのautodoのための複雑なコードを簡略化
+===========================================
+
+Pull Request #246: `remove complex distinguishing method/classmethod/staticmethod approach for autodoc`
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/pull-request/246/remove-complex-distinguishing-method/diff
+
+
+自分で提出したPR。あるメソッドがclassmethodか、staticmethodか、普通のmethodかを判別する実čŁ
+
+修正前:
+
+* py2: メソッドオブジェクトを取得するために ``getattr(classobj, 'methname')`` してからいくつかの条件チェックを行う
+* py3: メソッドオブジェクトを取得するために ``classobj.__dict__.get('methname')`` してからisinstance()でclassmethodかstaticmethodかのチェックを行う
+
+修正後:
+
+* 修正前のpy3用の実čŁ
+
+この修正で既存の機能が壊れることはなさそうだけど、心é
+
+
+非minify版のjquery.js, underscore.jsをmake htmlで選べるようにする
+==================================================================
+
+Issue #1434: `provide non-minified options for jquery.js, underscore.js, all others`__
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/issue/1434/provide-non-minified-options-for-jqueryjs#comment-10722895
+
+Debianぎlintianが、é
+
+
+最終的に、選択出来るように、ではなく、非minified版を常にmake htmlの結果として同梱するようにしました。とりあえず反論はなさそうなので、Issueを一旦クローズ。
+
+
+CIFSファイルシステム上でmake htmlするとエラー
+==============================================
+
+Issue #1490: `sphinx-build -b html . ./_build -> No such file or directory`__
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/issue/1490/sphinx-build-b-html-_build-no-such-file-or#comment-10722930
+
+
+cifsでWindowsぎĺ
+
+
+これは ``libc getcwd(3)`` の制限なので、Python/Sphinxではどうにもならなそう: http://bugs.python.org/issue17525
+
+なので、make htmlしてから出力結果をcifsディレクトリにコピーする方法を進めておいた。
+
+
+画像が次のページに表示されて、キャプションだけ前のページにある
+===============================================================
+
+Issue #1482: `Forcing images to be seen in the same page`__
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/issue/1482/forcing-images-to-be-seen-in-the-same-page#comment-10723168
+
+
+PDF出力すると、ページĺ†
+
+手ĺ
+
+
+使われてないimportとかPEP8的な修正とか
+========================================
+
+https://bitbucket.org/birkenfeld/sphinx/commits/ba4b069ed617a6479a7d701fb3cc8fd3544db25e
+
+Sphinxのテストではpyflakesとかpep8とか実行していないけど、 `check_sources.py`__ というチェックスクリプトでチェックする運用になっている。なんでこういう仕組みにしたんだろう?flake8で検査してみたら大量にエラー出過ぎたので、そのうちflake8で通るようにして、flake8に切り換えよう・・・。
+
+.. __: https://bitbucket.org/birkenfeld/sphinx/src/ba4b0/utils/check_sources.py
+
+