git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH Cogito] Make use of external editor work like CVS

From
Petr Baudis <pasky@ucw.cz>
Date
May 8, 2005, 20:03 UTC
Message-ID
<20050508200334.GG9495@pasky.ji.cz>
In-Reply-To
<1115578658.8949.9.camel@pegasus>

Dear diary, on Sun, May 08, 2005 at 08:57:38PM CEST, I got a letter where Marcel Holtmann <marcel@holtmann.org> told me that...

> Hi Petr,
Hello,
> look at the attached patch. We should use "fmt -s" to keep newlines that
> are inside the commit message and there is one unneeded empty CG: line.
thanks, fixed and pushed out.
> I also put back in the "mess", because if there is no commit message
> provided via -m it gives us an initial empty line to start in. This is
> the same that CVS does and it makes the life inside vi a lot more
> easier.

Well, I use 'O' to start editing. ;-) (Actually, I use the -m arguments extensively; the way it is now is how I always dreamt of it since I started using SCMs. Possibly in conjuction with -e to add some fancy stuff.)

Your way might be cunning, fast, or even clever, but it was certainly not clear, therefore not maintainable well. I tried to implement it in a simpler and more clear way. Does it behave as you want now?

Show 10 quoted lines
> > > If you want the extra newline(s) then it is a good idea to add something
> > > that strips heading and trailing empty lines from the final commit
> > > message, because otherwise it will be ugly if you don't enter extra text
> > > for the merge.
> > 
> > Isn't that what I initially suggested? :-)
> 
> But this hasn't been done so far. And I don't know any shell tool for
> this job, beside some crazy awk or sed stuff. However stripspace.c from
> git-tools can do this job.
#/bin/sh
leading=1
emptylines=0
while read line; do
        if ! [ "$line" ]; then
		[ "$leading" ] && continue
		emptylines=$(($emptylines + 1))
        else
		leading=0
                while [ $emptylines -gt 0 ]; do
                        echo ""
                        emptylines=$(($emptylines - 1))
                done
                echo $line
        fi
done
or something? (Based on someone else's script since I was too lazy. ;-)
-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
Previous: Marcel HoltmannNext: Marcel Holtmann
Message 13 of 20 in “Make use of external editor work like CVS”
  1. Make use of external editor work like CVSMarcel Holtmann, May 8, 2005
  2. SeanMay 8, 2005
  3. Petr BaudisMay 8, 2005
  4. Marcel HoltmannMay 8, 2005
  5. Petr BaudisMay 8, 2005
  6. Marcel HoltmannMay 8, 2005
  7. Petr BaudisMay 8, 2005
  8. Marcel HoltmannMay 8, 2005
  9. Petr BaudisMay 8, 2005
  10. Marcel HoltmannMay 8, 2005
  11. Petr BaudisMay 8, 2005
  12. Marcel HoltmannMay 8, 2005
  13. Petr BaudisMay 8, 2005
  14. Marcel HoltmannMay 8, 2005
  15. Petr BaudisMay 8, 2005
  16. Marcel HoltmannMay 8, 2005
  17. Edgar ToernigMay 9, 2005
  18. Petr BaudisMay 9, 2005
  19. SeanMay 8, 2005
  20. Marcel HoltmannMay 8, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.