CINXE.COM
Prime::prime? - 永遠に未完成
<!DOCTYPE html> <html lang="ja" data-admin-domain="//blog.hatena.ne.jp" data-admin-origin="https://blog.hatena.ne.jp" data-author="thinca" data-avail-langs="ja en" data-blog="thinca.hatenablog.com" data-blog-host="thinca.hatenablog.com" data-blog-is-public="1" data-blog-name="永遠に未完成" data-blog-owner="thinca" data-blog-show-ads="1" data-blog-show-sleeping-ads="" data-blog-uri="https://thinca.hatenablog.com/" data-blog-uuid="10328537792366815717" data-blogs-uri-base="https://thinca.hatenablog.com" data-brand="hatenablog" data-data-layer="{"hatenablog":{"admin":{},"analytics":{"brand_property_id":"","measurement_id":"","non_sampling_property_id":"","property_id":"UA-75039377-1","separated_property_id":"UA-29716941-21"},"blog":{"blog_id":"10328537792366815717","content_seems_japanese":"true","disable_ads":"","enable_ads":"true","enable_keyword_link":"true","entry_show_footer_related_entries":"true","force_pc_view":"false","is_public":"true","is_responsive_view":"false","is_sleeping":"false","lang":"ja","name":"\u6c38\u9060\u306b\u672a\u5b8c\u6210","owner_name":"thinca","uri":"https://thinca.hatenablog.com/"},"brand":"hatenablog","page_id":"entry","permalink_entry":{"author_name":"thinca","categories":"ruby","character_count":759,"date":"2009-04-16","entry_id":"10328537792366816980","first_category":"ruby","hour":"2","title":" Prime::prime?","uri":"https://thinca.hatenablog.com/entry/20090416/1239816456"},"pro":"free","router_type":"blogs"}}" data-device="pc" data-dont-recommend-pro="false" data-global-domain="https://hatena.blog" data-globalheader-color="b" data-globalheader-type="pc" data-has-touch-view="1" data-help-url="https://help.hatenablog.com" data-page="entry" data-parts-domain="https://hatenablog-parts.com" data-plus-available="" data-pro="false" data-router-type="blogs" data-sentry-dsn="https://03a33e4781a24cf2885099fed222b56d@sentry.io/1195218" data-sentry-environment="production" data-sentry-sample-rate="0.1" data-static-domain="https://cdn.blog.st-hatena.com" data-version="3302d0c519de548bcb3552ea0bf509" data-initial-state="{}" > <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# article: http://ogp.me/ns/article#"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="robots" content="max-image-preview:large" /> <meta charset="utf-8"/> <meta http-equiv="X-UA-Compatible" content="IE=7; IE=9; IE=10; IE=11" /> <title> Prime::prime? - 永遠に未完成</title> <link rel="canonical" href="https://thinca.hatenablog.com/entry/20090416/1239816456"/> <meta itemprop="name" content=" Prime::prime? - 永遠に未完成"/> <meta itemprop="image" content="https://ogimage.blog.st-hatena.com/10328537792366815717/10328537792366816980/1457813753"/> <meta property="og:title" content=" Prime::prime? - 永遠に未完成"/> <meta property="og:type" content="article"/> <meta property="og:url" content="https://thinca.hatenablog.com/entry/20090416/1239816456"/> <meta property="og:image" content="https://ogimage.blog.st-hatena.com/10328537792366815717/10328537792366816980/1457813753"/> <meta property="og:image:alt" content=" Prime::prime? - 永遠に未完成"/> <meta property="og:description" content="Ruby 1.9で require 'prime' すると使える Prime.prime? や Integer#prime? 、見ての通り素数判定メソッドなんだけど、負数を含む 1 以下の値を渡すと true が返ってくる。 何でやねん!と突っ込みながら最新のソースを見てみると、修正した跡を発見、が、何かおかしい。負数の場合正数にしてから計算するようになってる。私の記憶が確かならば素数は自然数のみだったはず。 おかしいと思ってもうちょっと調べたら、BTSのエントリを発見。まあないわけないよね。http://redmine.ruby-lang.org/issues/show/1243やはり既に指…" /> <meta property="og:site_name" content="永遠に未完成"/> <meta property="article:published_time" content="2009-04-15T17:27:36Z" /> <meta property="article:tag" content="ruby" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:image" content="https://ogimage.blog.st-hatena.com/10328537792366815717/10328537792366816980/1457813753" /> <meta name="twitter:title" content=" Prime::prime? - 永遠に未完成" /> <meta name="twitter:description" content="Ruby 1.9で require 'prime' すると使える Prime.prime? や Integer#prime? 、見ての通り素数判定メソッドなんだけど、負数を含む 1 以下の値を渡すと true が返ってくる。 何でやねん!と突っ込みながら最新のソースを見てみると、修正した跡を発見、が、何かおかしい。負数…" /> <meta name="twitter:app:name:iphone" content="はてなブログアプリ" /> <meta name="twitter:app:id:iphone" content="583299321" /> <meta name="twitter:app:url:iphone" content="hatenablog:///open?uri=https%3A%2F%2Fthinca.hatenablog.com%2Fentry%2F20090416%2F1239816456" /> <meta name="twitter:site" content="@thinca" /> <meta name="description" content="Ruby 1.9で require 'prime' すると使える Prime.prime? や Integer#prime? 、見ての通り素数判定メソッドなんだけど、負数を含む 1 以下の値を渡すと true が返ってくる。 何でやねん!と突っ込みながら最新のソースを見てみると、修正した跡を発見、が、何かおかしい。負数の場合正数にしてから計算するようになってる。私の記憶が確かならば素数は自然数のみだったはず。 おかしいと思ってもうちょっと調べたら、BTSのエントリを発見。まあないわけないよね。http://redmine.ruby-lang.org/issues/show/1243やはり既に指…" /> <script id="embed-gtm-data-layer-loader" data-data-layer-page-specific="{"hatenablog":{"blogs_permalink":{"is_author_pro":"false","has_related_entries_with_elasticsearch":"true","blog_afc_issued":"false","is_blog_sleeping":"false","entry_afc_issued":"false"}}}" > (function() { function loadDataLayer(elem, attrName) { if (!elem) { return {}; } var json = elem.getAttribute(attrName); if (!json) { return {}; } return JSON.parse(json); } var globalVariables = loadDataLayer( document.documentElement, 'data-data-layer' ); var pageSpecificVariables = loadDataLayer( document.getElementById('embed-gtm-data-layer-loader'), 'data-data-layer-page-specific' ); var variables = [globalVariables, pageSpecificVariables]; if (!window.dataLayer) { window.dataLayer = []; } for (var i = 0; i < variables.length; i++) { window.dataLayer.push(variables[i]); } })(); </script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-P4CXTW');</script> <!-- End Google Tag Manager --> <link rel="shortcut icon" href="https://thinca.hatenablog.com/icon/favicon"> <link rel="apple-touch-icon" href="https://thinca.hatenablog.com/icon/touch"> <link rel="icon" sizes="192x192" href="https://thinca.hatenablog.com/icon/link"> <link rel="alternate" type="application/atom+xml" title="Atom" href="https://thinca.hatenablog.com/feed"/> <link rel="alternate" type="application/rss+xml" title="RSS2.0" href="https://thinca.hatenablog.com/rss"/> <link rel="alternate" type="application/json+oembed" href="https://hatena.blog/oembed?url=https%3A%2F%2Fthinca.hatenablog.com%2Fentry%2F20090416%2F1239816456&format=json" title="oEmbed Profile of Prime::prime?"/> <link rel="alternate" type="text/xml+oembed" href="https://hatena.blog/oembed?url=https%3A%2F%2Fthinca.hatenablog.com%2Fentry%2F20090416%2F1239816456&format=xml" title="oEmbed Profile of Prime::prime?"/> <link rel="author" href="http://www.hatena.ne.jp/thinca/"> <link rel="stylesheet" type="text/css" href="https://cdn.blog.st-hatena.com/css/blog.css?version=3302d0c519de548bcb3552ea0bf509"/> <link rel="stylesheet" type="text/css" href="https://usercss.blog.st-hatena.com/blog_style/10328537792366815717/aa7c3bcd6d260825b5060c903d88fb1084256b36"/> <script> </script> <style> div#google_afc_user, div.google-afc-user-container, div.google_afc_image, div.google_afc_blocklink { display: block !important; } </style> <script src="https://cdn.pool.st-hatena.com/valve/valve.js" async></script> <script id="test-valve-definition"> var valve = window.valve || []; valve.push(function(v) { v.config({ service: 'blog', content: { result: 'adtrust', documentIds: ["blog:entry:10328537792366816980"] } }); v.defineDFPSlot({"lazy":1,"sizes":{"mappings":[[[320,568],[[336,280],[300,250],"fluid"]],[[0,0],[[300,250]]]]},"slotId":"ad-in-entry","unit":"/4374287/blog_pc_entry_sleep_in-article"}); v.defineDFPSlot({"lazy":"","sizes":[[300,250],[336,280],[468,60],"fluid"],"slotId":"google_afc_user_container_0","unit":"/4374287/blog_user"}); v.sealDFPSlots(); }); </script> <script type="application/ld+json">{"@context":"http://schema.org","@type":"Article","dateModified":"2016-03-13T05:15:53+09:00","datePublished":"2009-04-16T02:27:36+09:00","headline":" Prime::prime?","image":["https://cdn.blog.st-hatena.com/images/theme/og-image-1500.png"]}</script> </head> <body class="page-entry category-ruby globalheader-ng-enabled"> <div id="globalheader-container" data-brand="hatenablog" > <iframe id="globalheader" height="37" frameborder="0" allowTransparency="true"></iframe> </div> <nav class=" blog-controlls "> <div class="blog-controlls-blog-icon"> <a href="https://thinca.hatenablog.com/"> <img src="https://cdn.blog.st-hatena.com/images/admin/blog-icon-noimage.png" alt="永遠に未完成"/> </a> </div> <div class="blog-controlls-title"> <a href="https://thinca.hatenablog.com/">永遠に未完成</a> </div> <a href="https://blog.hatena.ne.jp/thinca/thinca.hatenablog.com/subscribe?utm_source=blogs_topright_button&utm_medium=button&utm_campaign=subscribe_blog" class="blog-controlls-subscribe-btn test-blog-header-controlls-subscribe"> 読者になる </a> </nav> <div id="container"> <div id="container-inner"> <header id="blog-title" data-brand="hatenablog"> <div id="blog-title-inner" > <div id="blog-title-content"> <h1 id="title"><a href="https://thinca.hatenablog.com/">永遠に未完成</a></h1> </div> </div> </header> <div id="content" class="hfeed" > <div id="content-inner"> <div id="wrapper"> <div id="main"> <div id="main-inner"> <!-- google_ad_section_start --> <!-- rakuten_ad_target_begin --> <article class="entry hentry test-hentry js-entry-article date-first autopagerize_page_element chars-800 words-100 mode-hatena entry-odd" id="entry-10328537792366816980" data-keyword-campaign="" data-uuid="10328537792366816980" data-publication-type="entry"> <div class="entry-inner"> <header class="entry-header"> <div class="date entry-date first"> <a href="https://thinca.hatenablog.com/archive/2009/04/16" rel="nofollow"> <time datetime="2009-04-15T17:27:36Z" title="2009-04-15T17:27:36Z"> <span class="date-year">2009</span><span class="hyphen">-</span><span class="date-month">04</span><span class="hyphen">-</span><span class="date-day">16</span> </time> </a> </div> <h1 class="entry-title"> <a href="https://thinca.hatenablog.com/entry/20090416/1239816456" class="entry-title-link bookmark"> Prime::prime?</a> </h1> <div class="entry-categories categories"> <a href="https://thinca.hatenablog.com/archive/category/ruby" class="entry-category-link category-ruby">ruby</a> </div> </header> <div class="entry-content hatenablog-entry"> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Ruby%201.9">Ruby 1.9</a>で require 'prime' すると使える Prime.prime? や Integer#prime? 、見ての通り<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>判定<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E1%A5%BD%A5%C3%A5%C9">メソッド</a>なんだけど、負数を含む 1 以下の値を渡すと true が返ってくる。<br /> 何でやねん!と突っ込みながら最新のソースを見てみると、<a href="http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/prime.rb?r1=20859&r2=22741&diff_format=h">修正した跡</a>を発見、が、何かおかしい。</p><p>負数の場合正数にしてから計算するようになってる。私の記憶が確かならば<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%BF%F4">自然数</a>のみだったはず。<br /> おかしいと思ってもうちょっと調べたら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/BTS">BTS</a>のエントリを発見。まあないわけないよね。</p><p><a href="http://redmine.ruby-lang.org/issues/show/1243">http://redmine.ruby-lang.org/issues/show/1243</a></p><p>やはり既に指摘されていた模様。何やら色々意見があるようだけれど、私の情けない英語力ではよく理解できなかった。無念。</p><br /> <p>数学に関しては完全に素人なので論理的な意見は言えないんだけど、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Wikipedia">Wikipedia</a>によると<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>は1より大きな<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%BF%F4">自然数</a>となっているので、負数は非<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>の方がわかりやすいんじゃないかなー。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CA%A3%C1%C7%BF%F4">複素数</a>についても言及されてる(? よくわかってません!)っぽいけど、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CA%A3%C1%C7%BF%F4">複素数</a>と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>って何か関係あるのかしら。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%C7%BF%F4">素数</a>って<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%BF%F4">自然数</a>のみだと思ってたけど、もしかして他の数系への拡張もあるのかな? だとしたら Complex#prime? みたいな感じで動作を変えるとかじゃーダメなのかな。うん。繰り返すけど分かってないです。スルーしてください。<br /> そもそも何でこんなこと言い始めたかと言うと、今回この Integer#prime? がそのように動作すると思って使ってハマったので。ええ、もちろんそれだけの理由です。</p><br /> <p>まあただ一つ確実に言えることは、英語と数学をもっと勉強しろってことですね。特にDober Robertさんの主張を理解できていない…。</p> </div> <footer class="entry-footer"> <div class="entry-tags-wrapper"> <div class="entry-tags"> </div> </div> <p class="entry-footer-section track-inview-by-gtm" data-gtm-track-json="{"area": "finish_reading"}"> <span class="author vcard"><span class="fn" data-load-nickname="1" data-user-name="thinca" >thinca</span></span> <span class="entry-footer-time"><a href="https://thinca.hatenablog.com/entry/20090416/1239816456"><time data-relative datetime="2009-04-15T17:27:36Z" title="2009-04-15T17:27:36Z" class="updated">2009-04-16 02:27</time></a></span> <span class=" entry-footer-subscribe " data-test-blog-controlls-subscribe> <a href="https://blog.hatena.ne.jp/thinca/thinca.hatenablog.com/subscribe?utm_campaign=subscribe_blog&utm_medium=button&utm_source=blogs_entry_footer"> 読者になる </a> </span> </p> <div class="hatena-star-container" data-hatena-star-container data-hatena-star-url="https://thinca.hatenablog.com/entry/20090416/1239816456" data-hatena-star-title=" Prime::prime?" data-hatena-star-variant="profile-icon" data-hatena-star-profile-url-template="https://blog.hatena.ne.jp/{username}/" ></div> <div class="social-buttons"> <div class="social-button-item"> <a href="https://b.hatena.ne.jp/entry/s/thinca.hatenablog.com/entry/20090416/1239816456" class="hatena-bookmark-button" data-hatena-bookmark-url="https://thinca.hatenablog.com/entry/20090416/1239816456" data-hatena-bookmark-layout="vertical-balloon" data-hatena-bookmark-lang="ja" title="この記事をはてなブックマークに追加"><img src="https://b.st-hatena.com/images/entry-button/button-only.gif" alt="この記事をはてなブックマークに追加" width="20" height="20" style="border: none;" /></a> </div> <div class="social-button-item"> <div class="fb-share-button" data-layout="box_count" data-href="https://thinca.hatenablog.com/entry/20090416/1239816456"></div> </div> <div class="social-button-item"> <a class="entry-share-button entry-share-button-twitter test-share-button-twitter" href="https://x.com/intent/tweet?text=+Prime%3A%3Aprime%3F+-+%E6%B0%B8%E9%81%A0%E3%81%AB%E6%9C%AA%E5%AE%8C%E6%88%90&url=https%3A%2F%2Fthinca.hatenablog.com%2Fentry%2F20090416%2F1239816456" title="X(Twitter)で投稿する" ></a> </div> </div> <div class="google-afc-image test-google-rectangle-ads"> <div id="google_afc_user_container_0" class="google-afc-user-container google_afc_blocklink2_5 google_afc_boder" data-test-unit="/4374287/blog_user"></div> <a href="http://blog.hatena.ne.jp/guide/pro" class="open-pro-modal" data-guide-pro-modal-ad-url="https://hatena.blog/guide/pro/modal/ad">広告を非表示にする</a> </div> <div class="customized-footer"> <div class="entry-footer-modules" id="entry-footer-secondary-modules"> <div class="hatena-module hatena-module-related-entries" > <!-- Hatena-Epic-has-related-entries-with-elasticsearch:true --> <div class="hatena-module-title"> 関連記事 </div> <div class="hatena-module-body"> <ul class="related-entries hatena-urllist urllist-with-thumbnails"> <li class="urllist-item related-entries-item"> <div class="urllist-item-inner related-entries-item-inner"> <a class="urllist-image-link related-entries-image-link" href="https://thinca.hatenablog.com/entry/20130410/1365530054"> <img alt=" カラースキームを作ってみよう" src="https://cdn.image.st-hatena.com/image/square/55d11624764c6cbcc68147c96119c9fa1829aeec/backend=imagemagick;height=100;version=1;width=100/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Ft%2Fthinca%2F20130410%2F20130410023201.png" class="urllist-image related-entries-image" title=" カラースキームを作ってみよう" width="100" height="100" loading="lazy"> </a> <div class="urllist-date-link related-entries-date-link"> <a href="https://thinca.hatenablog.com/archive/2013/04/10" rel="nofollow"> <time datetime="2013-04-09T17:54:14Z" title="2013年4月10日"> 2013-04-10 </time> </a> </div> <a href="https://thinca.hatenablog.com/entry/20130410/1365530054" class="urllist-title-link related-entries-title-link urllist-title related-entries-title"> カラースキームを作ってみよう</a> <div class="urllist-entry-body related-entries-entry-body">Vim Advent Calendar 2012 の 131 日目の記事です。毎日のよう…</div> </div> </li> <li class="urllist-item related-entries-item"> <div class="urllist-item-inner related-entries-item-inner"> <div class="urllist-date-link related-entries-date-link"> <a href="https://thinca.hatenablog.com/archive/2009/06/13" rel="nofollow"> <time datetime="2009-06-12T20:43:37Z" title="2009年6月13日"> 2009-06-13 </time> </a> </div> <a href="https://thinca.hatenablog.com/entry/20090613/1244839417" class="urllist-title-link related-entries-title-link urllist-title related-entries-title"> Project Eulerがやっとレベル2になった</a> <div class="urllist-entry-body related-entries-entry-body">Project Euler、やっとレベル2、つまり50問解きました。結構サ…</div> </div> </li> </ul> </div> </div> </div> </div> <div class="comment-box js-comment-box"> <ul class="comment js-comment"> <li class="read-more-comments" style="display: none;"><a>もっと読む</a></li> </ul> <a class="leave-comment-title js-leave-comment-title">コメントを書く</a> </div> </footer> </div> </article> <!-- rakuten_ad_target_end --> <!-- google_ad_section_end --> <div class="pager pager-permalink permalink"> <span class="pager-prev"> <a href="https://thinca.hatenablog.com/entry/20090418/1239992475" rel="prev"> <span class="pager-arrow">« </span> ftplugin/javascript_tofunc.vim 書いた </a> </span> <span class="pager-next"> <a href="https://thinca.hatenablog.com/entry/20090410/1239374983" rel="next"> Enumerable#each_with_indexが便利すぎる <span class="pager-arrow"> »</span> </a> </span> </div> </div> </div> <aside id="box1"> <div id="box1-inner"> </div> </aside> </div><!-- #wrapper --> <aside id="box2"> <div id="box2-inner"> <div class="hatena-module hatena-module-profile"> <div class="hatena-module-title"> プロフィール </div> <div class="hatena-module-body"> <a href="https://thinca.hatenablog.com/about" class="profile-icon-link"> <img src="https://cdn.profile-image.st-hatena.com/users/thinca/profile.png" alt="id:thinca" class="profile-icon" /> </a> <span class="id"> <a href="https://thinca.hatenablog.com/about" class="hatena-id-link"><span data-load-nickname="1" data-user-name="thinca">id:thinca</span></a> </span> <div class="hatena-follow-button-box btn-subscribe js-hatena-follow-button-box" > <a href="#" class="hatena-follow-button js-hatena-follow-button"> <span class="subscribing"> <span class="foreground">読者です</span> <span class="background">読者をやめる</span> </span> <span class="unsubscribing" data-track-name="profile-widget-subscribe-button" data-track-once> <span class="foreground">読者になる</span> <span class="background">読者になる</span> </span> </a> <div class="subscription-count-box js-subscription-count-box"> <i></i> <u></u> <span class="subscription-count js-subscription-count"> </span> </div> </div> <div class="profile-about"> <a href="https://thinca.hatenablog.com/about">このブログについて</a> </div> </div> </div> <div class="hatena-module hatena-module-search-box"> <div class="hatena-module-title"> 検索 </div> <div class="hatena-module-body"> <form class="search-form" role="search" action="https://thinca.hatenablog.com/search" method="get"> <input type="text" name="q" class="search-module-input" value="" placeholder="記事を検索" required> <input type="submit" value="検索" class="search-module-button" /> </form> </div> </div> <div class="hatena-module hatena-module-recent-entries "> <div class="hatena-module-title"> <a href="https://thinca.hatenablog.com/archive"> 最新記事 </a> </div> <div class="hatena-module-body"> <ul class="recent-entries hatena-urllist "> <li class="urllist-item recent-entries-item"> <div class="urllist-item-inner recent-entries-item-inner"> <a href="https://thinca.hatenablog.com/entry/2025/01/megurovim-27" class="urllist-title-link recent-entries-title-link urllist-title recent-entries-title">Meguro.vim #27 を開催しました</a> </div> </li> <li class="urllist-item recent-entries-item"> <div class="urllist-item-inner recent-entries-item-inner"> <a href="https://thinca.hatenablog.com/entry/2024/12/megurovim-26" class="urllist-title-link recent-entries-title-link urllist-title recent-entries-title">Meguro.vim #26 を開催しました</a> </div> </li> <li class="urllist-item recent-entries-item"> <div class="urllist-item-inner recent-entries-item-inner"> <a href="https://thinca.hatenablog.com/entry/2024/11/vimconf-2024" class="urllist-title-link recent-entries-title-link urllist-title recent-entries-title">VimConf 2024 を振り返る</a> </div> </li> <li class="urllist-item recent-entries-item"> <div class="urllist-item-inner recent-entries-item-inner"> <a href="https://thinca.hatenablog.com/entry/2024/09/megurovim-25" class="urllist-title-link recent-entries-title-link urllist-title recent-entries-title">Meguro.vim #25 を開催しました</a> </div> </li> <li class="urllist-item recent-entries-item"> <div class="urllist-item-inner recent-entries-item-inner"> <a href="https://thinca.hatenablog.com/entry/2024/07/megurovim-24" class="urllist-title-link recent-entries-title-link urllist-title recent-entries-title">Meguro.vim #24 を開催しました</a> </div> </li> </ul> </div> </div> <div class="hatena-module hatena-module-archive" data-archive-type="default" data-archive-url="https://thinca.hatenablog.com/archive"> <div class="hatena-module-title"> <a href="https://thinca.hatenablog.com/archive">月別アーカイブ</a> </div> <div class="hatena-module-body"> <ul class="hatena-urllist"> <li class="archive-module-year archive-module-year-hidden" data-year="2025"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2025" class="archive-module-year-title archive-module-year-2025"> 2025 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2025/01" class="archive-module-month-title archive-module-month-2025-1"> 2025 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2024"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2024" class="archive-module-year-title archive-module-year-2024"> 2024 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/12" class="archive-module-month-title archive-module-month-2024-12"> 2024 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/11" class="archive-module-month-title archive-module-month-2024-11"> 2024 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/09" class="archive-module-month-title archive-module-month-2024-9"> 2024 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/07" class="archive-module-month-title archive-module-month-2024-7"> 2024 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/06" class="archive-module-month-title archive-module-month-2024-6"> 2024 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/04" class="archive-module-month-title archive-module-month-2024-4"> 2024 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/03" class="archive-module-month-title archive-module-month-2024-3"> 2024 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/02" class="archive-module-month-title archive-module-month-2024-2"> 2024 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2024/01" class="archive-module-month-title archive-module-month-2024-1"> 2024 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2023"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2023" class="archive-module-year-title archive-module-year-2023"> 2023 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2023/11" class="archive-module-month-title archive-module-month-2023-11"> 2023 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2023/10" class="archive-module-month-title archive-module-month-2023-10"> 2023 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2023/03" class="archive-module-month-title archive-module-month-2023-3"> 2023 / 3 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2022"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2022" class="archive-module-year-title archive-module-year-2022"> 2022 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2022/12" class="archive-module-month-title archive-module-month-2022-12"> 2022 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2022/01" class="archive-module-month-title archive-module-month-2022-1"> 2022 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2021"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2021" class="archive-module-year-title archive-module-year-2021"> 2021 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2021/07" class="archive-module-month-title archive-module-month-2021-7"> 2021 / 7 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2020"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2020" class="archive-module-year-title archive-module-year-2020"> 2020 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2020/10" class="archive-module-month-title archive-module-month-2020-10"> 2020 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2020/09" class="archive-module-month-title archive-module-month-2020-9"> 2020 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2020/05" class="archive-module-month-title archive-module-month-2020-5"> 2020 / 5 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2019"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2019" class="archive-module-year-title archive-module-year-2019"> 2019 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2019/12" class="archive-module-month-title archive-module-month-2019-12"> 2019 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2019/11" class="archive-module-month-title archive-module-month-2019-11"> 2019 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2019/02" class="archive-module-month-title archive-module-month-2019-2"> 2019 / 2 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2018"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2018" class="archive-module-year-title archive-module-year-2018"> 2018 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2018/12" class="archive-module-month-title archive-module-month-2018-12"> 2018 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2018/10" class="archive-module-month-title archive-module-month-2018-10"> 2018 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2018/09" class="archive-module-month-title archive-module-month-2018-9"> 2018 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2018/07" class="archive-module-month-title archive-module-month-2018-7"> 2018 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2018/01" class="archive-module-month-title archive-module-month-2018-1"> 2018 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2017"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2017" class="archive-module-year-title archive-module-year-2017"> 2017 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/11" class="archive-module-month-title archive-module-month-2017-11"> 2017 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/09" class="archive-module-month-title archive-module-month-2017-9"> 2017 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/06" class="archive-module-month-title archive-module-month-2017-6"> 2017 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/05" class="archive-module-month-title archive-module-month-2017-5"> 2017 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/04" class="archive-module-month-title archive-module-month-2017-4"> 2017 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2017/03" class="archive-module-month-title archive-module-month-2017-3"> 2017 / 3 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2016"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2016" class="archive-module-year-title archive-module-year-2016"> 2016 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/12" class="archive-module-month-title archive-module-month-2016-12"> 2016 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/11" class="archive-module-month-title archive-module-month-2016-11"> 2016 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/10" class="archive-module-month-title archive-module-month-2016-10"> 2016 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/09" class="archive-module-month-title archive-module-month-2016-9"> 2016 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/06" class="archive-module-month-title archive-module-month-2016-6"> 2016 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/05" class="archive-module-month-title archive-module-month-2016-5"> 2016 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/04" class="archive-module-month-title archive-module-month-2016-4"> 2016 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/03" class="archive-module-month-title archive-module-month-2016-3"> 2016 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2016/02" class="archive-module-month-title archive-module-month-2016-2"> 2016 / 2 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2015"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2015" class="archive-module-year-title archive-module-year-2015"> 2015 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/12" class="archive-module-month-title archive-module-month-2015-12"> 2015 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/11" class="archive-module-month-title archive-module-month-2015-11"> 2015 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/10" class="archive-module-month-title archive-module-month-2015-10"> 2015 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/08" class="archive-module-month-title archive-module-month-2015-8"> 2015 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/06" class="archive-module-month-title archive-module-month-2015-6"> 2015 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/03" class="archive-module-month-title archive-module-month-2015-3"> 2015 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/02" class="archive-module-month-title archive-module-month-2015-2"> 2015 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2015/01" class="archive-module-month-title archive-module-month-2015-1"> 2015 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2014"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2014" class="archive-module-year-title archive-module-year-2014"> 2014 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/12" class="archive-module-month-title archive-module-month-2014-12"> 2014 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/11" class="archive-module-month-title archive-module-month-2014-11"> 2014 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/09" class="archive-module-month-title archive-module-month-2014-9"> 2014 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/08" class="archive-module-month-title archive-module-month-2014-8"> 2014 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/07" class="archive-module-month-title archive-module-month-2014-7"> 2014 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/06" class="archive-module-month-title archive-module-month-2014-6"> 2014 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/05" class="archive-module-month-title archive-module-month-2014-5"> 2014 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/04" class="archive-module-month-title archive-module-month-2014-4"> 2014 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/03" class="archive-module-month-title archive-module-month-2014-3"> 2014 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/02" class="archive-module-month-title archive-module-month-2014-2"> 2014 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2014/01" class="archive-module-month-title archive-module-month-2014-1"> 2014 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2013"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2013" class="archive-module-year-title archive-module-year-2013"> 2013 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/12" class="archive-module-month-title archive-module-month-2013-12"> 2013 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/11" class="archive-module-month-title archive-module-month-2013-11"> 2013 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/10" class="archive-module-month-title archive-module-month-2013-10"> 2013 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/09" class="archive-module-month-title archive-module-month-2013-9"> 2013 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/07" class="archive-module-month-title archive-module-month-2013-7"> 2013 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/06" class="archive-module-month-title archive-module-month-2013-6"> 2013 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/05" class="archive-module-month-title archive-module-month-2013-5"> 2013 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/04" class="archive-module-month-title archive-module-month-2013-4"> 2013 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/03" class="archive-module-month-title archive-module-month-2013-3"> 2013 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/02" class="archive-module-month-title archive-module-month-2013-2"> 2013 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2013/01" class="archive-module-month-title archive-module-month-2013-1"> 2013 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2012"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2012" class="archive-module-year-title archive-module-year-2012"> 2012 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/12" class="archive-module-month-title archive-module-month-2012-12"> 2012 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/11" class="archive-module-month-title archive-module-month-2012-11"> 2012 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/10" class="archive-module-month-title archive-module-month-2012-10"> 2012 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/09" class="archive-module-month-title archive-module-month-2012-9"> 2012 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/08" class="archive-module-month-title archive-module-month-2012-8"> 2012 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/07" class="archive-module-month-title archive-module-month-2012-7"> 2012 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/06" class="archive-module-month-title archive-module-month-2012-6"> 2012 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/05" class="archive-module-month-title archive-module-month-2012-5"> 2012 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/04" class="archive-module-month-title archive-module-month-2012-4"> 2012 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/03" class="archive-module-month-title archive-module-month-2012-3"> 2012 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/02" class="archive-module-month-title archive-module-month-2012-2"> 2012 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2012/01" class="archive-module-month-title archive-module-month-2012-1"> 2012 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2011"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2011" class="archive-module-year-title archive-module-year-2011"> 2011 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/12" class="archive-module-month-title archive-module-month-2011-12"> 2011 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/11" class="archive-module-month-title archive-module-month-2011-11"> 2011 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/10" class="archive-module-month-title archive-module-month-2011-10"> 2011 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/09" class="archive-module-month-title archive-module-month-2011-9"> 2011 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/08" class="archive-module-month-title archive-module-month-2011-8"> 2011 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/07" class="archive-module-month-title archive-module-month-2011-7"> 2011 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/06" class="archive-module-month-title archive-module-month-2011-6"> 2011 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/05" class="archive-module-month-title archive-module-month-2011-5"> 2011 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/04" class="archive-module-month-title archive-module-month-2011-4"> 2011 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/03" class="archive-module-month-title archive-module-month-2011-3"> 2011 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/02" class="archive-module-month-title archive-module-month-2011-2"> 2011 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2011/01" class="archive-module-month-title archive-module-month-2011-1"> 2011 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2010"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2010" class="archive-module-year-title archive-module-year-2010"> 2010 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/12" class="archive-module-month-title archive-module-month-2010-12"> 2010 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/11" class="archive-module-month-title archive-module-month-2010-11"> 2010 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/10" class="archive-module-month-title archive-module-month-2010-10"> 2010 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/09" class="archive-module-month-title archive-module-month-2010-9"> 2010 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/08" class="archive-module-month-title archive-module-month-2010-8"> 2010 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/07" class="archive-module-month-title archive-module-month-2010-7"> 2010 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/06" class="archive-module-month-title archive-module-month-2010-6"> 2010 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/05" class="archive-module-month-title archive-module-month-2010-5"> 2010 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/04" class="archive-module-month-title archive-module-month-2010-4"> 2010 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/03" class="archive-module-month-title archive-module-month-2010-3"> 2010 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/02" class="archive-module-month-title archive-module-month-2010-2"> 2010 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2010/01" class="archive-module-month-title archive-module-month-2010-1"> 2010 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2009"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2009" class="archive-module-year-title archive-module-year-2009"> 2009 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/12" class="archive-module-month-title archive-module-month-2009-12"> 2009 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/11" class="archive-module-month-title archive-module-month-2009-11"> 2009 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/10" class="archive-module-month-title archive-module-month-2009-10"> 2009 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/09" class="archive-module-month-title archive-module-month-2009-9"> 2009 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/08" class="archive-module-month-title archive-module-month-2009-8"> 2009 / 8 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/07" class="archive-module-month-title archive-module-month-2009-7"> 2009 / 7 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/06" class="archive-module-month-title archive-module-month-2009-6"> 2009 / 6 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/05" class="archive-module-month-title archive-module-month-2009-5"> 2009 / 5 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/04" class="archive-module-month-title archive-module-month-2009-4"> 2009 / 4 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/03" class="archive-module-month-title archive-module-month-2009-3"> 2009 / 3 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/02" class="archive-module-month-title archive-module-month-2009-2"> 2009 / 2 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2009/01" class="archive-module-month-title archive-module-month-2009-1"> 2009 / 1 </a> </li> </ul> </li> <li class="archive-module-year archive-module-year-hidden" data-year="2008"> <div class="archive-module-button"> <span class="archive-module-hide-button">▼</span> <span class="archive-module-show-button">▶</span> </div> <a href="https://thinca.hatenablog.com/archive/2008" class="archive-module-year-title archive-module-year-2008"> 2008 </a> <ul class="archive-module-months"> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2008/12" class="archive-module-month-title archive-module-month-2008-12"> 2008 / 12 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2008/11" class="archive-module-month-title archive-module-month-2008-11"> 2008 / 11 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2008/10" class="archive-module-month-title archive-module-month-2008-10"> 2008 / 10 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2008/09" class="archive-module-month-title archive-module-month-2008-9"> 2008 / 9 </a> </li> <li class="archive-module-month"> <a href="https://thinca.hatenablog.com/archive/2008/08" class="archive-module-month-title archive-module-month-2008-8"> 2008 / 8 </a> </li> </ul> </li> </ul> </div> </div> <div class="hatena-module hatena-module-category"> <div class="hatena-module-title"> カテゴリー </div> <div class="hatena-module-body"> <ul class="hatena-urllist"> <li> <a href="https://thinca.hatenablog.com/archive/category/vim" class="category-vim"> vim (288) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/event" class="category-event"> event (140) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/game" class="category-game"> game (24) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/git" class="category-git"> git (18) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/ruby" class="category-ruby"> ruby (14) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/linux" class="category-linux"> linux (14) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/c%2B%2B" class="category-c++"> c++ (12) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/webservice" class="category-webservice"> webservice (11) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/unite" class="category-unite"> unite (8) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/scala" class="category-scala"> scala (8) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/programming" class="category-programming"> programming (8) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/hatena" class="category-hatena"> hatena (6) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/gentoo" class="category-gentoo"> gentoo (6) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/skk" class="category-skk"> skk (6) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/memo" class="category-memo"> memo (6) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/misc" class="category-misc"> misc (5) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/javascript" class="category-javascript"> javascript (5) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/trap" class="category-trap"> trap (5) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/subversion" class="category-subversion"> subversion (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/github" class="category-github"> github (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/java" class="category-java"> java (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/boost" class="category-boost"> boost (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/joke" class="category-joke"> joke (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/moai" class="category-moai"> moai (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/android" class="category-android"> android (4) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/tmux" class="category-tmux"> tmux (3) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/C%23" class="category-C#"> C# (3) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/windows" class="category-windows"> windows (3) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/lua" class="category-lua"> lua (3) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/tools" class="category-tools"> tools (2) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/nyaos" class="category-nyaos"> nyaos (2) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/nodejs" class="category-nodejs"> nodejs (2) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/zsh" class="category-zsh"> zsh (2) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/clojure" class="category-clojure"> clojure (2) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/shell" class="category-shell"> shell (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/actionscript" class="category-actionscript"> actionscript (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/bazaar" class="category-bazaar"> bazaar (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/bot" class="category-bot"> bot (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/vimperator" class="category-vimperator"> vimperator (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/c" class="category-c"> c (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/ustream" class="category-ustream"> ustream (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/coffeescript" class="category-coffeescript"> coffeescript (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/docker" class="category-docker"> docker (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/dropbox" class="category-dropbox"> dropbox (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/elixir" class="category-elixir"> elixir (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/erlang" class="category-erlang"> erlang (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/minecraft" class="category-minecraft"> minecraft (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/firefox" class="category-firefox"> firefox (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/flex" class="category-flex"> flex (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/rake" class="category-rake"> rake (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/python" class="category-python"> python (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/hubot" class="category-hubot"> hubot (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/php" class="category-php"> php (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/jetpack" class="category-jetpack"> jetpack (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/kotlin" class="category-kotlin"> kotlin (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/network" class="category-network"> network (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/monad" class="category-monad"> monad (1) </a> </li> <li> <a href="https://thinca.hatenablog.com/archive/category/llvm" class="category-llvm"> llvm (1) </a> </li> </ul> </div> </div> </div> </aside> </div> </div> </div> </div> <footer id="footer" data-brand="hatenablog"> <div id="footer-inner"> <div style="display:none !important" class="guest-footer js-guide-register test-blogs-register-guide" data-action="guide-register"> <div class="guest-footer-content"> <h3>はてなブログをはじめよう!</h3> <p>thincaさんは、はてなブログを使っています。あなたもはてなブログをはじめてみませんか?</p> <div class="guest-footer-btn-container"> <div class="guest-footer-btn"> <a class="btn btn-register js-inherit-ga" href="https://blog.hatena.ne.jp/register?via=200227" target="_blank">はてなブログをはじめる(無料)</a> </div> <div class="guest-footer-btn"> <a href="https://hatena.blog/guide" target="_blank">はてなブログとは</a> </div> </div> </div> </div> <address class="footer-address"> <a href="https://thinca.hatenablog.com/"> <img src="https://cdn.blog.st-hatena.com/images/admin/blog-icon-noimage.png" width="16" height="16" alt="永遠に未完成"/> <span class="footer-address-name">永遠に未完成</span> </a> </address> <p class="services"> Powered by <a href="https://hatena.blog/">Hatena Blog</a> | <a href="https://blog.hatena.ne.jp/-/abuse_report?target_url=https%3A%2F%2Fthinca.hatenablog.com%2Fentry%2F20090416%2F1239816456" class="report-abuse-link test-report-abuse-link" target="_blank">ブログを報告する</a> </p> </div> </footer> <script async src="https://s.hatena.ne.jp/js/widget/star.js"></script> <script> if (typeof window.Hatena === 'undefined') { window.Hatena = {}; } if (!Hatena.hasOwnProperty('Star')) { Hatena.Star = { VERSION: 2, }; } </script> <div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/ja_JP/sdk.js#xfbml=1&appId=719729204785177&version=v17.0"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script> <div class="quote-box"> <div class="tooltip-quote tooltip-quote-stock"> <i class="blogicon-quote" title="引用をストック"></i> </div> <div class="tooltip-quote tooltip-quote-tweet js-tooltip-quote-tweet"> <a class="js-tweet-quote" target="_blank" data-track-name="quote-tweet" data-track-once> <img src="https://cdn.blog.st-hatena.com/images/admin/quote/quote-x-icon.svg?version=3302d0c519de548bcb3552ea0bf509" title="引用して投稿する" > </a> </div> </div> <div class="quote-stock-panel" id="quote-stock-message-box" style="position: absolute; z-index: 3000"> <div class="message-box" id="quote-stock-succeeded-message" style="display: none"> <p>引用をストックしました</p> <button class="btn btn-primary" id="quote-stock-show-editor-button" data-track-name="curation-quote-edit-button">ストック一覧を見る</button> <button class="btn quote-stock-close-message-button">閉じる</button> </div> <div class="message-box" id="quote-login-required-message" style="display: none"> <p>引用するにはまずログインしてください</p> <button class="btn btn-primary" id="quote-login-button">ログイン</button> <button class="btn quote-stock-close-message-button">閉じる</button> </div> <div class="error-box" id="quote-stock-failed-message" style="display: none"> <p>引用をストックできませんでした。再度お試しください</p> <button class="btn quote-stock-close-message-button">閉じる</button> </div> <div class="error-box" id="unstockable-quote-message-box" style="display: none; position: absolute; z-index: 3000;"> <p>限定公開記事のため引用できません。</p> </div> </div> <script type="x-underscore-template" id="js-requote-button-template"> <div class="requote-button js-requote-button"> <button class="requote-button-btn tipsy-top" title="引用する"><i class="blogicon-quote"></i></button> </div> </script> <div id="hidden-subscribe-button" style="display: none;"> <div class="hatena-follow-button-box btn-subscribe js-hatena-follow-button-box" > <a href="#" class="hatena-follow-button js-hatena-follow-button"> <span class="subscribing"> <span class="foreground">読者です</span> <span class="background">読者をやめる</span> </span> <span class="unsubscribing" data-track-name="profile-widget-subscribe-button" data-track-once> <span class="foreground">読者になる</span> <span class="background">読者になる</span> </span> </a> <div class="subscription-count-box js-subscription-count-box"> <i></i> <u></u> <span class="subscription-count js-subscription-count"> </span> </div> </div> </div> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> <script src="https://b.st-hatena.com/js/bookmark_button.js" charset="utf-8" async="async"></script> <script type="text/javascript" src="https://cdn.blog.st-hatena.com/js/external/jquery.min.js?v=1.12.4&version=3302d0c519de548bcb3552ea0bf509"></script> <script src="https://cdn.blog.st-hatena.com/js/texts-ja.js?version=3302d0c519de548bcb3552ea0bf509"></script> <script id="vendors-js" data-env="production" src="https://cdn.blog.st-hatena.com/js/vendors.js?version=3302d0c519de548bcb3552ea0bf509" crossorigin="anonymous"></script> <script id="hatenablog-js" data-env="production" src="https://cdn.blog.st-hatena.com/js/hatenablog.js?version=3302d0c519de548bcb3552ea0bf509" crossorigin="anonymous" data-page-id="entry"></script> <script>Hatena.Diary.GlobalHeader.init()</script> <script id="valve-dmp" data-service="blog" src="https://cdn.pool.st-hatena.com/valve/dmp.js" data-test-id="dmpjs" async></script> </body> </html>