all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* utf text console - control-g does not work any longer
@ 2005-05-11 20:53 Peter Petersen
  2005-05-12 18:38 ` Alan Mackenzie
  0 siblings, 1 reply; 9+ messages in thread
From: Peter Petersen @ 2005-05-11 20:53 UTC (permalink / raw)


Hello,

I decided to use Gnus in a Linux text console.

The reasons are:
- all the fonts for Emacs and/or XEmacs when under X are either too big
or too small; there are just not enough intermediate font sizes, and my
eyes are very sensitive
- when running Emacs and/or XEmacs in "gnome-terminal" the fonts look
way better and have many more intermediate steps (so font size is no
longer an issue!), but my eyes start to hurt or I get a headache (thanks
to anti-aliasing, I fear - though switching it off is no solution,
because fonts look ugly then in Emacs AND in web browsers!)



Now enough with that, let's get to my problem with Gnus (or Emacs, this
is no Gnus specific issue!) in a Linux text console:

I managed to get good utf support (for reading post in utf-8 AND for
typing in all the characters (Umlaute, tilde etc.) I want) by using
filterm and its dynafont filter.

I launch Gnus like this:

LC_CTYPE=de_DE.utf8 exec filterm - dynafont emacs -nw --eval
"(set-keyboard-coding-system 'latin-9)" -f gnus-unplugged "$@"

(I need the "exec", by the way, when using a bash script - otherwise, it
doesn't work...)


Everything appears to be all right (reading utf-8 messages, typing in
Umlaute, euro sign etc.), but there is this one

PROBLEM:

control-g doesn't work any longer! (or in other words: keyboard-quit)


This is very bad because I often need to abort a command.
In many cases (like aborting a M-x... sequence) ESC-ESC-ESC is a good
workaround.

BUT:
When loading articles for a very large group (thousands of articles,
which will take a lot of time anyway) I can no longer abort that
command, because control-g is not being recognized any more (and
ESC-ESC-ESC doesn't work for interrupting a running command anyway).

I tried to remap control-g to e.g. F6 (function key 6) or other keys I
tried, but nothing works - it looks like control-g is something very
special and that the code of Emacs doesn't allow for changing that!


This means, running commands can no longer be interrupted/aborted when I
use a utf-8 enabled Emacs/Gnus in a Linux text console.


Does anyone have experience with this problem - or even better have a
solution?



many thanks
Peter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
  2005-05-11 20:53 utf text console - control-g does not work any longer Peter Petersen
@ 2005-05-12 18:38 ` Alan Mackenzie
  2005-05-14  1:07   ` Peter Petersen
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Mackenzie @ 2005-05-12 18:38 UTC (permalink / raw)


Peter Petersen <ppetersen@despammed.com> wrote on Wed, 11 May 2005
22:53:44 +0200:
> Hello,

> I decided to use Gnus in a Linux text console.

Excellent choice!  How about the rest of Emacs?  (I use ISO-8859-1 on a
Linux console.)

> The reasons are:
> - all the fonts for Emacs and/or XEmacs when under X are either too big
> or too small; there are just not enough intermediate font sizes, and my
> eyes are very sensitive
> - when running Emacs and/or XEmacs in "gnome-terminal" the fonts look
> way better and have many more intermediate steps (so font size is no
> longer an issue!), but my eyes start to hurt or I get a headache (thanks
> to anti-aliasing, I fear - though switching it off is no solution,
> because fonts look ugly then in Emacs AND in web browsers!)

Anti-aliasing - that's that thing where all the characters are made to
look blurred, isn't it?  YUCK!  It's always amazed me that people with
GUIs have such trouble with fonts when a simple 8x16 pixel grid on a text
console gives such good results.

> Now enough with that, let's get to my problem with Gnus (or Emacs, this
> is no Gnus specific issue!) in a Linux text console:

> I managed to get good utf support (for reading post in utf-8 AND for
> typing in all the characters (Umlaute, tilde etc.) I want) by using
> filterm and its dynafont filter.

> I launch Gnus like this:

> LC_CTYPE=de_DE.utf8 exec filterm - dynafont emacs -nw --eval
> "(set-keyboard-coding-system 'latin-9)" -f gnus-unplugged "$@"

I don't have LC_CTYPE, but when I execute the (set-keybo... thingy, I
have no trouble with C-g.  But then, I don't use filterm (whatever it
is).

> (I need the "exec", by the way, when using a bash script - otherwise, it
> doesn't work...)


> Everything appears to be all right (reading utf-8 messages, typing in
> Umlaute, euro sign etc.), but there is this one

> PROBLEM:

> control-g doesn't work any longer! (or in other words: keyboard-quit)

When you type C-g, what gets through to Emacs?  (Do C-h l
`view-lossage').  Does _anything_ get through to Emacs?  Does C-g work if
you leave `filterm' out?  

> This is very bad because I often need to abort a command.
> In many cases (like aborting a M-x... sequence) ESC-ESC-ESC is a good
> workaround.

C-g is absolutely necessary.  You don't need any excuses for needing it.

[ .... ]

> I tried to remap control-g to e.g. F6 (function key 6) or other keys I
> tried, but nothing works - it looks like control-g is something very
> special and that the code of Emacs doesn't allow for changing that!

Where did you do the remapping?  In your keyboard driver (e.g.
/etc/default.keytab) or somewhere within Emacs.

> This means, running commands can no longer be interrupted/aborted when I
> use a utf-8 enabled Emacs/Gnus in a Linux text console.

> Does anyone have experience with this problem - or even better have a
> solution?

What does filterm do with C-g?

> many thanks
> Peter

-- 
Alan Mackenzie (Munich, Germany)
Email: aacm@muuc.dee; to decode, wherever there is a repeated letter
(like "aa"), remove half of them (leaving, say, "a").

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
  2005-05-12 18:38 ` Alan Mackenzie
@ 2005-05-14  1:07   ` Peter Petersen
  2005-05-14  7:36     ` Eli Zaretskii
                       ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Peter Petersen @ 2005-05-14  1:07 UTC (permalink / raw)


* Alan Mackenzie <acm@muc.de> schrieb:

Hi, Alan!

> Anti-aliasing - that's that thing where all the characters are made to
> look blurred, isn't it?  YUCK!  It's always amazed me that people with
> GUIs have such trouble with fonts when a simple 8x16 pixel grid on a text
> console gives such good results.

Yes, the quality of console fonts is unbeatable (in my opinion).

As to anti-aliasing... yes, there is a strong risk of suffering from
blurred vision. On the other hand, anti-aliasing can look very good
under windows, and moreover, without anti-aliasing fonts often look very
ugly in Linux web browsers etc.

Anyway, I have now played (rather: struggled) for days (or even weeks!)
with font settings and with colour themes for XEmacs without getting a
convincing result, one that pleases my eyes and doesn't hurt them. :-(


>> I launch Gnus like this:
>
>> LC_CTYPE=de_DE.utf8 exec filterm - dynafont emacs -nw --eval
>> "(set-keyboard-coding-system 'latin-9)" -f gnus-unplugged "$@"
>
> I don't have LC_CTYPE, but when I execute the (set-keybo... thingy, I
> have no trouble with C-g.  But then, I don't use filterm (whatever it
> is).

Yes, since you are not using "filterm" (and dynafont), you don't get
that trouble with C-g.

>From the man page of "filterm":

***
FILTERM(1)                             Linux User's Manual
FILTERM(1)

NAME
       filterm - filter terminal input and/or output

SYNOPSIS
       filterm INPUT OUTPUT [COMMAND [ARGS]]

DESCRIPTION
       Execute the specified COMMAND (default is the shell), filtering
       terminal input and/or output.

       It can help e.g. when our terminal is unable to display non-ASCII
       characters or to enter them from the keyboard. It also makes
       writing various terminal filters easier.

       INPUT and OUTPUT are names of konwert's filters - they are passed
       as the first argument to the konwert(1) program.  filterm -
       OUTPUT filters only output, and filterm INPUT - only input.

       The command - executes the shell as a login shell.

       It differs from konwert INPUT | COMMAND | konwert OUTPUT in that
       the command is executed on a pseudo-terminal, so full-screen
       programs work correctly.

       The filters have to output the characters as soon as they receive
       all necessary input, without buffering.  trs(1) scripts are OK,
       but sed(1) or awk(1) or tr(1) scripts are not.  In C you may use
       read(), getchar(), fread(), and write(), but putchar() and
       fwrite() only together with fflush(stdout).  In C++: cin.get(),
       cout.put(), and cout <<.  In perl: sys- read, getc, read, and
       syswrite, but print only with $| = 1.

       The input filter will have set the environment variable
       FILTERM=in, and the output one - FILTERM=out.  This way some
       filters can slightly alter their behaviour when working for
       filterm.  
***


