README
changeset 14 286b248e402a
child 17 b94514bf216a
equal deleted inserted replaced
13:aec966cdbaa2 14:286b248e402a
       
     1 Motivation
       
     2 -----------
       
     3 I wanted to run mplayer, and command things to it using a key bind. I could
       
     4 run "mplayer -slave", but I needed its standard input accessible from any other
       
     5 program. Then, I wrote this program to share stdin.
       
     6 
       
     7 
       
     8 What does it do
       
     9 -----------------
       
    10 It allows the standard input of a program to be accessible from other terminals
       
    11 through a unix socket, offering also a simple client for this socket.
       
    12 
       
    13 
       
    14 Exmaple of use
       
    15 -----------------
       
    16 You can try it with 'cat'. In a shell, start "stdinmix cat". Test how 'cat'
       
    17 works; write lines, and see its output.
       
    18 
       
    19 From another shell, start "stdinmix", and write there lines. See how they
       
    20 are treated as if they went to 'cat' input. In fact they went to 'cat' input.
       
    21 
       
    22 
       
    23 How does it work
       
    24 ------------------
       
    25 'stdinmix [app]' allow two ways of sending commands to its child application
       
    26 stdin:
       
    27 - using the terminal stdin (as if you run the application alone)
       
    28 - using a unix socket, by default at /tmp/socket-sm.UID, overwritable by
       
    29   the environment variable SM_SOCKET.
       
    30 
       
    31 If you don't specify any argument, it will connect to the mentioned unix socket,
       
    32 and forward the current stdin to that socket.
       
    33 
       
    34 
       
    35 How do I use it
       
    36 ------------------
       
    37 I wanted a program for transcribing voice in audio tracks. I had mplayer, and
       
    38 I only needed a way to send commands to it as "-slave". By now, on need,
       
    39 I use xbindkeys [1] to map F1 to "mplayer-remote -p" (pause) and
       
    40 F2 to "mplayer-remote -b" (back a few seconds). Then I can transcribe in
       
    41 my favourite editor (vim) pausing and moving back the audio track when needed.
       
    42 
       
    43 
       
    44 References
       
    45 ------------
       
    46 [1] xbindkeys: http://hocwp.free.fr/xbindkeys/xbindkeys.html