[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#514212: console-setup: on UTF-8 console, caps lock is turned into a shift lock



Package: console-setup
Version: 1.29
Severity: normal
Tags: patch

Hello,

While upgrading from console-data's keymaps to console-setup, my caps
lock became a shift lock, and the caps lock led doesn't work any more.

This is due to these few lines:
 
# A hack to work around a bug in the kernel/loadkeys
if (! $acm) {
    $xkbsym_table{'Caps_Lock'} = 'Shift_Lock';
    $xkbsym_table{'ISO_Lock'} = 'Shift_Lock';
}

which happen to be always executed as my system is UTF-8, just like all
future installed Debian systems.  Why is this hack needed?  We should
rather fix the bug where it belongs instead of introducing others on all
future installed systems... :)

If the reason has been lost in history (the code dates back from at
least 2005) then we should probably apply the patch to fix the common
case, and let the real bug reappear and get fixed the proper way.

Samuel

-- System Information:
Debian Release: 5.0
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.28 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages console-setup depends on:
ii  console-terminus              4.26-2.1   Fixed-width fonts for fast reading
ii  debconf [debconf-2.0]         1.5.24     Debian configuration management sy
ii  xkb-data                      1.5-2      X Keyboard Extension (XKB) configu

Versions of packages console-setup recommends:
ii  kbd                           1.14.1-4   Linux console font and keytable ut

Versions of packages console-setup suggests:
ii  lsb-base                      3.2-20     Linux Standard Base 3.2 init scrip

-- debconf information:
* console-setup/variant: France
  console-setup/modelcode:
  console-setup/fontsize: 8
  console-setup/layoutcode: fr
  debian-installer/console-setup/title:
  console-setup/codesetcode: Lat15
  console-setup/dont_ask_layout:
* console-setup/altgr: Right Alt
* console-setup/ttys: /dev/tty[1-6]
* console-setup/codeset: # Latin1 and Latin5 - western Europe and Turkic languages
  console-setup/toggle: No toggling
* console-setup/fontface: VGA
* console-setup/fontsize-text: 8
* console-setup/compose: Right Logo key
  console-setup/switch: No temporary switch
* console-setup/charmap: UTF-8
  console-setup/optionscode: lv3:ralt_switch,compose:rwin
* console-setup/layout: France
  console-setup/variantcode:
* console-setup/model: Generic 105-key (Intl) PC
  console-setup/fontsize-fb: 8

-- 
Samuel
Be warned that typing \fBkillall \fIname\fP may not have the desired
effect on non-Linux systems, especially when done by a privileged user.
(From the killall manual page)
Index: Keyboard/ckbcomp
===================================================================
--- Keyboard/ckbcomp	(révision 57453)
+++ Keyboard/ckbcomp	(copie de travail)
@@ -2549,12 +2549,6 @@
     close ACM;
 }
 
-# A hack to work around a bug in the kernel/loadkeys
-if (! $acm) {
-    $xkbsym_table{'Caps_Lock'} = 'Shift_Lock';
-    $xkbsym_table{'ISO_Lock'} = 'Shift_Lock';
-}
-
 ########### PARSING ###############################################
 
 # Report a syntax error in $filename. $_[0] should describe what was

Reply to: