Source

cointoss1973.bitbucket.org / thg / manual / 2.4-ja / common.html

Full commit


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>4.1. 共通の機能 &mdash; TortoiseHg 1.0.0 documentation</title>
    
    <link rel="stylesheet" href="_static/default.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '',
        VERSION:     '1.0.0',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <script type="text/javascript" src="_static/translations.js"></script>
    <link rel="top" title="TortoiseHg 1.0.0 documentation" href="index.html" />
    <link rel="up" title="4. TortoiseHg ダイアログ" href="daily.html" />
    <link rel="next" title="4.2. Windows エクスプローラ統合" href="explorer.html" />
    <link rel="prev" title="4. TortoiseHg ダイアログ" href="daily.html" /> 
  </head>
  <body>
    <div class="related">
      <h3>ナビゲーション</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="総合索引"
             accesskey="I">索引</a></li>
        <li class="right" >
          <a href="py-modindex.html" title="Pythonモジュール索引"
             >モジュール</a> |</li>
        <li class="right" >
          <a href="explorer.html" title="4.2. Windows エクスプローラ統合"
             accesskey="N">次へ</a> |</li>
        <li class="right" >
          <a href="daily.html" title="4. TortoiseHg ダイアログ"
             accesskey="P">前へ</a> |</li>
        <li><a href="index.html">TortoiseHg 1.0.0 documentation</a> &raquo;</li>
          <li><a href="daily.html" accesskey="U">4. TortoiseHg ダイアログ</a> &raquo;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body">
            
  <div class="section" id="module-common.dialog">
