Best terminal environment for Cygwin / Windows?

Today I start Cygwin using rxvt using the following start line:

 rxvt -bg black -sl 8192 -fg white -sr -g 150x56 -fn "Fixedsys" -e /usr/bin/bash --login -i 

This gives me a resizable native Windows window that is much better than the standard default DOS window cygwin.bat .

However, there are several problems in the current configuration:

  • I cannot enter non-ASCII characters into the terminal window (for example, the æ, ø, å and Æ, Ø, Å that I use are semi frequent. In fact, the terminal will not even accept them when I insert them into the window. If I will insert a string like "bølle" (Norwegian for "bulley"), all I get is "blle".
  • I cannot display the UTF-8 character, they only display as?, Even if they are supported by the font (i.e. when rendering the same characters in ISO-8859-1 they only show a penalty.).

I am using English Windows Vista with a language setting and a keyboard layout set to Norwegian (ISO-8859-1 character set?), But I had the same problem in Windows 2000 and XP.

Does anyone know how to fix this (i.e. the best way to configure rxvt)?

Besides the problems mentioned above, I am very pleased with rxvt , so if I find a way to solve them, I would like to continue using it. However, if the problems are not (easily) resolved, are there any other good terminal solutions for Cygwin?

Update

The solution provided by Andy and Matthias (editing the .inputrc file) solved the input problem, but output output is still a problem. The conclusion is fine when rendering in ISO-8859-1, but when using UTF-8 do I get only? for non-ASCII characters. This behavior is consistent between rxvt , urxvt (under Cygwin XFree X Server), mintty and PuttyCyg.

Is there a similar configuration file in which output encoding can be set (i.e. the equivalent of setting the output locale on a Linux system)?

+50
windows cygwin rxvt
Mar 31 '09 at 16:28
source share
20 answers

Add the following two lines to the readline ~ / .inputrc configuration file

 set convert-meta off set output-meta on 

Should work in both rxvt and mintty. More details here:

http://www.gnu.org/software/bash/manual/bashref.html#Readline-Init-File-Syntax

+9
Apr 01 '09 at 11:07
source share

minTTY is also very good. You can find it in the cygwin setup. Support recalibration, insertion and transparency.

+33
Mar 31 '09 at 16:41
source share

I am currently using PuttyCyg ( http://code.google.com/p/puttycyg/ ). I'm not sure that it will contain the fixes you need, but it has several other interesting features, for example, configurations stored in typical putty profiles that you can call, for example: putty -load mycygwin1. Such a profile can configure things like:

  • logging sessions to a file,
  • character sequences for remote, home, and other keys,
  • window colors and fonts.

Edit: You can enter the characters you mentioned. Support for UTF-8 is also supported (it must be enabled in the configuration).

+12
Mar 31 '09 at 16:34
source share

I am using Console . The console allows you to customize the font, background, etc., and also has a tabbed interface (great if you use several terminal windows at once).

To use non-ASCII characters, I placed the following in my .inputrc file in my home directory:

 set meta-flag on set convert-meta off set output-meta on set completion-ignore-case on 
+8
Apr 01 '09 at 11:32
source share

Being four years old at the time of writing, the meat of the question is gone: by default, the Cygwin terminal now accepts an insert and displays non-Ascii characters without formality, at least for me. The default Cygwin terminal is now monetary, and Cygwin now works with UTF-8 by default. (For example, / etc / profile.d / lang.sh now sets the default UTF-8 character set encoding.) There is currently a 64-bit version of Cygwin, but for http://www.cygwin.com/ml/cygwin /2013-09/msg00029.html , without the 64-bit rxvt port.

Even the title question is less important than it used to be, since mintty is not resolved like the old windows of the Windows console subsystem. However, I will connect a project that I support: https://code.google.com/p/jessies/wiki/Terminator , which was written for UTF-8, possibly from day one, although its main selling point, imo, is a search function.

+6
Sep 23 '13 at 3:33
source share

You may need to set up a code page.

Check current:

 $ set | grep CYGWIN CYGWIN='codepage:oem nodosfilewarning' 

If you do not have a code page, add ~ / .bashrc to the file:

 CYGWIN='codepage:oem nodosfilewarning' 

The contents of my Cygwin file (Cygwin.bat) launched by the shortcut is as follows:

 start C:\cygwin\bin\rxvt.exe -sb -sl 3000 -fg gray -bg black -fn "Lucida Console-14" -e /bin/bash --login -i 

Note that for the CYGWIN environment variable, you can have several elements, each of which is separated by a space. Other elements that can be used: {tty binmode title}.

More information can be found here: http://www.cygwin.com/cygwin-ug-net/setup-env.html

Related Note: You can also use mrxvt for Cygwin. This requires an X server, and a good solid / easy solution is to use Xming. I compiled mrxvt and installed it - it is not very difficult to do, and it works fine.

I use rxvt as the initial window, then run mrxvt as a separate process from rxvt using the alias command, and then close rxvt. This makes mrxvt its own parent process and does not have cmd sessions connected.

I made an alias to do this:

 alias mrx='export DISPLAY="127.0.0.1:0.0"; $(/usr/local/bin/mrxvt &); echo -e "\033c"' 

For convenience, I created a batch file to run Xming and rxvt:

 @echo off start C:\cygwin\bin\rxvt.exe -sb -sl 3000 -fg gray -bg black -fn "Lucida Console-14" -e /bin/bash --login -i start C:\Xming\Xming.exe :0 -clipboard -multiwindow -trayicon exit 

This batch file is launched using the Windows shortcut. This worked well for me.

+3
May 28 '10 at 8:48 a.m.
source share

I used Console , which works very well with Cygwin (as well as PowerShell and the plain old cmd.exe).

+2
Apr 01 '09 at 11:16
source share

When I developed on Windows, I found Poderosa to be a good choice for Cygwin.

+2
Apr 01 '09 at 11:21
source share

The standard Cygwin / X with xterm is good enough for me. Install the Cygwin X.org package, then run the script C:\cygwin\bin\startxwin.bat (assuming the default installation path). It will start X and then xterm.

I updated my .Xdefaults with these options for better usability:

 *VT100*scrollbar.width: 14 *VT100*scrollbar.background: gray60 *VT100*scrollbar.foreground: rgb:a/5/5 *VT100*scrollbar.borderWidth: 0 *VT100*scrollbar.displayList:\ foreground gray90;\ lines 1,-1,-1,-1,-1,1;\ foreground gray60;\ lines -1,1,1,1,1,-1 *VT100*rightScrollBar: true *VT100*scrollBar: true *VT100*scrollLines: 1000 xterm*toolBar: false 
+1
Apr 01 '09 at 13:17
source share

If you use ls with a specific arg, it shows the file names OK. I suggest you add the alias ls to / etc / profile:

alias ls='ls -F --color=auto --show-control-chars'

Works for me in msys on WinXP.

+1
Jan 21 '10 at 7:12
source share

I would set your country in windows (Control Panel → Regional Settings → Last Tab (Control) → Language for unicode-incompatible languages ​​→ Your Choice (Norwegian)). After rebooting, run Start-> Cyqwin-> rxvt-native. For Russian, it works (without editing .bashrc or anything else).

It even (as I believe) converts soft output to utf-8, because the default encoding is C.UTF-8. To check it, enter "echo $ LANG".

+1
Nov 08 '10 at
source share

On the topic of alternative terminal emulators for cygwin - check Console2 ; It has all the features you need.

+1
Oct 04 '11 at 10:12
source share

rxvt is unicode-capable, so you cannot get it to work correctly if you are logged in using UTF-8 for encoding. You can use rxvt for iso-8859-1 / 15, but most machines are now UTF-8.

The unicode replacement for rxvt in Cygwin is urxvt, the package name for Cygwin is rxvt-unicode-X. Urxvt also has other nice features, such as many downloadable plugins, including one that gives you several tabs for each window, as well as a client-server architecture that forces you to use much less resources if you have many windows ( urxvtc / urxvtd ).

You may also need to make sure your readline variables indicate that your shell should go through 8-bit characters, i.e. add this to your $HOME/.bashrc or $HOME/.profile :

 set convert-meta off
 set output-meta on
 set input-meta on

You will need to install the correct resources in $HOME/.Xdefaults : in particular, you will need a font that has the characters you need. The name of the resource group for urxvt is URxvt . Pay attention to capitalization, it is important!

 URxvt.font: xft: Lucida Console: size = 8: style = normal: weight = 50: antialias = true: hinting = true: minspace = true
 URxvt.boldFont: xft: Lucida Console: size = 8: style = bold: weight = 100: antialias = true: hinting = true: minspace = true

I also recommend installing:

 URxvt * termName: xterm

This resource decides the value of the $TERM environment variable. If it is not installed correctly, the term termcap file cannot be found, as a result of which programs of the less type will issue warnings in the style of: WARNING: terminal is not fully functional . Unfortunately, by default, the nameName rxvt-unicode unknown in many Linux distributions, so if you often use ssh for remote computers, you will run into a problem. The solution is to either set termName to something more general (for example, xterm ), or download the termcap file for rxvt-unicode for all the servers you log in to.

+1
Jun 28 '13 at 13:12
source share

Since the name is somehow misleading, and the search results have brought me here many times, I will simply respond to reading the name.

I like to use Babun on Windows as a Cygwin environment, it is almost perfect for me.

+1
Apr 01 '16 at 12:55 on
source share

In a similar note to emg-2, Lifehacker has an article on MinTTY , not sure if it contains the fixes you need.

0
Mar 31 '09 at 16:40
source share

If you are only content with running Cygwin applications, then rxvt should work fine. Rxvt must have UTF-8 support. Have you tried to find a solution to solve the problem?

If you also need to run native Windows applications, you're out of luck if you don't run bash inside the Windows console. There are two problems that I don’t think (or even can be) solved:

  • Ctrl-C is not working properly. If you run your own Windows application from within rxvt (or xterm), pressing Ctrl-C will return a prompt, but it does not interrupt the program, often leaving it in the background.
  • Terminal output buffering does not work. The output from native Windows applications is not displayed because they are printed, but rather, when some internal buffer is filled.

These two problems are the same for all terminal emulators I tried (rxvt, xterm, Emacs and some others).

0
Mar 31 '09 at 16:46
source share

Besides complete volatility, what functions does rxvt do for you, that the Windows console window does not? And did you look at the difference in memory usage - rxvt is pigs. I have been using rxvt for several weeks and it switches back to the windows console window without regrets.

0
Mar 31 '09 at 16:51
source share

yes, mintty seems more convenient, easier and faster, but there is one function that it does not have, and the default console (Windows) has, that is, a search function: from the default console, you can search for the string displayed on the console, fun?

So far I have not found any other console that has this feature ... I know, tell me, I really don't like the default console.

0
Dec 23 '12 at 5:20
source share

I used several terminals, such as putty, console, rxvt, mintty, teraterm. the best is teraterm. it is free, fully compatible with lang and tty, fully customizable with a macro, shortcut, and provides cygterm for Cygwin.

however, if you light the user, just use mintty, which is the default for this day or rxvt.

0
Dec 05 '13 at
source share

Try ConEmu, which is a tabbed console emulator that consists of several consoles and simple graphical applications in a single customizable GUI window.

https://conemu.imtqy.com/

0
May 12 '17 at 6:58 a.m.
source share



All Articles