Permalink
Commits on Nov 21, 2007
  1. git-gui 0.9.0

    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Nov 21, 2007
Commits on Nov 8, 2007
  1. git-gui: Bind Meta-T for "Stage To Commit" menu action

    Aaron Digulla suggested we bind Ctrl-T or Cmd-T to "Stage To Commit"
    menu action so it can be easily accessed from the keyboard.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Nov 8, 2007
Commits on Nov 1, 2007
  1. git-gui: Allow users to set font weights to bold

    Previously we allowed users to tweak their font weight to be bold by
    setting it manually in their ~/.gitconfig prior to starting git-gui.
    This was broken in ae0754a when
    Simon set the font weight to normal by default, overridding whatever
    we found from the ~/.gitconfig file.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Nov 1, 2007
  2. git-gui: Update Japanese strings (part 2)

    Resolve an earlier suggestion from Christian.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    gitster committed with spearce Nov 1, 2007
  3. git-gui: Update Japanese strings

    This updates the Japanese translation file.
    
    Signed-off-by: しらいしななこ <nanako3@bluebottle.com>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    しらいしななこ committed with spearce Oct 31, 2007
  4. Updated russian translation of git-gui

    Fixed some spelling mistakes.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    raalkml committed with spearce Oct 31, 2007
  5. po2msg: actually output statistics

    The "--statistics" option was ignored so far; no longer.  Now we have
    a message similar to that of msgfmt.  (Untranslated, though ;-)
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    dscho committed with spearce Oct 30, 2007
  6. po2msg: ignore untranslated messages

    Do not generate translations when the translated message is empty.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    dscho committed with spearce Oct 30, 2007
  7. po2msg: ignore entries marked with "fuzzy"

    As Christian Stimming pointed out, entries which are "fuzzy" need to
    be checked by human translators, and cannot be used.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    dscho committed with spearce Oct 30, 2007
Commits on Oct 26, 2007
  1. git-gui: Protect against bad translation strings

    If a translation string uses a format character we don't have an
    argument for then it may throw an error when we attempt to format
    the translation.  In this case switch back to the default format
    that comes with the program (aka the English translation).
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 23, 2007
Commits on Oct 23, 2007
  1. Merge branch 'maint'

    * maint:
      git-gui: Make sure we get errors from git-update-index
    
    Conflicts:
    
    	lib/index.tcl
    spearce committed Oct 23, 2007
  2. git-gui: Make sure we get errors from git-update-index

    I'm seeing a lot of silent failures from git-update-index on
    Windows and this is leaving the index.lock file intact, which
    means users are later unable to perform additional operations.
    
    When the index is locked behind our back and we are unable to
    use it we may need to allow the user to delete the index lock
    and try again.  However our UI state is probably not currect
    as we have assumed that some changes were applied but none of
    them actually did.  A rescan is the easiest (in code anyway)
    solution to correct our UI to show what the index really has
    (or doesn't have).
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 23, 2007
  3. More updates and corrections to the russian translation of git-gui

    In particular many screw-ups after po regeneration were fixed.
    
    Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    raalkml committed with spearce Oct 22, 2007
Commits on Oct 22, 2007
  1. Updated Russian translation.

    The most important changes are:
    - Git version cannot be determined... (lost in 5736432)
    - git-gui: fatal error
    
    Some changes need the second opinion (search for TOVERIFY), some changes are just copies (search for "carbon copy").
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    Kirill committed with spearce Oct 20, 2007
Commits on Oct 21, 2007
  1. git-gui: Update German translation

    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    cstim committed with spearce Oct 20, 2007
  2. git-gui: Add more terms to glossary.

    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    cstim committed with spearce Oct 20, 2007
  3. Merge branch 'maint'

    * maint:
      git-gui: Don't display CR within console windows
      git-gui: Handle progress bars from newer gits
      git-gui: Correctly report failures from git-write-tree
    
    Conflicts:
    
    	lib/commit.tcl
    	lib/console.tcl
    spearce committed Oct 21, 2007
  4. git-gui: Don't display CR within console windows

    Git progress bars from tools like git-push and git-fetch use CR
    to skip back to the start of the current line and redraw it with
    an updated progress.  We were doing this in our Tk widget but had
    failed to skip the CR, which Tk doesn't draw well.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 21, 2007
  5. git-gui: Handle progress bars from newer gits

    Post Git 1.5.3 a new style progress bar has been introduced that
    uses only one line rather than two.  The formatting of the completed
    and total section is also slightly different so we must adjust our
    regexp to match.  Unfortunately both styles are in active use by
    different versions of Git so we need to look for both.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 20, 2007
Commits on Oct 20, 2007
  1. git-gui: Correctly report failures from git-write-tree

    If git-write-tree fails (such as if the index file is currently
    locked and it wants to write to it) we were not getting the error
    message as $tree_id was always the empty string so we shortcut
    through the catch and never got the output from stderr.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 20, 2007
Commits on Oct 17, 2007
  1. git-gui: Paper bag fix the global config parsing

    git-config won't honor any options after --list.  We must supply
    the --global option in front of --list if we really want to load
    the global configuration options.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 16, 2007
Commits on Oct 14, 2007
  1. git-gui: Honor a config.mak in git-gui's top level

    I keep forgetting to include TCLTK_PATH when I build git-gui on some
    systems.  Placing that rule (among others) into a config.mak makes it
    easier to compile the application the same way every time.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 13, 2007
Commits on Oct 13, 2007
  1. git-gui: Collapse $env(HOME) to ~/ in recent repositories on Windows

    Apparently native Tcl/Tk on Windows is using \ as the return value
    from [file separator] but [file normalize] on that same system is
    using / rather than \ to represent a directory separator.  I really
    think that is nuts, but its what is happening.
    
    So we can actually just hardcode our separator to / as all systems
    we support (Windows, Mac OS X, UNIX) use /.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  2. git-gui: Support cloning Cygwin based work-dirs

    If the user tries to clone a Git repository that is actually a
    workdir of another repository (by way of contrib git-new-workdir)
    then the contents of .git is a series of Windows .lnk files which
    Tcl can't read if this is a native Tcl process.  To read the real
    objects directory we need to resolve the link to that location.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  3. git-gui: Use proper Windows shortcuts instead of bat files

    On Windows its better to use a shortcut (.lnk file) over a batch
    script (.bat) as we can specify the icon file for the .lnk and
    thus have these git specific objects appear on the desktop with
    that git specific icon file.
    
    Unfortunately the authors of Tcl did not bless us with the APIs
    needed to create shortcuts from within Tcl.  But Microsoft did
    give us Windows Scripting Host which allows us to execute some
    JavaScript that calls some sort of COM object that can operate
    on a .lnk file.
    
    We now build both Cygwin and non-Cygwin "desktop icons" as proper
    Windows .lnk files, using the "Start in" property of these files
    to indicate the working directory of the repository the user wants
    to launch.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  4. git-gui: Ensure copyright message is correctly read as UTF-8

    On Windows using the native Tcl/Tk the copyright header is
    being read from the script using the system encoding, which
    may not be utf-8.  This causes the multi-byte copyright symbol
    (which is actually encoded as utf-8) to read as two characters
    and not as a proper copyright symbol.  Explicitly asking Tcl
    to read this sequence of bytes as utf-8 corrects the issue.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  5. git-gui: Bind n/c/o accelerators in repository chooser

    On Windows we need to actually setup binds for the accelerator
    keys, otherwise the OS doesn't respond to them when the user
    presses the key combinations.  Apparently we automatically get
    these on Mac OS X when we configure the menu commands, but not
    on Windows.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  6. git-gui: Disable the text widget in the repository chooser

    Although we are using a text widget here we really do not
    want the end-user to be able to modify the text it displays.
    So we need to disable it.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  7. git-gui: Fix bind errors when switching repository chooser panels

    We need to remove any variable traces we may have installed
    when the panel is destroyed as the trace may attempt to use
    a widget that no longer exists on this panel.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
Commits on Oct 12, 2007
  1. git-gui: Offer repository management features in menu bar

    When we show the repository chooser as the primary toplevel (".") we
    now offer the major choices not just on the window as hyperlinks but
    they also now are shown in the Repository menu, including the recent
    repository list.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  2. git-gui: Change repository browser radio buttons to hyperlinks

    Making a user click twice to select which action they want to perform
    when starting git-gui is just wasting their time.  Clicking once on a
    radio button and then clicking again on the "Next >" button is quite
    unnecessary.
    
    Since the recent repository list is shown as a list of hyperlinks we
    now offer the 3 basic startup actions as hyperlinks.  Clicking on a
    link will immediately jump to the next UI panel, saving the user time
    as they don't need to click an additional button.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  3. git-gui: offer a list of recent repositories on startup

    If git-gui is started outside a work tree the repository chooser
    will offer a list of recently opened repositories.  Clicking on
    any list entry directly opens the repository.
    
    The list of recently opened repositories is stored in the config
    as the multi-valued option gui.recentrepo. If the list grows beyond
    10 entries it will be truncated by removing one of the older entries.
    
    Only repositories that are opened through the repository chooser
    will get added to the recent list.  Repositories opened from the
    shell will not yet be added to the recent list, as users are likely
    to have a way to easily return to the same directory via their shell.
    
    [sp: This is actually a combined work from both Steffen and myself.
         Most of the ideas are Steffen's, as is the basic outline of
         the code, but any outstanding bugs are entirely my fault.]
    
    Signed-off-by: Steffen Prohaska <prohaska@zib.de>
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    sprohaska committed with spearce Oct 8, 2007
  4. git-gui: Support LFs embedded in config file values

    Using the new --null option added to git-config in git 1.5.3 we
    can safely accept LFs that are embedded in configuration options.
    This does require a completely different configuration file parser
    then the pre 1.5.3 version as we are splitting on very different
    values.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  5. git-gui: Refactor git-config --list parsing

    The parsing for the output of `git config --list` is the same for
    both the global options and the current repository's options so we
    can really just use the same parser between them.
    
    I'm currently just refactoring the parser so we can use a different
    one depending on the version of git available to us at runtime.  My
    next change will add support for 1.5.3's --null option.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007
  6. git-gui: Move load_config procedure below git-version selection

    To better handle configuration options that contain LFs in their
    values we want to use the new -z option available in git-config
    version 1.5.3 and later.  To configure load_config based upon the
    git version we need to move thos below the git-version computation.
    
    No logic changes yet, just a minor reordering of the code.
    
    Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
    spearce committed Oct 12, 2007