<span id="id1"></span><h1>4.1. 共通の機能<a class="headerlink" href="#module-common.dialog" title="このヘッドラインへのパーマリンク"></a></h1>
<p>これらの機能は多くの TortoiseHg ダイアログに共通しているため、
ここにまとめておきます。</p>
<div class="section" id="id2">
<h2>4.1.1. キーボードショートカット<a class="headerlink" href="#id2" title="このヘッドラインへのパーマリンク"></a></h2>
<p>すべての TortoiseHg ダイアログで使用可能なキーボードショートカットが
いくつか定義されています。</p>
<dl class="docutils">
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-Q</span></tt></dt>
<dd>開いているウィンドウすべてを閉じてアプリケーションを終了します</dd>
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-W</span></tt></dt>
<dd>現在のウィンドウを閉じます (開いているウィンドウが1つだけの場合は
<tt class="kbd docutils literal"><span class="pre">Ctrl-Q</span></tt> と同じ動作)</dd>
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-D</span></tt></dt>
<dd>現在選択されているファイルまたはチェンジセットの差分を表示します</dd>
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-Enter</span></tt></dt>
<dd>コマンドを実行します</dd>
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-.</span></tt> and <tt class="kbd docutils literal"><span class="pre">Ctrl-,</span></tt></dt>
<dd>ファイル一覧で次および前のファイルを選択します</dd>
<dt><tt class="kbd docutils literal"><span class="pre">Ctrl-[</span></tt> and <tt class="kbd docutils literal"><span class="pre">Ctrl-]</span></tt></dt>
<dd>テキスト表示でページ単位で前後にスクロールします</dd>
<dt><tt class="kbd docutils literal"><span class="pre">F5</span></tt>, <tt class="kbd docutils literal"><span class="pre">Ctrl-R</span></tt></dt>
<dd>最新の状態に更新します</dd>
</dl>
<p><a class="reference external" href="http://bitbucket.org/tortoisehg/stable/wiki/MacOSX">Mac OS X</a> では
アップル (Command) キーを <tt class="kbd docutils literal"><span class="pre">Ctrl</span></tt> キーモディファイアの代わりに使用します。
ただしコピー&ペーストなど一部の機能については GTK+ 標準のキーボードショートカットが
使用されるため、 <tt class="kbd docutils literal"><span class="pre">Ctrl</span></tt> キーを使わなければならない場合もあります。</p>
</div>
<div class="section" id="id3">
<h2>4.1.2. 差分表示<a class="headerlink" href="#id3" title="このヘッドラインへのパーマリンク"></a></h2>
<div class="figure">
<img alt="差分表示ウィンドウ" src="_images/visual-diff.png" />
<p class="caption">差分表示ウィンドウ</p>
</div>
<p>TortoiseHg 1.0 では GUI 差分表示 (外部ツール) のベースが見直されました。
新しいシステムはよく使われている差分ツール (インストーラ同梱の KDiff3 も含む)
の検出とその選択に <tt class="file docutils literal"><span class="pre">mergetools.rc</span></tt> を使用します。</p>
<p>ユーザがマージツール (<em class="menuselection">TortoiseHg ‣ 3-way マージツール</em>)
を設定すると、ツール選択の処理を飛ばして、マージツールが GUI 差分表示にも使用されます。
もちろん <em class="menuselection">TortoiseHg ‣ GUI 差分表示ツール</em> を設定することで、
これまで通りマージツールと差分表示ツールを別々に設定することもできます。</p>
<p>マージツール設定ファイルには各ツールごとに最適なコマンドライン設定を持っているため、
面倒な追加設定などは不要です。使用したいツールを選択するだけで大丈夫です。</p>
<p>既存の extdiff 設定が見つかった場合は GUI 差分システムはそれを使います。
しかし extdiff は 3-way 差分のラベル引数をサポートしていないため、
より便利に使うために extdiff の設定を削除または無効にすることをお勧めします。</p>
<p>あえて TortoiseHg の GUI 差分ウィンドウを使おうとしない限り、GUI
差分システムは選択されている差分ツールを直接起動します。
以下が想定している状況です:</p>
<ol class="arabic simple">
<li>比較されるファイルが複数のツールを必要とする</li>
<li>選択されたツールが別のバックグラウンドプロセスを起動する</li>
<li>選択されたツールがディレクトリ差分をサポートしていない</li>
<li>選択されたツールが 3-way 比較をサポートしていない</li>
<li>ファイルの変更が名前変更またはコピーを含む</li>
</ol>
<p>GUI 差分ウィンドウが使用された場合、ウィンドウが閉じられたときに一時ファイルが削除されます。
従って差分表示ツールを終了するまで閉じずに残しておく必要があります。
直接差分表示ツールが起動された場合、そのツールが終了したときに一時ファイルが削除されます。</p>
<p>作業コピーのファイルの比較に差分表示ツールが起動された場合、
ツールはその作業コピーのファイルを元に差分を取るため、
そのファイルをツール上で変更することができます。
複数のファイルを比較する場合、GUI 差分システムは作業コピーのスナップショットを別の場所に作成し、
そのファイルのサイズと日付を記録しておきます。
差分表示ツールが閉じられたとき、さきほどのファイルサイズと日付を元に比較し、
変更が加えられていた場合はそのファイルをオリジナルの作業コピーに書き戻します。
このようにしてディレクトリ差分であっても差分表示ツール上からファイルの書き換えが可能になっています。</p>
<p>GUI 差分ウィンドウが作業コピーの比較に使用された場合、
常に1つのファイルに対して操作されるため、作業コピーのファイルを元に差分を抽出します。</p>
<div class="section" id="id4">
<h3>4.1.2.1. ツールの追加<a class="headerlink" href="#id4" title="このヘッドラインへのパーマリンク"></a></h3>
<p>使っている GUI 差分表示ツールを TortoiseHg がサポートしてないときは
ホームディレクトリにある <tt class="file docutils literal"><span class="pre">Mercurial.ini</span></tt> ファイルにツール設定を追加することができます。
詳しい設定方法については Mercurial の
<a class="reference external" href="http://www.selenic.com/mercurial/hgrc.5.html#merge-tools">ドキュメント</a>
を参照してください。それが終わったら TortoiseHg が使用する設定項目を追加してください:</p>
<div class="highlight-python"><pre>diffargs:  2つのファイル比較に使用される引数です
diff3args: 3つのファイル比較に使用される引数です
dirdiff:   2つのディレクトリ比較をサポートするツールの場合に使用する引数です
dir3diff:  3つのディレクトリ比較をサポートするツールの場合に使用する引数です</pre>
</div>
<p>コマンドライン引数には以下の変数を使用することができます:</p>
<div class="highlight-python"><pre>$parent1:  1つ目の親リビジョンのファイルまたはディレクトリ
$parent2:  2つ目の親リビジョンのファイルまたはディレクトリ
$child:    比較元のリビジョンのファイルまたはディレクトリ
$ancestor: マージに使用される共通の祖先リビジョンのファイルまたはディレクトリ
$parent:   $parent1 の別名

$plabel1:  1つ目の親リビジョンのシンボル名
$plabel2:  2つ目の親リビジョンのシンボル名
$clabel:   比較元のリビジョンのシンボル名
$alabel:   マージに使用される共通の祖先リビジョンのシンボル名</pre>
</div>
<p>もちろん $parent2 と $ancestor は 3-way 差分を使用するときにのみ意味を持ちます。
使用している差分表示ツールが共通の祖先リビジョンを扱うことができないのであれば、
diff3args から削除しても構いません。</p>
<div class="admonition note">
<p class="first admonition-title">ノート</p>
<p class="last">Windows では <cite>executable</cite> 引数において環境変数を ${ProgramFiles}
という書き方で使用することができます。</p>
</div>
<p>未設定の場合、 <strong>diffargs</strong> のデフォルト値は &#8216;$parent $child&#8217;<strong>diff3args</strong>&#8220;&#8221; (空文字) になるため、デフォルトでは 3-way
比較が無効となります。</p>
<p>新しく設定を作成したり、既存のツールの設定を改良したときは
是非私たちの開発メーリングリストに投稿してください。
将来のリリースで利用させていただきます。</p>
</div>
<div class="section" id="office">
<h3>4.1.2.2. Office ファイルの差分<a class="headerlink" href="#office" title="このヘッドラインへのパーマリンク"></a></h3>
<p>TortoiseHg の Windows インストーラには様々なバイナリファイルを比較・マージするために
TortoiseSVN のスクリプトを同梱しています。
それらは TortoiseHg のインストールディレクトリにある
<tt class="file docutils literal"><span class="pre">mergepatterns.rc</span></tt> ファイルで設定されているため、
使用にあたって特別な追加設定などは不要です。</p>
<p>ファイルの拡張子によって使用する差分表示ツールを変更するために、
TortoiseHg は Mercurial の
<a class="reference external" href="http://www.selenic.com/mercurial/hgrc.5.html#merge-patterns">merge-patterns</a>
にならって <strong>[diff-patterns]</strong> セクションをサポートしています。</p>
</div>
</div>
<div class="section" id="id6">
<h2>4.1.3. ツリービュー内検索<a class="headerlink" href="#id6" title="このヘッドラインへのパーマリンク"></a></h2>
<p>ステータス、コミット、シェルフ、チェンジログツールのファイル一覧、
チェンジログビューアのグラフ表示パネル、リポジトリ検索ツールのコメントパネルなど
多くの TortoiseHg ダイアログでツリービューを利用しています。</p>
<p>TortoiseHg のツリービューの大部分はインクリメンタル検索が可能です。
どれか行を1つ選択するなどして、ツリービューがフォーカスされている状態で
検索キーワードの入力を始めてください。入力した検索キーワードを含む小さな
テキスボックスが表示されて、ツリービューは最初にマッチした行にジャンプします。
さらに入力を続けると検索結果が絞られます (エンターキーを押しても次のマッチ項目
にジャンプしないので注意してください。検索ボックスが消えて検索が終了してしまいます)。</p>
<ul class="simple">
<li><tt class="kbd docutils literal"><span class="pre">Ctrl-F</span></tt> は明示的に検索テキストボックスを開きます</li>
<li><tt class="kbd docutils literal"><span class="pre">Ctrl-G</span></tt> 次にマッチした行に移動します</li>
<li><tt class="kbd docutils literal"><span class="pre">Shift-Ctrl-G</span></tt> 前にマッチした行に移動します</li>
<li>マウスのホイールを回転させると前後のマッチ行に移動します</li>
</ul>
</div>
<div class="section" id="hg">
<h2>4.1.4. HG コマンドダイアログ<a class="headerlink" href="#hg" title="このヘッドラインへのパーマリンク"></a></h2>
<p>TortoiseHg ダイアログの多くは Mercurial のコマンド実行の状況をリアルタイムに
表示するため <em>hgcmd</em> を使用しています。</p>
<div class="figure">
<img alt="Mercurial コマンドダイアログ" src="_images/hgcmd.png" />
<p class="caption">Mercurial コマンドダイアログ</p>
</div>
<div class="admonition note">
<p class="first admonition-title">ノート</p>
<p class="last">エラーメッセージは目立つように赤い文字として表示されます</p>
</div>
<p>Mercurial コマンドの実行が終了したとき、ダイアログは <em class="guilabel">閉じる</em> ボタンに
フォーカスを移動させます。そのため <tt class="kbd docutils literal"><span class="pre">Enter</span></tt> キーを押すだけでウィンドウを
閉じることができます。</p>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="index.html">
              <img class="logo" src="_static/thg_logo_92x50.png" alt="Logo"/>
            </a></p>
  <h3><a href="index.html">目次</a></h3>
  <ul>
<li><a class="reference internal" href="#">4.1. 共通の機能</a><ul>
<li><a class="reference internal" href="#id2">4.1.1. キーボードショートカット</a></li>
<li><a class="reference internal" href="#id3">4.1.2. 差分表示</a><ul>
<li><a class="reference internal" href="#id4">4.1.2.1. ツールの追加</a></li>
<li><a class="reference internal" href="#office">4.1.2.2. Office ファイルの差分</a></li>
</ul>
</li>
<li><a class="reference internal" href="#id6">4.1.3. ツリービュー内検索</a></li>
<li><a class="reference internal" href="#hg">4.1.4. HG コマンドダイアログ</a></li>
</ul>
</li>
</ul>

  <h4>前のトピックへ</h4>
  <p class="topless"><a href="daily.html"
                        title="前の章へ">4. TortoiseHg ダイアログ</a></p>
  <h4>次のトピックへ</h4>
  <p class="topless"><a href="explorer.html"
                        title="次の章へ">4.2. Windows エクスプローラ統合</a></p>
  <h3>このページ</h3>
  <ul class="this-page-menu">
    <li><a href="_sources/common.txt"
           rel="nofollow">ソースコードを表示</a></li>
  </ul>
<div id="searchbox" style="display: none">
  <h3>クイック検索</h3>
    <form class="search" action="search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="検索" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    <p class="searchtip" style="font-size: 90%">
    モジュール、クラス、または関数名を入力してください
    </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related">
      <h3>ナビゲーション</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="総合索引"
             >索引</a></li>
        <li class="right" >
          <a href="py-modindex.html" title="Pythonモジュール索引"
             >モジュール</a> |</li>
        <li class="right" >
          <a href="explorer.html" title="4.2. Windows エクスプローラ統合"
             >次へ</a> |</li>
        <li class="right" >
          <a href="daily.html" title="4. TortoiseHg ダイアログ"
             >前へ</a> |</li>
        <li><a href="index.html">TortoiseHg 1.0.0 documentation</a> &raquo;</li>
          <li><a href="daily.html" >4. TortoiseHg ダイアログ</a> &raquo;</li> 
      </ul>
    </div>
    <div class="footer">
        &copy; Copyright 2010, Steve Borho、他.
      このドキュメントは <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3 で生成しました。
    </div>
  </body>
</html>