threads / discuss / 16734

Interactive rebase encoding

Subject: Interactive rebase encoding

## tl;dr

5 messages between Dec 15, 2008 and Dec 15, 2008.

replies: 4people: 3as markdown or json

Constantine Plotnikov· Dec 15, 2008, 12:42 UTC · lore

The interactive rebase command builds a text file and passes it to editor specified as environment variable or as configuration parameter. However the man page for rebase operation says nothing about which encoding will be used for that file. Apparently i18n.logoutputencoding is used. I think that the man page for rebase operation should explicitly specify it.

Also it might make sense to use explicit encoding parameter for interactive rebase operation.

Constantine
Miklos Vajna· Dec 15, 2008, 15:13 UTC · re: Constantine Plotnikov · lore

Re: Interactive rebase encoding

On Mon, Dec 15, 2008 at 03:42:08PM +0300, Constantine Plotnikov <constantine.plotnikov@gmail.com> wrote:
Show 6 quoted lines
> The interactive rebase command builds a text file and passes it to
> editor specified as environment variable or as configuration
> parameter. However the man page for rebase operation says nothing
> about which encoding will be used for that file. Apparently
> i18n.logoutputencoding is used. I think that the man page for rebase
> operation should explicitly specify it.
Care to send a patch?
> Also it might make sense to use explicit encoding parameter for
> interactive rebase operation.

Do you have a use-case where having a different encoding for log output and rebase -i todo list makes sense?

Thanks.
Johannes Schindelin· Dec 15, 2008, 15:54 UTC · re: Constantine Plotnikov · lore

Re: Interactive rebase encoding

Hi,
On Mon, 15 Dec 2008, Constantine Plotnikov wrote:
Show 5 quoted lines
> The interactive rebase command builds a text file and passes it to 
> editor specified as environment variable or as configuration parameter. 
> However the man page for rebase operation says nothing about which 
> encoding will be used for that file. Apparently i18n.logoutputencoding 
> is used.

As rebase -i does nothing else than piping the output of git log into a file (at least this is the first step), I thought it would be obvious that it uses the output encoding preferred by the user.

Indeed, I cannot think of any scenario where it might make sense to have a different encoding in git rebase -i than in git log.

Ciao, Dscho

Constantine Plotnikov· Dec 15, 2008, 16:21 UTC · re: Johannes Schindelin · lore

Re: Interactive rebase encoding

On Mon, Dec 15, 2008 at 6:54 PM, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:

Show 13 quoted lines
> Hi,
>
> On Mon, 15 Dec 2008, Constantine Plotnikov wrote:
>
>> The interactive rebase command builds a text file and passes it to
>> editor specified as environment variable or as configuration parameter.
>> However the man page for rebase operation says nothing about which
>> encoding will be used for that file. Apparently i18n.logoutputencoding
>> is used.
>
> As rebase -i does nothing else than piping the output of git log into a
> file (at least this is the first step), I thought it would be obvious that
> it uses the output encoding preferred by the user.

Yes. That was my first hypothesis, but I had to check it through small experiment and source code examination. And if consider the bug described in the thread http://kerneltrap.org/mailarchive/git/2008/11/11/4063184, the hypothesis might have been incorrect.

>
> Indeed, I cannot think of any scenario where it might make sense to have a
> different encoding in git rebase -i than in git log.
>

For IDE, it might make sense to force UTF-8 encoding instead of using currently configured logoutputencoding. Currently the extra call to git config is needed to check expected encoding of the file before data could be shown to the user. Also user specified encoding might fail to display some characters in commit messages that was encoded using other encodings, forcing UTF-8 would have also fixed this problem as well.

BTW for IDEs an option that causes non-abbreviated commit hashes would have been useful as well.

Constantine
Johannes Schindelin· Dec 15, 2008, 16:56 UTC · re: Constantine Plotnikov · lore

Re: Interactive rebase encoding

Hi,
On Mon, 15 Dec 2008, Constantine Plotnikov wrote:
Show 8 quoted lines
> On Mon, Dec 15, 2008 at 6:54 PM, Johannes Schindelin
> <Johannes.Schindelin@gmx.de> wrote:
> >
> > Indeed, I cannot think of any scenario where it might make sense to 
> > have a different encoding in git rebase -i than in git log.
> 
> For IDE, it might make sense to force UTF-8 encoding instead of using 
> currently configured logoutputencoding.

I consider rebase -i to be porcelain, and as such not suitable to be used as a backend for an IDE. Help the git-sequencer effort if you want a plumbing.

Ciao, Dscho

← back to recent threads