それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。
") }) jQuery.noConflict()(document).ready(function(){ /**ページャーが気に入らないので修正**/ //やるべきこと // pre・next のいれかえ jQuery('span.pager-next').insertAfter('span.pager-prev') // pre/next に矢印を入れる jQuery('a[rel=next]').text(jQuery('a[rel=next]').text()+"> ") jQuery('a[rel=prev]').text("< "+jQuery('a[rel=prev]').text()) // pre/next をヘッダにもってくる //jQuery(".date.first").css("display","inline-block") jQuery('div.permalink.pager').clone().insertAfter(".date.first") jQuery("header .pager a").css("padding","0px 15px"); //pre/next をAjaxで取得してタイトルを取る。 //取得したタイトルをpre/next のタイトルに jQuery('span.pager-next,span.pager-prev').css("display","inline-block") jQuery('span.pager-next,span.pager-prev').css("width","250px"); jQuery('span.pager-next,span.pager-prev').css("overflow", "hidden"); jQuery('span.pager-next,span.pager-prev').css("white-space", "nowrap"); jQuery('span.pager-next,span.pager-prev').css("text-overflow", "ellipsis"); jQuery("a[rel=next],a[rel=prev]").each(function(idx,e){ var anchor = e jQuery.get(anchor.href,null,function(html){ jQuery(anchor).text() var title = jQuery("
").html(html).find(".entry-title").text().trim() jQuery(anchor).attr("title", title); text = jQuery(anchor).text() text = text.slice(0,10); text = text.replace(/の記事/, "の記事 ["+title+"] "); jQuery(anchor).text(text) }) }); }); })

hg(mercurial)のmergeで衝突箇所を見やすくした

hg(mercurial)のmergeで衝突を見やすくした。Vimdiffを使うことにした。

かなり便利なった。

hgのマージ処理がやりにくい。

mercurialのmergeはそれなりに賢い。でも手作業マージが無くなるわけでもない。

$>hg merge

を叩くと、衝突時にviが起動する。しかしコレが読みづらい。Mercurialが自動でファイルを混ぜてしまう。
コンフリクト箇所が一カ所なら対応できる。複数箇所のコンフリクトがあるとき
マージ忘れが頻発する。

しかも、Mercurialが自動的に「<<<<<」マークする。ファイルにゴミが増える。
リリースファイルにゴミが発生しエラー発生する。

windowsならwin-merge

WindowsでHGを使っている人はWinMergeを使っていた。楽ちんそうだった。

vimdiffが使いたい。

LinuxコンソールはVimdiffというvimのdiff機能があります。

$>vim diff a.txt b.txt

で差分がわかりやすく表示される。

hgでvimdiffを使う方法。

hgrcに以下のような記述を追記する。

./hg/hgrc
[ui]
merge="/usr/bin/vimdiff"

これで、マージが発生したときに、vimdiffで表示される。

hg mergeでvimdiffをするとき

vimdiffがなんと3ペインで開く
左から

  1. 対象ファイル*
  2. 衝突する前のファイル内容
  3. 衝突したリモートファイル

衝突する前のファイルを見ながら、一番左のファイルにマージ結果を書き込めばO.K.です。