<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>www.sakuttoly.com &#187; 文字化け</title>
	<atom:link href="http://www.sakuttoly.com/blog/tag/%e6%96%87%e5%ad%97%e5%8c%96%e3%81%91/feed" rel="self" type="application/rss+xml" />
	<link>http://www.sakuttoly.com</link>
	<description></description>
	<lastBuildDate>Sun, 10 Apr 2011 13:25:46 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sakuttoly.com/blog/tag/%e6%96%87%e5%ad%97%e5%8c%96%e3%81%91/feed" />
		<item>
		<title>ページャに lv を使用すると&#8221;git log&#8221;や&#8221;git diff&#8221;で表示されるテキストに変な文字列が挿入されてしまう</title>
		<link>http://www.sakuttoly.com/blog/2009/12/git_pager_lv.html</link>
		<comments>http://www.sakuttoly.com/blog/2009/12/git_pager_lv.html#comments</comments>
		<pubDate>Wed, 30 Dec 2009 16:15:41 +0000</pubDate>
		<dc:creator>shirotter</dc:creator>
				<category><![CDATA[Git]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[バージョン管理]]></category>
		<category><![CDATA[Lv]]></category>
		<category><![CDATA[文字化け]]></category>
		<category><![CDATA[設定]]></category>

		<guid isPermaLink="false">http://www.sakuttoly.com/?p=617</guid>
		<description><![CDATA[最近Ubuntuを使い始めることにしました。 GUI環境でLinuxを使うのは初めてで、今回のお題であるgitも使うのは初めてです。 今回は、git環境を整えるために色々触ってみた際に遭遇した不具合の対処方法を書きます。 [...]]]></description>
			<content:encoded><![CDATA[				<p>最近Ubuntuを使い始めることにしました。<br />
				GUI環境でLinuxを使うのは初めてで、今回のお題であるgitも使うのは初めてです。</p>
				<p>今回は、git環境を整えるために色々触ってみた際に遭遇した不具合の対処方法を書きます。</p>
				<p>今回遭遇した不具合というのは、</p>
				<p><span class="strong">&#8220;git log&#8221;や&#8221;git diff&#8221;で表示されるテキストに文字化けしたような変な文字列が挿入されてしまう</span></p>
				<p>というものです。</p>
				<p>具体的には、Ubuntuにgitを入れて使ってみると、Ubuntuの初期状態には問題無かったのですが、多国語化ファイルビューア(ページャ)であるlvをインストールしてみた途端に、&#8221;git log&#8221;や&#8221;git diff&#8221;などのコマンド実行時に<span class="strong">&#8220;^[["</span>という文字列が行頭などに大量に挿入されて視認性が著しく悪くなるという不具合です。</p>
				<p>この不具合の原因と解決方法は以下のようになっています。</p>
				<p><span id="more-617"></span></p>
				<h3>原因</h3>
				<p>今回、大量に挿入されていた<span class="strong">"^[["</span>という文字列ですが、</p>
				<pre>
"^[[数字m" + gitの出力する文字列 + "^[[m"
</pre>
				<p>という形式で書かれています。</p>
				<p>これらの"^[[数字m"や"^[[m"は恐らくANSIエスケープシーケンス、もしくはそれに準拠した何かかと思います。</p>
				<p>断言できない理由は、僕が調べた限りANSIエスケープシーケンスに"^[["という記述方法が見つからないからです。(調査不足?)<br />
				けれど、<a href="http://ascii-table.com/ansi-escape-sequences.php">ここ</a>の Set Graphics Mode を参照する限りでは、"^[[数字m"の数字部分が文字列の装飾の効果と一致します。</p>
				<p>"git diff"では各ヘッダ行の行頭部分に"^[[1m"と指定されており、うまく表示されている場合には、ANSIエスケープシーケンスの値[1:Bold on]となっているように太字表示になります。<br />
				また、&#8221;git log&#8221;では各コミットオブジェクトの行が&#8221;^[[33m"で始まっています。<br />
				これもうまく表示されている場合には[33:Yellow]と同じく黄色で表示されます。</p>
				<p>そして後に出てくる&#8221;^[[m"はHTMLでいう閉じタグの役目を果たし、[0:All attributes off]である&#8221;^[[0m&#8221;の省略形ではないかと思います。</p>
				<p>ちなみにこのANSIエスケープシーケンスはBashのプロンプト(PS1変数)に色などの効果を付与したい場合に使います。<br />
				(つい先日にBashのプロンプトを弄る記事を書いてる途中で放置したままなので知ってました)</p>
				<p>では、この文字列の装飾のための文字列が何故挿入されるのでしょうか?</p>
				<p>それはgitの設定で、</p>
				<pre>
$ git config --global color.ui auto
</pre>
				<p>としているからでした。<br />
				試しに、</p>
				<pre>
$ git config --global color.ui never
</pre>
				<p>とすると、これらの文字列は一切挿入されなくなります。</p>
				<h3>解決方法</h3>
				<p>&#8220;color.ui never&#8221;とすれば不具合は発生しませんが、視認性という点では装飾されたテキストの方が良いですよね。</p>
				<p>解決方法は至って簡単でした。</p>
				<p>lvに&#8221;-cオプション&#8221;を指定するだけです。<br />
				&#8220;-cオプション&#8221;は、<a href="http://www.mt.cs.keio.ac.jp/person/narita/lv/index_ja.html">ここ</a>によると「文字の属性を指定するANSIエスケープシーケンスを通す」となっています。</p>
				<p>lvに&#8221;-cオプション&#8221;をつけて、&#8221;git diff&#8221;や&#8221;git log&#8221;を実行するには2通りの方法があります。</p>
				<p>まずは一つ目の指定方法です。</p>
				<pre>
$ git config --global core.pager "lv -c"
</pre>
				<p>として直接オプションを指定する方法です。</p>
				<p>そして、もう一つは</p>
				<pre>
$ cd ~
$ cat << EOF > .lv
> -c
> EOF
</pre>
				<p>としてホームディレクトリに&#8221;.lvファイル&#8221;を作成することです。<br />
				(ヒアドキュメントを使って書いたらちょっと出来る人に見えますよね)</p>
				<p>&#8220;.lvファイル&#8221;はmanによると、lv実行時にファイルに書かれたオプションを常に付与する効果があります。<br />
				上記の例ですと、</p>
				<pre>
$ alias lv='lv -c'
</pre>
				<p>のようなイメージですね。</p>
				<p>もし、gitの表示時のみに&#8221;-cオプション&#8221;を付与したいのなら、前者の方法を使うべきですね。</p>
				<p>これで、ページャにlvを使った場合にgitの出力に変な文字列が挿入されてしまう問題が解決できました。</p>
				<h3>補足</h3>
				<p>lvインストール直後にこの不具合が発生する理由は、lvインストール時に自動でデフォルトのページャがlvに切り替わるからみたいです。<br />
				これは以下のコマンドで確認できます。</p>
				<pre>
$ update-alternatives --config pager
</pre>
				<p>では、何故lvインストール前は正常に表示できていたのでしょうか。</p>
				<p><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798023809/sakutto0b-22/ref=nosim/">入門Git</a>によると、gitは特にページャの設定がされていない場合(Ubuntuのデフォルトのページャはless)には、lessに&#8221;-FRSXオプション&#8221;をつけて実行するとなっています。<br />
				lessの&#8221;-Rオプション&#8221;がlvの&#8221;-cオプション&#8221;のような役目を持っていることが、<a href="http://www.linux.or.jp/JM/html/GNU_less/man1/less.1.html">Manpage of LESS</a>を見れば分かります。</p>
				<p>なるほどね。</p>
				<h3>参考</h3>
				<ul>
				<li><a href="http://d.hatena.ne.jp/umedoblock/20090701/1246452211">gitを最近使い始めたわけだけど、今まで不便な点が２点ほどあった。@梅どぶろくの日記</a></li>
				<li><a href="http://ascii-table.com/ansi-escape-sequences.php">ANSI Escape sequences</a></li>
				</ul>
				<h3>使用したソフトウェアのバージョン</h3>
				<table>
				<tr>
				<th><a href="http://www.ubuntulinux.jp/">Ubuntu</a></th>
				<td>9.10</td>
				</tr>
				<tr>
				<th><a href="http://git-scm.com/">Git</a></th>
				<td>1.6.3.3-2</td>
				</tr>
				<tr>
				<th><a href="http://www.mt.cs.keio.ac.jp/person/narita/lv/">lv</a></th>
				<td>4.51-2</td>
				</tr>
				</table>
				<div class="amazlet-box" style="margin-bottom:0px;">
				<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798023809/sakutto0b-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41R5gj5VRFL._SL160_.jpg" alt="入門Git" style="border: none;" /></a></div>
				<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
				<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798023809/sakutto0b-22/ref=nosim/" name="amazletlink" target="_blank">入門Git</a>
				<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4798023809/sakutto0b-22/ref=nosim/" title="入門Git" target="_blank">amazlet</a> at 09.12.31</div>
				</div>
				<div class="amazlet-detail">濱野 純(Junio C Hamano) <br />秀和システム <br />売り上げランキング: 15825</div>
				<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
				<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="4.0" /></div>
				<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> 美しいワークフローのための入門書<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-3-0.gif" alt="3" /> 内部に詳しいが故に…</div>
				<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798023809/sakutto0b-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
				</div>
				<div class="amazlet-footer" style="clear: left"></div>
				</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sakuttoly.com/blog/2009/12/git_pager_lv.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sakuttoly.com/blog/2009/12/git_pager_lv.html" />
	</item>
		<item>
		<title>WindowsXPのiTunes9でiTunes Storeが文字化けするのを、CSSを編集して直す</title>
		<link>http://www.sakuttoly.com/blog/2009/12/windowsxp_itunes9_itunes_store.html</link>
		<comments>http://www.sakuttoly.com/blog/2009/12/windowsxp_itunes9_itunes_store.html#comments</comments>
		<pubDate>Sun, 20 Dec 2009 07:37:44 +0000</pubDate>
		<dc:creator>kuborn</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[iTunes Store]]></category>
		<category><![CDATA[iTunes9]]></category>
		<category><![CDATA[WindowsXP]]></category>
		<category><![CDATA[文字化け]]></category>

		<guid isPermaLink="false">http://www.sakuttoly.com/?p=609</guid>
		<description><![CDATA[いつからか分かりませんが、自宅のWindowsXPのiTunes9でiTunes Storeが文字化けするようになりました。 最近iPhoneを購入してiTunes Storeを使う必要が出てきたため、本気で解決方法を探 [...]]]></description>
			<content:encoded><![CDATA[				<p>いつからか分かりませんが、自宅のWindowsXPのiTunes9でiTunes Storeが文字化けするようになりました。<br />
				最近iPhoneを購入してiTunes Storeを使う必要が出てきたため、本気で解決方法を探してみました。</p>
				<p><span id="more-609"></span><br />
				<span class="strong">以下の方法よりももっと簡単な方法がありました。<br />
				iTunesが持っているCSSファイルを編集することで対応できるようです。<br />
				<a href="http://www.inoran.com/archives/2009/0928_2158.php">iTunes 9でStoreの文字化けを直す</a>を参考に修正したところ、上手く治りました。<br />
				しかもMSゴシックよりも遥かに見栄えがよくなったので満足。</span></p>
				<p><span class="strong">上記の方法にて、Windows 7 64bitでは&#8221;C:\Program Files (x86)\iTunes\iTunes.Resources\iTunes.css&#8221;にCSSファイルがありました。iTunes Music Storeの見栄えが変わって大満足です。(by shirotter)</span></p>
				<hr />
				<p>ググってみると、<a href="http://safarirealized.com/archives/51223775.html">iTunes 9 for WindowsでiTunes Storeにアクセスすると文字化けする問題</a>などに書かれているように、確かにWindowsXP向けのJIS2004に対応した新しいMSゴシックとMS明朝をMicrosoft Updateから当てていました。</p>
				<p>そこで上記ページにあるようにMS ゴシック &#038; MS 明朝 JIS2004 対応フォント (KB927489)をアンインストールして再起動してみましたが、直らなかったようです。<br />
				それでレジストリを直接編集して解決しました。</p>
				<p>編集箇所は次の通りです。(レジストリをいじるので、操作は自己責任でお願いします。。という決まり文句)<br />
				※以下で分からない方は、<a href="http://d.hatena.ne.jp/Tensor/20091016">iTunes 9 で起こった文字化けを直してみた</a>が詳しいです。<br />
				HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts<br />
				の下の下記キー項目の値(値です。キー項目ではないことに注意！)をmsgothic.ttcとmsmincho.ttcに戻してください。</p>
				<ul>
				<li>ＭＳ ゴシック &#038; ＭＳ Ｐゴシック &#038; MS UI Gothic (TrueType)</li>
				<li>ＭＳ 明朝 &#038; ＭＳ Ｐ明朝 (TrueType)</li>
				<li>MS Gothic &#038; MS PGothic &#038; MS UI Gothic (TrueType)</li>
				<li>MS Mincho &#038; MS PMincho (TrueType)</li>
				</ul>
				<p>おそらくmsgoth04.ttcとmsmin04.ttcになっているはずなので、それを戻します。</p>
				<p>これで再起動すれば、文字化けが解消しました！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sakuttoly.com/blog/2009/12/windowsxp_itunes9_itunes_store.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sakuttoly.com/blog/2009/12/windowsxp_itunes9_itunes_store.html" />
	</item>
	</channel>
</rss>

