📄 readme
字号:
What is pgMerlin----------------pgMerlin is the port of Merlin to PicoGUI. :)PORT NOTES: * -geometry parameter works relative to the canvas widgetTODO: * multiple stroke mode doesn't work yet, but you will enter by doing down-up line, and then you are lost!...BigThorbigthor@softhome.netMerlin Original README follows...---8<---What is Merlin--------------Merlin is a simple, small footprint single character recognitionengine originally implemented for a small Linux basedphone with limited resources. Back then it read input from amicrocontroller and fed output to the console. Then I transformed thisinto an X application which generates KeyEvents to the window infocus, suitable for small web pads with a touchscreen and an Xwindowing system. But the core part which is the method "recognize"could easily be used in other contexts or replaced if one prefersother methods of recognition. Merlin currently implements online sigle character recognition using atechnique called elastic matching. There are some images in the docdirectory of the characters. No claim that this elastic matchingmethod should be something better or worse than anything else. Itworks for me and I'm happy with that. A new user could need sometraining though. Character recognition is always a compromise betweenfactors such as recognition rate, recognition speed, usability (howeasy it is to write the characters) and CPU and memory usage. Thisimplementation found a balance of these factors for the specialhardware it was targeted for in the beginning and it worked okthere. On a fast computer with lots of memory and with a floatingpoint unit one could of course implement something much better. Howto write------------The window is divided into two areas. An alpha-area and a numericalarea. Large letters are written by overlapping the character over thetwo regions. You write all simple characters without lifting the pen.What also can be mentioned is the Extended mode which can be set bydrawing a straight line upwards. In extended mode you can then inputcharacters which contain more than one stroke. Several of the extendedcharacters is not working at the moment (in the X version of merlin)however 'cause I could not find the keycode to generate them (whichmeans that Merlin will recognize them but cannot transfer them to X,for instance, how do you write the characters (r) or (c) with akeyboard? If you know please tell me.) How does it work----------------After recognizing a character Merlin transforms the ascii characterinto a X keycode which is sent to the window in focus. Thistranslation can currently be done in two ways depending on whatkeyboard layout you are using. It supports English keyboards andSwedish. English is now the default layout. Remove -DUSE_ENGLISH inMakefile if you prefer a Swedish layout. You can probably figure itout by looking in swedish-kbd.map and edit it to fit your system ifneeded. There is probably a better way to do this than to hardcode itfor a specific keyboard layout but I didn't have the time to find out. Merlin uses "Redirection override" to stay away from the windowmanager. It makes the focus issue much nicer for instance if you'reusing sloppy focus (because it would not be good if Merlin got thefocus when you write on it since it would lead to that it would send the "keypress" to itself). Despite of this click-to-focus isrecommended. Problems with some programs---------------------------Like all SendEvent programs like gtkeyboard and such, there areproblems with programs that refuses to accept SendEvents. Xterm andXEmacs are two such programs. Xterm is fixed by setting the vt100Xresource allowSendEvents or by control-clicking on an xterm andchoosing allow send events (see 'man xterm'). XEmacs is fixed by adding (custom-set-variables '(x-allow-sendevents t)) to your .emacs. Usage------Merlin accepts the usual X option -geometry but that's it.If you don't specify an option Merlin will start in the upper leftcorner with a 200x100-window.Example: merlin -geometry 200x100-10-10 Starts Merlin ten pixels in and up from the lower right corner with a 200x100 - window.Environment variables----------------------If you set the environment variable MERLIN_HOME to a suitabledirectory merlin will look there for pattern samples instead of in the default directory.Questions, bug reports etc. goes to xmerlin@hellkvist.org. Since mytime is limited I would prefer patches instead of bug reports though.If you like this program you could (if you want to) let me know bysending me a postcard. Send it to:Stefan HellkvistTistelv. 6S-193 34 SIGTUNASWEDENBest wishesStefan
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -