Clone wiki

thg-ja / developers / TODO

TortoiseHG TODO list

These aren't listed in any particular order. Find one that interests you and dig in. Feel free to add to this list, or provide more detail to existing tasks.

Before you begin hacking, be sure to read the project overview and our guidelines for contributing.

Must fix on 0.8 branch


Version 0.9

Feature freeze is October 15.

Must Do List:

  • push/pull features in changelog (steve)
  • #496 - merge workflow improvements
  • #498 - bookmark extension refresh
  • #551 - optional defaults for svn users (steve)
  • solve thgtaskbar shutdown issues
  • promote changelog tool in default (rename?)
  • generate cmenu translations for installer (yuki?)
  • update translations after feature freeze (peso/yuki)
  • update docs, hookup online help with URLs (steve)

Help URLs for commit and changelog

As Time Allows (in no particular order)...

Renames, support them really well

  • #561 - merge diffs with renames
  • #147 - expose addremove functionality
  • #12 - show rename diffs, allow change selection

Visual Diff


  • #507,#338 - subrepo support
  • #289 - additional keyboard shortcuts
  • #270 - improve hunk selection
  • #214 - file list filtering
  • #12 - ctrl-s to shelve highlighted hunks


  • #315 - turn URLs in commit messages into links
  • #547 - improve closed branch support
  • #482,#108 - merge synch functionality
  • explicit branch coloring
  • Windows DnD


  • support for [auth] section


  • support for schemes extension
  • #323 - Windows DnD
  • #56 - add un-strip feature
  • #103 - remember passwords (in memory only) for duration of dialog.


  • take advantage of new ui.progress() API
  • #326 - logfile support


  • #390 - purge support



We are translating TortoiseHg using the same methodology as Mercurial.

For contributing to the translations, please visit our page on Launchpad

We would also like for important wiki pages, like the manuals, to be translated. The Wiki has open access, so feel free to add translated pages as you wish (thanks to those who have already done this).


  • Main web page: We would love to have a nice "storefront" static web page with links to downloads and to the wiki.
  • Screenshots: send us some nice ones.


If you are a technical writer, or you simply spot a gap in our documentation, please contribute. Our documentation is in reStructuredText, which makes it very easy to contribute anything from typo fixes to entirely new chapters.

Common issues for many dialogs


  • bundle gtkspell, if possible


  • issue #15 -- icons for color blind users
  • issue #40 -- selection of iconsets
  • add hg status column to detail view
  • add folder tooltip to show repository revision status (parents, heads, tip, ...)

context menus

  • Rendering issues on Vista and newer
  • issue #69 -- context menu is sometimes missing a separator


  • improve the zsh completion script in contrib\_hgtk
  • someone should donate a bash completion script


hgcmd dialog

The hgcmd dialog is the popup used by several other tools to perform Mercurial commands (commit, update, and merge are examples).

  • turn into an embeddable widget
  • Add a 'close on completion' toggle button which remembers it's last configuration for each mercurial command.
  • Place the message buffer into an expander that defaults to hidden
  • If any warnings or errors occur, open the expander and disable close-on-completion
  • logging to a file

status dialog


  • issue #2 -- have alternative layout as a directory browser
  • issue #12 -- show rename diffs, allow change selection

commit dialog


  • issue #11 -- ctrl-s to shelve selected hunks
  • Sign-off messages, commit message templates
  • tab completion for filenames?

shelve dialog


  • issue #13 -- support named shelves (attic like feature)
  • issue #90 -- better interface for unshelving changes

synchronize dialog


  • Add support for (q)importing patches (including -p and other arguments)
  • Pull into a bundle file, browse bundle with changelog viewer, then pull from bundle

email dialog


settings dialog


  • Add help button or URLs on each page
  • Glog author-color config: tortoisehg.authorcolor.regexp = color

rename dialog


  • Stop search buttons

changelog dialog


  • click-to-highlight DAG graph lines ala hgk, show changesets on line. If possible, contribute this back to bzr.
  • mimic hgk's ability to abbreviate long lines when too many lines of development are open at one time (compare hg view --limit 0 of hg-stable against how we do it). If possible, contribute this back to graphlog and/or bzr.
  • create an extension that provides a 'hg view' command for backwards compatibility.
  • show info about working dir as a pseudo revision node, with files and diffs in bottom panes.

clone dialog


  • issue #63 -- 'incremental' clone option (needs hg support)

recovery tool

  • issue #56 -- add un-strip feature

update dialog


merge dialog



  • Look into using matchers to speed up working directory scans
  • works wrong for a symlink to a repo

General (long-term)

  • A dialog for the pbranch extension
  • A dialog for the transplant extension and (q)import, drag-drop changesets
  • Weld the synch, changelog, and datamine tools together into a unified application.
  • Write/Borrow a PyGtk directory browser, integrate TortoiseHg into it. The result will be a standalone portable Hg front-end application not dependent on any single windowing environment. Perhaps this example is a good place to start.
  • Support for subrepos
  • Mark Williamson has a python hg-shell script. It would be nice to weld it into hgcmd using something like