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

Re: [PATCH/RFC 4/5] mingw: reuse tty-version of git_terminal_prompt

From
Jeff King <peff@peff.net>
Date
Nov 30, 2012, 18:27 UTC
Message-ID
<20121130182716.GD7197@sigill.intra.peff.net>
In-Reply-To
<1352815447-8824-5-git-send-email-kusmabite@gmail.com>
On Tue, Nov 13, 2012 at 03:04:06PM +0100, Erik Faye-Lund wrote:
Show 11 quoted lines
> The getpass-implementation we use on Windows isn't at all ideal;
> it works in raw-mode (as opposed to cooked mode), and as a result
> does not deal correcly with deletion, arrow-keys etc.
> 
> Instead, use cooked mode to read a line at the time, allowing the
> C run-time to process the input properly.
> 
> Since we set files to be opened in binary-mode by default on
> Windows, introduce a FORCE_TEXT macro that expands to the "t"
> modifier that forces the terminal to be opened in text-mode so we
> do not have to deal with CRLF issues.

I think this is OK. I had originally envisioned just having a separate "#ifdef WIN32" and not really sharing code at all with /dev/tty because I was worried that the conditionals would end up making it hard to read. This is a little more complex than I would have liked, but I do not see how the code sharing could be simplified any more than what you have done, and it is nice to avoid repeating ourselves.

-Peff
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
Previous: Johannes SchindelinNext: Erik Faye-Lund
Message 22 of 27 in “win32: support echo for terminal-prompt”
  1. 0/5 win32: support echo for terminal-promptErik Faye-Lund, Nov 13, 2012
  2. 1/5 mingw: make fgetc raise SIGINT if apropriateErik Faye-Lund, Nov 13, 2012
  3. Johannes SchindelinNov 30, 2012
  4. Jeff KingNov 30, 2012
  5. Erik Faye-LundDec 1, 2012
  6. Jeff KingDec 1, 2012
  7. Erik Faye-LundDec 1, 2012
  8. Johannes SchindelinDec 4, 2012
  9. Erik Faye-LundDec 4, 2012
  10. Junio C HamanoDec 2, 2012
  11. Erik Faye-LundDec 3, 2012
  12. Junio C HamanoDec 4, 2012
  13. 2/5 compat/terminal: factor out echo-disablingErik Faye-Lund, Nov 13, 2012
  14. Johannes SchindelinNov 30, 2012
  15. Jeff KingNov 30, 2012
  16. Erik Faye-LundDec 1, 2012
  17. Johannes SchindelinDec 4, 2012
  18. 3/5 compat/terminal: separate input and output handlesErik Faye-Lund, Nov 13, 2012
  19. Jeff KingNov 30, 2012
  20. 4/5 mingw: reuse tty-version of git_terminal_promptErik Faye-Lund, Nov 13, 2012
  21. Johannes SchindelinNov 30, 2012
  22. Jeff KingNov 30, 2012
  23. 5/5 mingw: get rid of getpass implementationErik Faye-Lund, Nov 13, 2012
  24. Johannes SchindelinNov 30, 2012
  25. Jeff KingNov 30, 2012
  26. Erik Faye-LundNov 30, 2012
  27. Jeff KingNov 30, 2012

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.