ANN: HgShell 0.1, a context menu extension for Windows

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

ANN: HgShell 0.1, a context menu extension for Windows

Ignacio Alvarez
A few weeks back, I wrote a simple context menu extension for integrating Mercurial with Windows Explorer:

http://xentient.com/images/SNAG-00006.png

I've been waiting for some free time to write a basic tutorial on how to use the extension before releasing it, but I've figured I'm going to have to wait much longer, so I'm releasing it as is, in case anyone finds it useful:

http://xentient.com/setups/hgshell-setup.zip

The setup program will also install and configure Mercurial, Qct, and KDiff3.

The extension basically works by passing the appropriate arguments to the hg command, either directly or through batch files stored in the "hgshell\scripts
" folder.

The "Clone repository" command works a bit different than you might expect. If you invoke it on a repository on your hard disk, it will automatically create a clone and append a number to the name. For example, if you clone "c:\repo" it will create a repository named "c:\repo.1" and if you clone it again it will create a repository named "c:\repo.2". If you invoke the clone command on a folder that isn't a repository, it will display a dialog where you can enter the URL of the repository you wish to clone.

The extension stores its own settings in a file named ".hgoptions" inside the repository. This file shouldn't be tracked by Mercurial, since it's rewritten constantly and will most likely be different for each user.

Thank you.

Ignacio.


_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: ANN: HgShell 0.1, a context menu extension for Windows

Ignacio Alvarez
Additional comments on the extension:

- I just realized that the glog command doesn't accept a file parameter, so "hg glog readme" won't display only the log entries for the readme file. I've just uploaded version 0.1.1 of the extension to work around this problem. The extension now uses "hg log
" if the "Show log" command is invoked on a file, and "hg glog" if invoked on a folder.

- The "Clone repository" command automatically determines the name of the repository from the URL you give it. For example, if you clone http://selenic.com/repo/hg, the repository is named hg, and if you clone
http://AMD:8000, the repository is named AMD_8000.

- When cloning a repository served using the
"Run server" command, you can append a name to the URL to give the repository a specific name. For example, http://AMD:8000/RepoName.

- By default, KDiff3 makes backups of the files it overwrites when merging.
You can deselect this option using the "Settings->Configure KDiff3" menu command if you don't want your repositories filled with ".orig" files. The option can be found at the bottom of the "Directory Merge" tab:

http://xentient.com/images/SNAG-00007.png

- The "Push" command always does a pull first (a fetch actually) to avoid the problem of creating multiple heads on the server it is pushing its changes to.

Thank you.

Ignacio.


Ignacio Alvarez wrote:
A few weeks back, I wrote a simple context menu extension for integrating Mercurial with Windows Explorer:

http://xentient.com/images/SNAG-00006.png

I've been waiting for some free time to write a basic tutorial on how to use the extension before releasing it, but I've figured I'm going to have to wait much longer, so I'm releasing it as is, in case anyone finds it useful:

http://xentient.com/setups/hgshell-setup.zip

The setup program will also install and configure Mercurial, Qct, and KDiff3.

The extension basically works by passing the appropriate arguments to the hg command, either directly or through batch files stored in the "hgshell\scripts
" folder.

The "Clone repository" command works a bit different than you might expect. If you invoke it on a repository on your hard disk, it will automatically create a clone and append a number to the name. For example, if you clone "c:\repo" it will create a repository named "c:\repo.1" and if you clone it again it will create a repository named "c:\repo.2". If you invoke the clone command on a folder that isn't a repository, it will display a dialog where you can enter the URL of the repository you wish to clone.

The extension stores its own settings in a file named ".hgoptions" inside the repository. This file shouldn't be tracked by Mercurial, since it's rewritten constantly and will most likely be different for each user.

Thank you.

Ignacio.


_______________________________________________ Mercurial mailing list [hidden email] http://selenic.com/mailman/listinfo/mercurial


_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: ANN: HgShell 0.1, a context menu extension for Windows

Sean-17
Ignacio,

Thanks for the update.

As I already have a all three of the packaged apps, installed, I am reluctant to re-install and configure them.

Is it possible to just manually register hgshell.dll.

Are there any registry keys, config files required to get it all working ?

Thanks

Sean

On 7/12/07, Ignacio Alvarez <[hidden email]> wrote:
Additional comments on the extension:

- I just realized that the glog command doesn't accept a file parameter, so "hg glog readme" won't display only the log entries for the readme file. I've just uploaded version 0.1.1 of the extension to work around this problem. The extension now uses "hg log
" if the "Show log" command is invoked on a file, and "hg glog" if invoked on a folder.

- The "Clone repository" command automatically determines the name of the repository from the URL you give it. For example, if you clone <a href="http://selenic.com/repo/hg" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://selenic.com/repo/hg, the repository is named hg, and if you clone
<a href="http://AMD:8000" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://AMD:8000, the repository is named AMD_8000.

- When cloning a repository served using the
"Run server" command, you can append a name to the URL to give the repository a specific name. For example, <a href="http://AMD:8000/RepoName" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://AMD:8000/RepoName.

- By default, KDiff3 makes backups of the files it overwrites when merging.
You can deselect this option using the "Settings->Configure KDiff3" menu command if you don't want your repositories filled with ".orig" files. The option can be found at the bottom of the "Directory Merge" tab:

<a href="http://xentient.com/images/SNAG-00007.png" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/images/SNAG-00007.png

- The "Push" command always does a pull first (a fetch actually) to avoid the problem of creating multiple heads on the server it is pushing its changes to.

Thank you.

Ignacio.


Ignacio Alvarez wrote:
A few weeks back, I wrote a simple context menu extension for integrating Mercurial with Windows Explorer:

<a href="http://xentient.com/images/SNAG-00006.png" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/images/SNAG-00006.png

I've been waiting for some free time to write a basic tutorial on how to use the extension before releasing it, but I've figured I'm going to have to wait much longer, so I'm releasing it as is, in case anyone finds it useful:

<a href="http://xentient.com/setups/hgshell-setup.zip" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/setups/hgshell-setup.zip

The setup program will also install and configure Mercurial, Qct, and KDiff3.

The extension basically works by passing the appropriate arguments to the hg command, either directly or through batch files stored in the "hgshell\scripts
" folder.

The "Clone repository" command works a bit different than you might expect. If you invoke it on a repository on your hard disk, it will automatically create a clone and append a number to the name. For example, if you clone "c:\repo" it will create a repository named "c:\repo.1" and if you clone it again it will create a repository named "c:\repo.2". If you invoke the clone command on a folder that isn't a repository, it will display a dialog where you can enter the URL of the repository you wish to clone.

The extension stores its own settings in a file named ".hgoptions" inside the repository. This file shouldn't be tracked by Mercurial, since it's rewritten constantly and will most likely be different for each user.

Thank you.

Ignacio.


_______________________________________________
Mercurial mailing list
<img style="border: medium none ; cursor: pointer;" title="send email to Mercurial@selenic.com via gmail" src="data:image/bmp;base64,Qk1GAgAAAAAAADYAAAAoAAAAEAAAAAsAAAABABgAAAAAABACAADEDgAAxA4AAAAAAAAAAAAAODjaODjap6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5ODjaODjaODjaODja4uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2FODjaODjaODjaODjap6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f5ODjaODjaODjaODja4uL%2Fp6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2FgYHygYHy%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f54uL%2FODjaODjaODjaODja%2F%2F%2F%2F4uL%2Fp6f5trb%2FgYHyWlrpWlrpgYHytrb%2Fp6f54uL%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FgYHyWlrpODjaODjaWlrpgYHytrb%2F%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2FgYHyWlrpODjatrb%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2FgYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2FODjaODjaODjaODjagYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHyODjaODjaODjaODjaODjaODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaODjaODjaODjaODjaODjaODjagYHyp6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5gYHyODjaODjaODja"> [hidden email] <a href="http://selenic.com/mailman/listinfo/mercurial" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://selenic.com/mailman/listinfo/mercurial


_______________________________________________
Mercurial mailing list
<img style="border: medium none ; cursor: pointer;" title="send email to Mercurial@selenic.com via gmail" src="data:image/bmp;base64,Qk1GAgAAAAAAADYAAAAoAAAAEAAAAAsAAAABABgAAAAAABACAADEDgAAxA4AAAAAAAAAAAAAODjaODjap6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5ODjaODjaODjaODja4uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2FODjaODjaODjaODjap6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f5ODjaODjaODjaODja4uL%2Fp6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2FgYHygYHy%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f54uL%2FODjaODjaODjaODja%2F%2F%2F%2F4uL%2Fp6f5trb%2FgYHyWlrpWlrpgYHytrb%2Fp6f54uL%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FgYHyWlrpODjaODjaWlrpgYHytrb%2F%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2FgYHyWlrpODjatrb%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2FgYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2FODjaODjaODjaODjagYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHyODjaODjaODjaODjaODjaODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaODjaODjaODjaODjaODjaODjagYHyp6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5gYHyODjaODjaODja"> [hidden email]
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://selenic.com/mailman/listinfo/mercurial" target="_blank"> http://selenic.com/mailman/listinfo/mercurial



_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: ANN: HgShell 0.1, a context menu extension for Windows

Ignacio Alvarez
Mercurial, Qct, and KDiff3 are installed in subdirectories of HgShell, so there shouldn't be any conflicts with your existing installations. To use the shell extension with your existing installation of Mercurial, just take a look at the Mercurial.ini file inside the "HgShell\Mercurial" subdirectory for any configuration changes you might need to make.

Specifically, HgShell expects the qct command to be available, as well as fetch, graphlog, and kdiff3. The shell extension also uses several scripts inside the "
HgShell\scripts" folder that you might want to customize. For example, the script for the "Show log" command is limited to three log entries, but you can easily modify it to show the last 10 by editing the file hg_log.bat:

hg log -l 10 %1
pause


Thank you.

Ignacio.


Sean wrote:
Ignacio,

Thanks for the update.

As I already have a all three of the packaged apps, installed, I am reluctant to re-install and configure them.

Is it possible to just manually register hgshell.dll.

Are there any registry keys, config files required to get it all working ?

Thanks

Sean

On 7/12/07, Ignacio Alvarez <[hidden email]> wrote:
Additional comments on the extension:

- I just realized that the glog command doesn't accept a file parameter, so "hg glog readme" won't display only the log entries for the readme file. I've just uploaded version 0.1.1 of the extension to work around this problem. The extension now uses "hg log
" if the "Show log" command is invoked on a file, and "hg glog" if invoked on a folder.

- The "Clone repository" command automatically determines the name of the repository from the URL you give it. For example, if you clone <a href="http://selenic.com/repo/hg" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://selenic.com/repo/hg, the repository is named hg, and if you clone
<a href="http://AMD:8000" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://AMD:8000, the repository is named AMD_8000.

- When cloning a repository served using the
"Run server" command, you can append a name to the URL to give the repository a specific name. For example, <a href="http://AMD:8000/RepoName" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://AMD:8000/RepoName.

- By default, KDiff3 makes backups of the files it overwrites when merging.
You can deselect this option using the "Settings->Configure KDiff3" menu command if you don't want your repositories filled with ".orig" files. The option can be found at the bottom of the "Directory Merge" tab:

<a href="http://xentient.com/images/SNAG-00007.png" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/images/SNAG-00007.png

- The "Push" command always does a pull first (a fetch actually) to avoid the problem of creating multiple heads on the server it is pushing its changes to.

Thank you.

Ignacio.


Ignacio Alvarez wrote:
A few weeks back, I wrote a simple context menu extension for integrating Mercurial with Windows Explorer:

<a href="http://xentient.com/images/SNAG-00006.png" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/images/SNAG-00006.png

I've been waiting for some free time to write a basic tutorial on how to use the extension before releasing it, but I've figured I'm going to have to wait much longer, so I'm releasing it as is, in case anyone finds it useful:

<a href="http://xentient.com/setups/hgshell-setup.zip" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/setups/hgshell-setup.zip

The setup program will also install and configure Mercurial, Qct, and KDiff3.

The extension basically works by passing the appropriate arguments to the hg command, either directly or through batch files stored in the "hgshell\scripts
" folder.

The "Clone repository" command works a bit different than you might expect. If you invoke it on a repository on your hard disk, it will automatically create a clone and append a number to the name. For example, if you clone "c:\repo" it will create a repository named "c:\repo.1" and if you clone it again it will create a repository named "c:\repo.2". If you invoke the clone command on a folder that isn't a repository, it will display a dialog where you can enter the URL of the repository you wish to clone.

The extension stores its own settings in a file named ".hgoptions" inside the repository. This file shouldn't be tracked by Mercurial, since it's rewritten constantly and will most likely be different for each user.

Thank you.

Ignacio.


_______________________________________________ Mercurial mailing list <img moz-do-not-send="true" style="border: medium none ; cursor: pointer;" title="send email to Mercurial@selenic.com via gmail" src="data:image/bmp;base64,Qk1GAgAAAAAAADYAAAAoAAAAEAAAAAsAAAABABgAAAAAABACAADEDgAAxA4AAAAAAAAAAAAAODjaODjap6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5ODjaODjaODjaODja4uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2FODjaODjaODjaODjap6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f5ODjaODjaODjaODja4uL%2Fp6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2FgYHygYHy%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f54uL%2FODjaODjaODjaODja%2F%2F%2F%2F4uL%2Fp6f5trb%2FgYHyWlrpWlrpgYHytrb%2Fp6f54uL%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FgYHyWlrpODjaODjaWlrpgYHytrb%2F%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2FgYHyWlrpODjatrb%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2FgYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2FODjaODjaODjaODjagYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F %2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHyODjaODjaODjaODjaODjaODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaODjaODjaODjaODjaODjaODjagYHyp6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5gYHyODjaODjaODja"> [hidden email] <a href="http://selenic.com/mailman/listinfo/mercurial" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://selenic.com/mailman/listinfo/mercurial


_______________________________________________
Mercurial mailing list
<img moz-do-not-send="true" style="border: medium none ; cursor: pointer;" title="send email to Mercurial@selenic.com via gmail" src="data:image/bmp;base64,Qk1GAgAAAAAAADYAAAAoAAAAEAAAAAsAAAABABgAAAAAABACAADEDgAAxA4AAAAAAAAAAAAAODjaODjap6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5ODjaODjaODjaODja4uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2FODjaODjaODjaODjap6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f5ODjaODjaODjaODja4uL%2Fp6f54uL%2F%2F%2F%2F%2F%2F%2F%2F%2FgYHygYHy%2F%2F%2F%2F%2F%2F%2F%2F4uL%2Fp6f54uL%2FODjaODjaODjaODja%2F%2F%2F%2F4uL%2Fp6f5trb%2FgYHyWlrpWlrpgYHytrb%2Fp6f54uL%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FgYHyWlrpODjaODjaWlrpgYHytrb%2F%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2F%2F%2F%2F%2FgYHyWlrpODjatrb%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2F%2F%2F%2F%2FODjaODjaODjaODja%2F%2F%2F%2FgYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHy%2F%2F%2F%2FODjaODjaODjaODjagYHyWlrpODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F %2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaWlrpgYHyODjaODjaODjaODjaODjaODjatrb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Ftrb%2FODjaODjaODjaODjaODjaODjaODjagYHyp6f5p6f5p6f5p6f5p6f5p6f5p6f5p6f5gYHyODjaODjaODja">[hidden email]
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://selenic.com/mailman/listinfo/mercurial" target="_blank">http://selenic.com/mailman/listinfo/mercurial




_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: HgShell 0.1 bug -- .hg does not always denote a repository

Ignacio Alvarez
In reply to this post by Ignacio Alvarez
Fixed and uploaded version 0.1.2.

Thanks.

Ignacio.


Gregory Collins wrote:
Hello,

If you try to run "clone repository" from somewhere within a cygwin
homedir, the tool doesn't work --- it goes directly to the hg command
prompt, and in my case, it creates a directory /home/greg.1 which
looks like it's trying to be an hg tree.

I think the reason for this is that there's a $HOME/.hg file in the
parent hierarchy, which causes your tool to assume the current working
directory is an hg repository rooted at /home/greg. Could you change
this check to peek inside the .hg directory for 00changelog.i?

Thanks,
Gregory Collins [hidden email]

On Wed, Jul 11, 2007 at 07:24:09PM -0700, Ignacio Alvarez wrote:
  
   Additional comments on the extension:

   - I just realized that the glog command doesn't accept a file parameter,
   so "hg glog readme" won't display only the log entries for the readme
   file. I've just uploaded version 0.1.1 of the extension to work around
   this problem. The extension now uses "hg log" if the "Show log" command is
   invoked on a file, and "hg glog" if invoked on a folder.

   - The "Clone repository" command automatically determines the name of the
   repository from the URL you give it. For example, if you clone
   [1]http://selenic.com/repo/hg, the repository is named hg, and if you
   clone [2]http://AMD:8000, the repository is named AMD_8000.

   - When cloning a repository served using the "Run server" command, you can
   append a name to the URL to give the repository a specific name. For
   example, [3]http://AMD:8000/RepoName.

   - By default, KDiff3 makes backups of the files it overwrites when
   merging. You can deselect this option using the "Settings->Configure
   KDiff3" menu command if you don't want your repositories filled with
   ".orig" files. The option can be found at the bottom of the "Directory
   Merge" tab:

   [4]http://xentient.com/images/SNAG-00007.png

   - The "Push" command always does a pull first (a fetch actually) to avoid
   the problem of creating multiple heads on the server it is pushing its
   changes to.

   Thank you.

   Ignacio.

   Ignacio Alvarez wrote:

     A few weeks back, I wrote a simple context menu extension for
     integrating Mercurial with Windows Explorer:

     [5]http://xentient.com/images/SNAG-00006.png

     I've been waiting for some free time to write a basic tutorial on how to
     use the extension before releasing it, but I've figured I'm going to
     have to wait much longer, so I'm releasing it as is, in case anyone
     finds it useful:

     [6]http://xentient.com/setups/hgshell-setup.zip

     The setup program will also install and configure Mercurial, Qct, and
     KDiff3.

     The extension basically works by passing the appropriate arguments to
     the hg command, either directly or through batch files stored in the
     "hgshell\scripts" folder.

     The "Clone repository" command works a bit different than you might
     expect. If you invoke it on a repository on your hard disk, it will
     automatically create a clone and append a number to the name. For
     example, if you clone "c:\repo" it will create a repository named
     "c:\repo.1" and if you clone it again it will create a repository named
     "c:\repo.2". If you invoke the clone command on a folder that isn't a
     repository, it will display a dialog where you can enter the URL of the
     repository you wish to clone.

     The extension stores its own settings in a file named ".hgoptions"
     inside the repository. This file shouldn't be tracked by Mercurial,
     since it's rewritten constantly and will most likely be different for
     each user.

     Thank you.

     Ignacio.

       ------------------------------------------------------------------

 _______________________________________________
 Mercurial mailing list
 [[hidden email]
 [8]http://selenic.com/mailman/listinfo/mercurial
  

References

   Visible links
   1. http://selenic.com/repo/hg
   2. http://amd:8000
   3. http://amd:8000/RepoName
   4. http://xentient.com/images/SNAG-00007.png
   5. http://xentient.com/images/SNAG-00006.png
   6. http://xentient.com/setups/hgshell-setup.zip
   7. [hidden email]
   8. http://selenic.com/mailman/listinfo/mercurial
    

  
_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
    

  


_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: ANN: HgShell 0.1, a context menu extension for Windows

Marcin Kasperski
In reply to this post by Ignacio Alvarez
Nice idea. A few remarks:

- if you bind kdiff and mercurial, then it would make sense to
bind plink and write example of using it into mercurial.ini

- setup option to use already installed mercurial and kdiff
instead of your own would be nice (setup can ask where they are
located)

_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|

Re: ANN: HgShell 0.1, a context menu extension for Windows

Kevin Greiner
In reply to this post by Ignacio Alvarez


On 7/11/07, Ignacio Alvarez <[hidden email]> wrote:
A few weeks back, I wrote a simple context menu extension for integrating Mercurial with Windows Explorer:

<a href="http://xentient.com/images/SNAG-00006.png" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/images/SNAG-00006.png

I've been waiting for some free time to write a basic tutorial on how to use the extension before releasing it, but I've figured I'm going to have to wait much longer, so I'm releasing it as is, in case anyone finds it useful:

<a href="http://xentient.com/setups/hgshell-setup.zip" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xentient.com/setups/hgshell-setup.zip

The setup program will also install and configure Mercurial, Qct, and KDiff3.

Some feedback...

1. Could you include the version # of the software in the hgshell-setup.zip filename?

2. I prefer a default installation of C:\Program Files\HgShell instead of C:\Program Files\ezIntegra\HgShell. It easier to find, should I need to muck around inside the  install location folders.

More to come after I actually use it. :-) And thanks for sharing this software. I anticipate it will be very useful. Are you willing to share the source? An hg repo would be even better!

-Kevin

_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial