diff options
author | Kazutaka YOKOTA <yokota@FreeBSD.org> | 1998-01-07 08:43:28 +0000 |
---|---|---|
committer | Kazutaka YOKOTA <yokota@FreeBSD.org> | 1998-01-07 08:43:28 +0000 |
commit | 1f150ac44b8826b32d69e0a25246ea7f55411a26 (patch) | |
tree | 77743f829ff232bbb35f5a3c55eeac3d39e8a6ab /usr.sbin/kbdcontrol/lex.l | |
parent | a3bd3dac2575b690c4fa408b5156b15d8593a916 (diff) | |
download | src-1f150ac44b8826b32d69e0a25246ea7f55411a26.tar.gz src-1f150ac44b8826b32d69e0a25246ea7f55411a26.zip |
Added accent (dead) key support to syscons and kbdcontrol.
With a keymap with accent key definitions loaded to syscons, you press
an accent key followed by a regular letter key to produce an accented
letter. Press an accent key followed by the space bar to get the
accent letter itself.
Code is based on the ideas and work by jmrueda@diatel.upm.es and
totii@est.is.
PR: i386/4016
- Added keywords for accent (dead) keys: dgra, dacu, dcir, dtil...
- Recognize accent map definitions.
<accent_map_definition> ::= <accent_key_name> <accent_char> <accent_map>
<accent_key_name> ::= dgra | dacu | dcir | dtil | dmac | dbre | ddot |
duml | dsla | drin | dced | dapo | ddac | dogo |
dcar
<accent_map> ::= <map_entry>
| <map_entry> <accent_map>
<map_entry> ::= ( <regular_letter_char> <accented_char> )
- Use ioctls PIO_DEADKEYMAP and GIO_DEADKEYMAP to set and get the accent
key map table in syscons.
- Made the output for the -L option more intelligible and look like
initializers in kbdtables.h.
- Reorganized print functions in order to print the accent key map.
Notes
Notes:
svn path=/head/; revision=32316
Diffstat (limited to 'usr.sbin/kbdcontrol/lex.l')
-rw-r--r-- | usr.sbin/kbdcontrol/lex.l | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/usr.sbin/kbdcontrol/lex.l b/usr.sbin/kbdcontrol/lex.l index 8b1d3b8f25bf..3680d0f1699b 100644 --- a/usr.sbin/kbdcontrol/lex.l +++ b/usr.sbin/kbdcontrol/lex.l @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id$ + * $Id: lex.l,v 1.5 1997/02/22 16:05:58 peter Exp $ */ %{ @@ -95,6 +95,23 @@ NS|ns { number = 31; return TNUM; } SP|sp { number = 32; return TNUM; } DEL|del { number = 127; return TNUM; } +dgra|DGRA { number = 0; return TACC; } +dacu|DACU { number = 1; return TACC; } +dcir|DCIR { number = 2; return TACC; } +dtil|DTIL { number = 3; return TACC; } +dmac|DMAC { number = 4; return TACC; } +dbre|DBRE { number = 5; return TACC; } +ddot|DDOT { number = 6; return TACC; } +duml|DUML { number = 7; return TACC; } +ddia|DDIA { number = 7; return TACC; } +dsla|DSLA { number = 8; return TACC; } +drin|DRIN { number = 9; return TACC; } +dced|DCED { number = 10; return TACC; } +dapo|DAPO { number = 11; return TACC; } +ddac|DDAC { number = 12; return TACC; } +dogo|DOGO { number = 13; return TACC; } +dcar|DCAR { number = 14; return TACC; } + fkey{D}({D}*) { sscanf(yytext+4, "%d", &number); return TFUNC; @@ -115,3 +132,4 @@ scr{D}({D}*) { return TFLAG; } [ \t\n] { /* ignore */ } +. { return *yytext; } |