Sponsored Content
Top Forums Programming How do you detect keystrokes in canonical mode? Post 302573674 by Ultrix on Tuesday 15th of November 2011 08:33:09 AM
Old 11-15-2011
How do you detect keystrokes in canonical mode?

I'm writing a command shell, and I want to be able to detect when the user presses an arrow key (otherwise it just prints [[A, [[B, etc.). I know it's relatively easy (although somewhat more time-consuming) to detect keystrokes in noncanonical mode, but I've noticed that the bash shell detects arrow keys in canonical mode. Originally I thought that there was some process signal that the shell receives when an escaped character is entered, but I've tested all the process signals in signal.h (defined in bits/signum.h) and none of them get sent when I press the arrow keys. How can you detect arrow keys in canonical mode?
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

recording keystrokes in vi

What is the syntax for recording command in vi. If I want to repeat a command over and over. My file is 12/01/05,,adsmte,9,0,0 12/02/05,,adsmte,12,0,0 12/03/05,,adsmte,10,0,0 12/04/05,,adsmte,11,0,0 12/05/05,,adsmte,10,0,0 12/06/05,,adsmte,10,0,0 12/01/05,,tsmpc1,57,1,2... (5 Replies)
Discussion started by: reggiej
5 Replies

2. Shell Programming and Scripting

tool to emulate keystrokes out to a ps/2 device?

hey all, i am trying to connect my mac to my sony DVD changer so that i can control one aspect of it with any kind of shell script or program. the DVD player allows you to plug in a PS/2 keyboard to navigate it's on screen menu. what i want to do is use my mac to navigate my own menus, then... (0 Replies)
Discussion started by: drzoomn
0 Replies

3. Programming

Help with stdin and non-canonical mode

I am writing a more command for my class, and have it most of the way done, but with my current implimentation when I pipe stdin to my code it doesnt use my non-canonical/non echo settings I set for the terminal window. Do I need to specify a different terminal in order for this to work ? It works... (1 Reply)
Discussion started by: petricore
1 Replies

4. UNIX for Dummies Questions & Answers

Looking for an X11 Utility - Send Keystrokes to Multiple Clients

A long time ago, I frequently used a small X11 utility that allows you to manage multiple systems at the same time. It worked by opening a small window that had a button you used to "Add" X Clients to it. These would be xterms on different systems for example. You would then type inside that... (5 Replies)
Discussion started by: Alon.Albert
5 Replies

5. Shell Programming and Scripting

Queueing keystrokes

Hello, I have a ksh which can be run interactively with read etc waiting for input and so forth. Do you have an idea how can I invoke the ksh and supply a sequence of keystrokes that will feed the executable flow so that it will automatically run as if someone actually walked through one prompt... (7 Replies)
Discussion started by: gio001
7 Replies

6. OS X (Apple)

Any mac software for recording keystrokes

I'm trying to find a good keylogger that doesn't come with any viruses. It happens to me several times that my browser crashes when I am in article writing or some other thing, very annoying. Thus, I need a keylogger to keep all my keystroke recorded. I 'v tried some, like the Aobo Mac Keylogger,... (1 Reply)
Discussion started by: Bluerosen
1 Replies

7. UNIX for Advanced & Expert Users

Sending keystrokes to another process

The third-party ERP system used by our company has no idle-out facility and we sometimes have issues because users simply walk away from their computers and leave sessions logged in for hours or even go home without logging out. (We are in a factory environment so it is hard to raise the care... (7 Replies)
Discussion started by: Wayne Ivory
7 Replies

8. Solaris

DNS service is in maintenance mode. How to bring it back to online mode?

:confused: when i tried to look the status of DNS-client, it is in maintenance mode..... Please tell me how to bring it back to online mode...PLEASE TELL ME STEP BY STEP.... PLEASE... :wall: (2 Replies)
Discussion started by: vamshigvk475
2 Replies

9. Shell Programming and Scripting

Record and re-use keystrokes

We have a FORTRAN program that creates a report for our client. The client makes a number of selections as to what will appear on the report. However, the client has to repeat this everytime the report is run. I am trying to find a way to record what they've selected (their keystrokes) in UNIX and... (22 Replies)
Discussion started by: KathyB148
22 Replies
MPROMPT(1)							      mprompt								MPROMPT(1)

NAME
mprompt - simple prompt-based control for mpd SYNOPSIS
mpompt [-s] [-m key=key] [-t n] [-f] [tty] [-T] [host] DESCRIPTION
mprompt is a mpd client with a prompt-based interface. It is designed to be usable on a headless machine. At the prompt, enter the name of a playlist, or part of the name of an album, artist, or song. Matching items will start playing. You can also paste in urls to stream. (If the perl String::Approx module is available, it will be used to handle typos, etc in the names you enter.) Use the left and right arrow keys to adjust volume, and the up and down arrow keys to move through the playlist. The Tab and Enter keys can both be used to pause and unpause playback. (Enter toggles pause only if nothing has been entered at the prompt.) Example of how to run mprompt in /etc/inittab: 1:2345:respawn:/usr/bin/mprompt /dev/tty1 OPTIONS
-s This option allows shell commands to be typed in to mprompt, to be run by whatever user it is running as. (Typically root if it is run from /etc/inittab). To enter a shell command, type a "!", followed by the command to run, followed by Enter. -m key=key This option allows remapping keys. Any key can be remapped to any other key, which is useful to support keyboard with unusual key layouts, or missing keys. For alphanumeric and punctuation keys, individual symbols can be remapped. For example, "-m a=b" will turn each entered "a" into "b". For other keys, use the following names: <return> <tab> <space> <up> <down> <left> <right> <backspace> For example, -m "n=<down>" will map the "n" key to the down arrow, causing that key to change to the next track; -m "<space>=<return>" will make the space bar act as a pause. It's possible to swap keys too. For example, -m "<down>=<up>" -m "<up>=<down>" A single key can also be bound to a series of keystrokes. For example, -m "1=Mule Variations<return>" will cause the "1" key to play the "Mule Variations" album, a nice choice. -t n Adds a timeout, a specified number of seconds after which the entry on the command line will be cleared. Useful for headless systems, to avoid cat-on-keyboard confusing your later commands. -T Enables terse output mode. This mode tries to avoid displaying excessive or complex things, with the intent that mprompt's output can be piped into a speech synthesiser, such as espeak. SEE ALSO
vipl(1) mptoggle(1) mpd(1) AUTHOR
Copyright 2009 Joey Hess <joey@kitenet.net> Licensed under the GNU GPL version 2 or higher. http://kitenet.net/~joey/code/mpdtoys perl v5.10.1 2010-03-06 MPROMPT(1)
All times are GMT -4. The time now is 10:59 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy