Jump to content


Photo

Portable Keyboard Layout


  • Please log in to reply
181 replies to this topic

#1 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 09 February 2008 - 09:07 AM

I create a Portable Keyboard Layout program. You can use your favorite keyboard layout everywhere. It supports Colemak, DDvorak, ENTI-key, Hebrew (with CapsState, Unicode chars) etc.

See at <!-- m -->http://pkl.sourceforge.net/<!-- m -->

Posted Image

#2 BoBo¨

BoBo¨
  • Guests

Posted 09 February 2008 - 10:53 AM

:D Thanks for sharing, might come in handy :D
Go on scripting !!! 8)

#3 rubo77

rubo77
  • Members
  • 10 posts

Posted 09 February 2008 - 11:43 AM

hey, nice work!

i just changed the ini file:
\Portable Keyboard Layout\pkl.ini
layout = enti-key++

can you corrected the foldername?
this is wrong: 'entykey'
it should be 'enti-key++'

and how did you generate the help-images?

and can you please include the latest enti-key++-Version 21?

i included the layout in a rar file:

#4 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 09 February 2008 - 12:27 PM

can you corrected the foldername?
this is wrong: 'entykey'
it should be 'enti-key++'

No. Folder must contain only a-z (lowercase) and '_' for variations, like colemak_french.
The correct name is ENTI-key++, I know.
I change it to entikey (sorry my mispelling).
You can set the correct name of the layout in the layout.ini:
[informations]
layoutname           = ENTI-Code++ ver.15

and how did you generate the help-images?

source.zip/utilities/ini2html.pl (perl script), Firefox(!), and a screen capture program.

and can you please include the latest enti-key++-Version 21?

If you send it to me (in email!).
You can use my klc2ini.pl perl script in the source.zip to generate your new layout's ini file. It's recomenend to use WinMerge (or a similar program) to show to you the old and the new ini file, to show what things must you change. Sorry, I can not speak english.
To special characters, you can use 2 mode, for example to Ctrl+Space:
*{space} ; Send {space} == space 
={space} ; Send {Blind}{space} == ctrl+space now.

i included the layout in a rar file...

If you would like create a portable version ENTI-key++, use
compactMode = 1
in the pkl.ini (see the Portable Colemak)

#5 rubo77

rubo77
  • Members
  • 10 posts

Posted 10 February 2008 - 08:16 AM

ok i will try

To special characters, you can use 2 mode, for example to Ctrl+Space:

*{space} ; Send {space} == space 
={space} ; Send {Blind}{space} == ctrl+space now.

what does this mean?

#6 rubo77

rubo77
  • Members
  • 10 posts

Posted 10 February 2008 - 09:38 AM

ok i sent you a PM here and in sourceforge ;)

what about a small README file?

you can use most of the text, you posted here already :D

#7 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 10 February 2008 - 09:15 PM


To special characters, you can use 2 mode, for example to Ctrl+Space:

*{space} ; Send {space} == space 
={space} ; Send {Blind}{space} == ctrl+space now.

what does this mean?

With MS KLC you can not set special characters, like Del, Enter, BackSpace, etc. Please, see the difference between the old (my) ini file and your new!

#8 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 10 February 2008 - 09:46 PM

what about a small README file?

The idea is very good my english is bad. :oops:
I create some ,,sample layouts'', like enti-key++ (special characters), hebrew (CapsState), extend_* layouts (extend the built-in layout).
I hope, this helps.

#9 asr

asr
  • Members
  • 3 posts

Posted 29 April 2008 - 04:20 PM

We (fr-dvorak-bépo) are working on the fr-dvorak-bépo layout of the package.

<!-- m -->http://www.clavier-d...rg/wiki/Accueil<!-- m -->

All our work is available at <!-- m -->http://dvorak.ryckeboer.org<!-- m --> :
- pkl sources
- bépo layout
- modified ini files and certainly ahk in a small way.

We would be pleased to reverse our patches to the project.

#10 A2

A2
  • Members
  • 1 posts

Posted 15 May 2008 - 06:45 PM

Hi!

I'm working on fr-dvorak-bépo layout too. This won't help non-french because the layout is optimized for french with Dvorak method but here it is:
* a modified version of what asr made can be found in this zip file (it is a bit documented if you can read french);
* the modified sources files to obtain this can be found in our svn in configGenerator (klc2ini.pl, ini2html.pl essentially);
* the .klc.

The only bug is when using a deadkey and the same key, it doesn't work. Máté will look at this. Thanks again for these ahk and perl scripts.

#11 asr

asr
  • Members
  • 3 posts

Posted 21 May 2008 - 02:35 PM

The [D] key is mapped to "i", and is dead with Alt+Ctrl combination.
While we try to use the sequence [Dead D] [D], it doesn't work.

After a few hours of investigation, I have a few more elements :
On PKL.AHK, lines 480-500 :
DeadKey(DK)
{
…/…
ToolTip % DK
Input, nk, L1, {F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}
ToolTip % nk
KeyHistory

…/…

1* The second tooltip is not displayed if [D] is pressed, only displayed if another key is pressed.
2* In the key history, all the [D] pressed are present.
3* if I change the value of many variables, there is no effect on the [D] keypress ignored.

So, it seems that a handle intercepts the deadkey, while pressed, on the "Input" function.

PS: It is the same problem for each deadkey: impossible to build a layout with a deadkey combination of the deadkey itself.

#12 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 21 May 2008 - 05:12 PM

PS: It is the same problem for each deadkey: impossible to build a layout with a deadkey combination of the deadkey itself.

Thanks, now I know the problem.
Pressing a Deadkey, the process control (sorry my english) goes to the Deadkey(DK) function, and wait for a key. If you press a key, it calculates the result and return. But AutoHotkey don't start a new thread, if the previous didn't return.

1) Force AutoHotkey to start a new thread, even the old is not returned
2) Return immediately and process after return

Please, wait patiently, I will correct this.
(But If you know, how can I the (1), please, tell me!)

#13 asr

asr
  • Members
  • 3 posts

Posted 22 May 2008 - 06:20 AM

1) Force AutoHotkey to start a new thread, even the old is not returned
2) Return immediately and process after return


Hum. Why not flag a global var, return, and recall the Deadkey() on keypressed ?
In fact, exactly like an automation, with a "state" variable, and a whole bunch of "case statements" function of the "state" var ?

#14 MateFARKAS

MateFARKAS
  • Members
  • 75 posts

Posted 23 May 2008 - 04:40 PM

PS: It is the same problem for each deadkey: impossible to build a layout with a deadkey combination of the deadkey itself.

Fixed. You can checkout the SVN: <!-- m -->http://pkl.svn.sourc...net/viewvc/pkl/<!-- m -->

#15 Jag02

Jag02
  • Members
  • 44 posts

Posted 28 May 2008 - 08:43 AM

Could you make the program so that if I press Backspace it suspends the portable colemak layout and if I press capslock, this starts it again?