>> control-g doesn't work any longer! (or in other words: keyboard-quit)
>
> When you type C-g, what gets through to Emacs?  (Do C-h l
> `view-lossage').  Does _anything_ get through to Emacs?  Does C-g work if
> you leave `filterm' out?  

"view-lossage" doesn't see anything regarding C-g, C-g doesn't seem to
get through to Emacs.

But C-g DOES work and has always worked for me WITHOUT filterm.

But filterm is quite important to me, because it puts the console in utf
mode and also takes care to provide an adequate font etc.

Without filterm I would have to use a command like: "unicode_start" and
also set an utf capable font via the "consolechars" command. But
whatever font I set, it never works. filterm seems to do more than just
select a suitable font, it also appears to modify fonts temporarily
(though I am just guessing here).


>> This is very bad because I often need to abort a command.
>> In many cases (like aborting a M-x... sequence) ESC-ESC-ESC is a good
>> workaround.
>
> C-g is absolutely necessary.  You don't need any excuses for needing it.

Sure, ESC-ESC-ESC doesn't work for currently _running_ commands.


>> I tried to remap control-g to e.g. F6 (function key 6) or other keys I
>> tried, but nothing works - it looks like control-g is something very
>> special and that the code of Emacs doesn't allow for changing that!
>
> Where did you do the remapping?  In your keyboard driver (e.g.
> /etc/default.keytab) or somewhere within Emacs.

Within Emacs, via global-set-key. This works perfectly for other
commands, just not for "keyboard-quit" (provided that I use filterm).


>> This means, running commands can no longer be interrupted/aborted when I
>> use a utf-8 enabled Emacs/Gnus in a Linux text console.
>
>> Does anyone have experience with this problem - or even better have a
>> solution?
>
> What does filterm do with C-g?

Well, I am no expert here, don't have a clue.

By the way, another problem may be relevant:

If I omit that LC_CTYPE=de_DE.utf8 (see above), I am no longer able to
type Umlaute (äöü), but even worse: as soon as I type, for instance, an
"ä" or "ö" Emacs is blocked (locked up? I don't know), but since C-g
doesn't work, there is no way in hell I could unblock Emacs! It looks
like my typing an "ö" is being interpreted as a _command_! - This is
with filterm running, of course.
I have to kill Emacs from another virtual console.


Is there nobody here who also uses "filterm"?

Or alternatively:
Is there nobody here who could give me some detailled hints as to
putting my virtual console in utf mode manually?


thanks
Peter(sen)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
  2005-05-14  1:07   ` Peter Petersen
@ 2005-05-14  7:36     ` Eli Zaretskii
  2005-05-14  7:46     ` Eli Zaretskii
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Eli Zaretskii @ 2005-05-14  7:36 UTC (permalink / raw)


> From: Peter Petersen <ppetersen@despammed.com>
> Date: Sat, 14 May 2005 03:07:22 +0200
> 
> >> This means, running commands can no longer be interrupted/aborted when I
> >> use a utf-8 enabled Emacs/Gnus in a Linux text console.
> >
> >> Does anyone have experience with this problem - or even better have a
> >> solution?
> >
> > What does filterm do with C-g?
> 
> Well, I am no expert here, don't have a clue.

Emacs arranges for C-g to generate a signal SIGINT.  That is, it sets
up C-g to have the effect that is by default produced by C-c, the
keyboard interrupt character.

So to know how to get C-g to work with filterm, you will need to
understand (1) what filterm does to propagate signals to the program
whose I/O it is filtering, and (2) how to cause C-g generate an
interrupt for the foreground part of the filtering pipe.

You could start by looking at what C-c does when you run Emacs thru
filterm: does it, by any chance, produce the same effect as C-g in the
unfiltered Emacs?

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
  2005-05-14  1:07   ` Peter Petersen
  2005-05-14  7:36     ` Eli Zaretskii
@ 2005-05-14  7:46     ` Eli Zaretskii
       [not found]     ` <mailman.5210.1116056670.2819.help-gnu-emacs@gnu.org>
       [not found]     ` <mailman.5211.1116058502.2819.help-gnu-emacs@gnu.org>
  3 siblings, 0 replies; 9+ messages in thread
From: Eli Zaretskii @ 2005-05-14  7:46 UTC (permalink / raw)


> From: Peter Petersen <ppetersen@despammed.com>
> Date: Sat, 14 May 2005 03:07:22 +0200
> 
> >> I launch Gnus like this:
> >
> >> LC_CTYPE=de_DE.utf8 exec filterm - dynafont emacs -nw --eval
> >> "(set-keyboard-coding-system 'latin-9)" -f gnus-unplugged "$@"

Can you explain why you need filterm at all?  If it's because your
terminal cannot display certain characters, you could fix that with an
appropriate setting of terminal encoding (try "C-x RET t").  E.g., if your
terminal can display latin-9 characters, the "C-x RET t latin-9 RET"
should do what I think you want.

If this somehow doesn't fix the problem, please describe the details.
Like, for example, what filtering do you need and what filterm does
for you.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
       [not found]     ` <mailman.5210.1116056670.2819.help-gnu-emacs@gnu.org>
@ 2005-05-14 19:18       ` Peter Petersen
  0 siblings, 0 replies; 9+ messages in thread
From: Peter Petersen @ 2005-05-14 19:18 UTC (permalink / raw)


* "Eli Zaretskii" <eliz@gnu.org> schrieb:

>> >> This means, running commands can no longer be interrupted/aborted when I
>> >> use a utf-8 enabled Emacs/Gnus in a Linux text console.
>> >
>> >> Does anyone have experience with this problem - or even better have a
>> >> solution?
>> >
>> > What does filterm do with C-g?
<...>
>
> You could start by looking at what C-c does when you run Emacs thru
> filterm: does it, by any chance, produce the same effect as C-g in the
> unfiltered Emacs?

No, unfortunately, C-c does NOT produce the same effect as C-g, when I
am using filterm. But in contrast to C-g it is being recognized
(view-lossage tells me that, while view-lossage doesn't seem to know
anything about C-g).


Regards
Peter(sen)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
       [not found]     ` <mailman.5211.1116058502.2819.help-gnu-emacs@gnu.org>
@ 2005-05-14 19:27       ` Peter Petersen
  2005-05-14 21:16         ` Eli Zaretskii
       [not found]         ` <mailman.5288.1116106246.2819.help-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 9+ messages in thread
From: Peter Petersen @ 2005-05-14 19:27 UTC (permalink / raw)


* "Eli Zaretskii" <eliz@gnu.org> schrieb:

>> >> I launch Gnus like this:
>> >
>> >> LC_CTYPE=de_DE.utf8 exec filterm - dynafont emacs -nw --eval
>> >> "(set-keyboard-coding-system 'latin-9)" -f gnus-unplugged "$@"
>
> Can you explain why you need filterm at all?  If it's because your
> terminal cannot display certain characters, you could fix that with an
> appropriate setting of terminal encoding (try "C-x RET t").  E.g., if your
> terminal can display latin-9 characters, the "C-x RET t latin-9 RET"
> should do what I think you want.


Well, I need filterm to have an unicode enabled virtual text
console. Without filterm I am still able to read AND type special
national characters (like German or Scandinavian äöü). Without filterm
there is NO problem with iso-8859-1 or iso-8859-15 for me!

BUT (without using filterm and its filter "dynafont"):
If someone posts in utf-8 I am not able to see all the special
characters AND I am not able to reply to such a post without having my
reply look totally fucked up (as to the special characters that I may
have in the quotation of the utf-8 poster).

All this happens with Emacs in a virtual text console. It is NO issue
when using Emacs in the X Window environment (either by using the
graphical Emacs OR by running "emacs -nw" in an utf enabled terminal
program, like uxterm or gnome-terminal)!


Could you (or other people) please take part in a quick test:

Here is a message-id of an utf poster (it's from a thread about ugly
fonts in gnu.emacs.gnus):

<16949.42398.937556.799591@parhasard.net>


Here is another example (this time posted by ME):

<8764z0hq89.fsf_-_@pp.ppetersen-usenet76543.de>



Regarding the first message-id (see above):
Do you really see all the special characters, especially: are the
apostrophes correct? What about the text in the signature of that
poster?

And please, do the test from a virtual text console, not from within
X. Thanks.


Of course, this all looks like a minor problem, since most posts are NOT
in utf-8, but anyway: I would be dissatisfied if a console version of
Emacs/Gnus was unable to display utf-8 all right (in contrast to windows
newsreaders like Forte Agent that always display these encodings
perfectly).


Regards
Peter(sen)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
  2005-05-14 19:27       ` Peter Petersen
@ 2005-05-14 21:16         ` Eli Zaretskii
       [not found]         ` <mailman.5288.1116106246.2819.help-gnu-emacs@gnu.org>
  1 sibling, 0 replies; 9+ messages in thread
From: Eli Zaretskii @ 2005-05-14 21:16 UTC (permalink / raw)


> From: Peter Petersen <ppetersen@despammed.com>
> Date: Sat, 14 May 2005 21:27:44 +0200
> 
> BUT (without using filterm and its filter "dynafont"):

What does this "dynafont" filter do?

> If someone posts in utf-8 I am not able to see all the special
> characters AND I am not able to reply to such a post without having my
> reply look totally fucked up (as to the special characters that I may
> have in the quotation of the utf-8 poster).

I think you can fix this if you set up a display table that maps each
special character to a string of one or more ASCII characters (or any
other characters your console can display).  You can find 2 examples
of doing that in the Emacs distribution:
lisp/international/latin1-disp.el and lisp/term/internal.el.  If you
need to understand more about display tables, read the section
"Display Tables" in the ELisp manual.

> All this happens with Emacs in a virtual text console.

What is a ``virtual console''? how is it different from a standard
text terminal?

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: utf text console - control-g does not work any longer
       [not found]         ` <mailman.5288.1116106246.2819.help-gnu-emacs@gnu.org>
@ 2005-05-21  1:22           ` Peter Petersen
  0 siblings, 0 replies; 9+ messages in thread
From: Peter Petersen @ 2005-05-21  1:22 UTC (permalink / raw)


* "Eli Zaretskii" <eliz@gnu.org> schrieb:

Hello, and sorry for the delayed reply/feed-back. :)


> What does this "dynafont" filter do?

>From the Debian package description:

***
Package: dynafont (1.0-22)

Module for konwert package which loads UTF-8 fonts dynamically

   This is a tool which allows displaying texts containing thousands of
   different characters.
   It switches console to UTF8 mode and loads required fonts
   dynamically. It is recommended
   to use this tool with filterm(1) tool, i.e. by executing 'filterm -
   dynafont' command or
   'filterm - 512bold+dynafont' if you are not using framebuffer.

   The tool works with UTF8-compatible applications, i.e. lynx(1). There
   are problems with
   8-bit only applications like mc(1).
***


>> If someone posts in utf-8 I am not able to see all the special
>> characters AND I am not able to reply to such a post without having my
>> reply look totally fucked up (as to the special characters that I may
>> have in the quotation of the utf-8 poster).
>
> I think you can fix this if you set up a display table that maps each
> special character to a string of one or more ASCII characters (or any
> other characters your console can display).  You can find 2 examples
> of doing that in the Emacs distribution:
> lisp/international/latin1-disp.el and lisp/term/internal.el.  If you
> need to understand more about display tables, read the section
> "Display Tables" in the ELisp manual.

Looks too complicated and time consuming to me. ;-) Anyway, see below
why I don't need this any longer...


> What is a ``virtual console''? how is it different from a standard
> text terminal?

It isn't. :)

>From the man page:

***
CONSOLE(4)                             Linux User's Manual
CONSOLE(4)

NAME
       console - console terminal and virtual consoles

DESCRIPTION
       A  Linux  system  has up to 63 virtual consoles (character
       devices with major number 4 and
       minor number 1 to 63), usually called /dev/ttyn with 1 <= n <=
       63.  The current console is
       also  addressed by /dev/console or /dev/tty0, the character
       device with major number 4 and
       minor number 0.  The device files /dev/* are usually created
       using the script MAKEDEV,  or
       using mknod(1), usually with mode 0622 and owner root.tty.
***


And now to my feed-back regarding my original problem:

I was able to solve that annoyance (C-g no longer working when using
filterm/konwert/dynafont) simply by _downgrading_ the two packages
"konwert" and "konwert-filters" from version 1.8.9 to 1.8.3 (for those
interested).


Thanks for your answers.
Peter(sen)

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2005-05-21  1:22 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-05-11 20:53 utf text console - control-g does not work any longer Peter Petersen
2005-05-12 18:38 ` Alan Mackenzie
2005-05-14  1:07   ` Peter Petersen
2005-05-14  7:36     ` Eli Zaretskii
2005-05-14  7:46     ` Eli Zaretskii
     [not found]     ` <mailman.5210.1116056670.2819.help-gnu-emacs@gnu.org>
2005-05-14 19:18       ` Peter Petersen
     [not found]     ` <mailman.5211.1116058502.2819.help-gnu-emacs@gnu.org>
2005-05-14 19:27       ` Peter Petersen
2005-05-14 21:16         ` Eli Zaretskii
     [not found]         ` <mailman.5288.1116106246.2819.help-gnu-emacs@gnu.org>
2005-05-21  1:22           ` Peter Petersen

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.