Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

emdkplayer code snippets


  • Please log in to reply
21 replies to this topic
emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Here i wil post all my code snippets from my app emdkplayer
App not loaded:
Posted Image

AppLoaded:
Posted Image

Menu:
Posted Image

Try at own risk :twisted: :
https://ahknet.autoh.../EmdkPlayer.exe
Forget to mention, ONLY Tested in XP
In vista its not loading the icons and might freeze use ctrl+alt+del ti kill emdkplayer

emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
These are my functions to backup and restore registry keys
they are backed up to a variable so in case of logoff or shutdown they can be restored as fast as possible

RegBackup(Byref Var,RootKey,SubKey) {
	Loop,%RootKey%,%SubKey%,1,1							; Looping the registrykey
		{
		ifequal,a_LoopRegType,key,continue				; If it is a key, then continue	
		else RegRead, value								; else it is a value, retrieve it
		IfEqual,A_LoopRegType,,SetEnv,RegType,REG_SZ    ; If the regtype is nothing then we use REG_SZ
		else RegType:=A_LoopRegType						; Else We set the real regtype
		var:=var RegType "," A_LoopRegKey "," A_LoopRegSubKey "," A_LoopRegName "," value "`n" ; Setting all other variables
		}
	return,%var% ; Return the variable if needed in a expression
	}
RegRestore(RegString) {
	loop,Parse,RegString,`n ; Loop the Variable
		{
		IfNotEqual,A_LoopField,,Loop,Parse,A_LoopField,CSV	; If the loopfield isn't empty, loop it
			{
			IfEqual,A_Index,1,SetEnv,RegType,%A_LoopField%			; Set first item as the regtype
			else IfEqual,A_Index,2,SetEnv,RootKey,%A_LoopField%		; Set second item as Rootkey
			else IfEqual,A_Index,3,SetEnv,SubKey,%A_LoopField%		; Set next item as Subkey
			else IfEqual,A_Index,4,SetEnv,Name,%A_LoopField%		; Set next item as Name
			else IfEqual,A_Index,5,SetEnv,value,%A_LoopField%		; Set next itam as the value
			else SetEnv,value,% value "," A_LoopField				; Add all other items To the value
		} else continue												; If the loopfield is empty, continue
		RegWrite,%RegType%,%RootKey%,%SubKey%,%Name%,%value%		; Write it to the registry
		}
	}
To backup,do:
RegBackup(Somvariablename,"HKCU","SOFTWARE\Classes")
To Restore, do:
RegRestore(Somvariablename)

You can save to file like this:
Fileappend,%Somvariablename%,Regadd.txt

You can load the file like this:
IfExist, Regadd.txt 
	{
	FileRead, Somvariablename, *t Regadd.txt
	RegRestore(Somvariablename)
	}


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
This is how i do my slider.
I haven't seen one around like it so, hope you like it.

First create 2 Gui pictures 1 fore thebackground and 1 for the foreground
background needs a glabel
As you might have seen in the screenshots i have 3 textfields on the slider.
Gui,Add, Pic, x0 y0 w110 h16 BackgroundTrans gSlider vProgressB,SliderBack.png
	Gui,Add, Pic, x0 y0 w110 h16 BackgroundTrans gSlider vProgressF,SliderFront.png ; no image selected, as we are still at 0 progress

Now the slider
Slider:
   MouseGetPos,MX,MY                              ; Get the position of the mouse
   GuiControlGet, C, 1:Pos ,ProgressB                  ; Get the position of the progressbar
   GuiControl,Move, ProgressF,% "w" MX-CX             ; Show the stider at the correct width
   return   

edit here goes a working example:
IfNotExist %A_WorkingDir%\SliderBack.png				; Downloading the needed images
	{ 
   SplashTextOn, 300, 30, !, Downloading images. Please wait... 
   URLDownloadToFile https://ahknet.autohotkey.com/~emdktl/SliderBack.png, SliderBack.png
   URLDownloadToFile https://ahknet.autohotkey.com/~emdktl/SliderFront.png, SliderFront.png
   SplashTextOff 
	} 

Gui,Add, Pic, x00 y0 w110 h16 BackgroundTrans gSlider vProgressB,SliderBack.png	;Add the background of the slider
Gui,Add, Pic, x00 y0 w110 h16 BackgroundTrans  vProgressF,SliderFront.png			; Add the foreground of the slider
GuiControl,Move, ProgressF,w0														; We don't want to show the slider yet, so set the width to 0
; Gui,font, S9 bold, Arial 															; Set the font for the text, wich is not needed for the slider
; Gui,Add,Text, x00 y0 cRed   BackgroundTrans  vTime,00:00  
; Gui,Add,Text, x+8 y0 cBlue  BackgroundTrans  vTotalTime, 00:00 
; Gui,Add,Text, x+8 y0 cRed   BackgroundTrans  vTimeRest,00:00 
Gui,Show,w110 h16,slider									; Show the slider window
return

Slider:
	MouseGetPos,MX,MY										; Get the position of the mouse
	GuiControlGet, C, 1:Pos ,ProgressB						; Get the position of the progressbar
	GuiControl,Move, ProgressF,% "w" MX-CX 				; Show the stider at the correct width
	return   
 


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
I use this one to toggle variables from trueto false and visversa

toggle(ByRef var) { 								; Toggles a variable to true or false
	var := var=true ? false : true					; if var = true , store false else store true
	; IfEqual,var,%true%,SetEnv,var,%false%
	; else  var=%True%
	return,%var%									; Return the variavle in case irs needed
	}												; End Toggle


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Autorun.inf
no need for fileshortpath, just a matter of quotes
WriteAutorun:																;Writes Or overwrites the autorunfile to launch this script or exe
	SplitPath, A_ScriptFullPath ,,,,ExeName,ExeDrive
	t:=SubStr( A_ScriptFullPath , 3 ) 											;Remove driveletter and colon from the path of this script or exe
	if A_IsCompiled {															;If the script es compiled
		IniWrite,"".%t%"", %ExeDrive%\autorun.inf,AutoRun,open						;Write the path in double quotes eg "".\path.exe""
		IniWrite,%t%`,0  , %ExeDrive%\autorun.inf,AutoRun,icon						; Write path for the icon eg path.exe
		IniWrite,"".%t%"", %ExeDrive%\autorun.inf,AutoRun,shell\00\command			;And add the command for the right click menu
	} else {																	;If the script is not compiled
		u:=SubStr( A_AhkPath , 3 )													;Remove driveletter and colon from the path of autohotkey
		IniWrite,"".%u%" "%t%"", %ExeDrive%\autorun.inf,AutoRun,open				;Write the path in double quotes eg "".\ahk.exe" ".\script.ahk""
	   IniWrite,%u%`,0, %ExeDrive%\autorun.inf,AutoRun,icon				; Write the path to the icon, you better change it to a other icon
		IniWrite,"".%u%" "%t%"", %ExeDrive%\autorun.inf,AutoRun,shell\00\command	;Do the same for the command
		}
	IniWrite,Launch %ExeName%, %ExeDrive%\autorun.inf,AutoRun,action		;Write a name for the action for autoplay
	IniWrite,Launch %ExeName%, %ExeDrive%\autorun.inf,AutoRun,shell\00		;write a name for the command in the right click menu
      ; you might want to do the same for shellexecute="".\ahk.exe" ".\script.ahk""
	return ;End WriteAutorun 


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
My function to Add and Remove Placesbar

; normaly i read the vars from a inifile
Place1=d:\
Place2=d:\Program Files
Place3=d:\downloads
Place4=d:\documents
AddPlaces:																				; Placesbar in file open and save dialog
	IfEqual,Places0,%false%,return 																		; If there are no places, return
	RegBackup(RegBackupPlaces,"HKCU","Software\Microsoft\Windows\CurrentVersion\Policies\ComDlg32")		; Backing up Registry location of places
	RegWrite,REG_DWORD,HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\ComDlg32\PlacesBar,place0,17	; Write this computer as first item
	Loop,%Places0% 																						; Loop User defide places	
		IfNotEqual,Places%A_Index%,%false%,RegWrite,REG_SZ,HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\ComDlg32\PlacesBar,place%A_Index%,% Places%A_Index%	; And Ad these places to registry	
	return
DelPlaces:
 	RegDelete,HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\ComDlg32
	RegRestore(RegBackupPlaces)
	return


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Add and remove a Cursor theme

AddCursor:
	RegBackup(RegBackupCursors,"HKCU","Control Panel\Cursors") 						; Backing up old cursors
	SplitPath, CursorScheme ,,,,ThemeName											; Get the Cursortheme name from The themedirectory
	; Add Registryentries to the appropriate keys and vlues
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors\Schemes,%ThemeName%,%CursorScheme%\Arrow.cur,%CursorScheme%\Help.cur,%CursorScheme%\AppStarting.ani,%CursorScheme%\Wait.ani,%CursorScheme%\Crosshair.cur,%CursorScheme%\IBeam.cur,%CursorScheme%\NWPen.cur,%CursorScheme%\No.cur,%CursorScheme%\SizeNS.cur,%CursorScheme%\SizeWE.cur,%CursorScheme%\SizeNWSE.cur,%CursorScheme%\SizeNESW.cur,%CursorScheme%\SizeAll.cur,%CursorScheme%\UpArrow.cur,%CursorScheme%\Hand.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,,%ThemeName%
	RegWrite,REG_DWORD,HKCU,Control Panel\Cursors,Scheme Source,1
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,Arrow,%CursorScheme%\Arrow.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,Help,%CursorScheme%\Help.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,AppStarting,%CursorScheme%\AppStarting.ani
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,Wait,%CursorScheme%\Wait.ani
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,Crosshair,%CursorScheme%\Crosshair.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,IBeam,%CursorScheme%\IBeam.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,NWPen,%CursorScheme%\NWPen.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,No,%CursorScheme%\No.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,SizeNS,%CursorScheme%\SizeNS.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,SizeWE,%CursorScheme%\SizeWE.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,SizeNWSE,%CursorScheme%\SizeNWSE.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,SizeNESW,%CursorScheme%\SizeNESW.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,SizeAll,%CursorScheme%\SizeAll.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,UpArrow,%CursorScheme%\UpArrow.cur
	RegWrite,REG_SZ,HKCU,Control Panel\Cursors,Hand,%CursorScheme%\Hand.cur
	DllCall("SystemParametersInfo", UInt,(SPI_SETCURSORS:=0x57), UInt, 0, Str,0, UInt, 0) ;Tell the system the cursor has changed
	return
DelCursor:
	RegDelete,HKCU,Control Panel\Cursors													; Delete all cursors
	RegRestore(RegBackupCursors)															; Restore cursors if there where any
	DllCall("SystemParametersInfo", UInt,(SPI_SETCURSORS:=0x57), UInt, 0, Str,0, UInt, 0)	; Tell the system the cursor has changed
	Return


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
AddWallpapers: 

	IfEqual,WallPapers0,0,Return 											; If there are 0 wallpapers, no need to continue

	IfEqual,WallPapers0,,Return 											; If Nr of wallpapers is nonexistend, no need to continue

	if not Wallpaperstarted { 												; If wallpaper did not run previously, we want to backup the registry, and start the timer for the loop

		RegRead,WallPaperOld,HKCU,Control Panel\Desktop,wallpaper

		RegRead,WallPaperStyle,HKCU,Control Panel\Desktop,WallpaperStyle

		RegRead,WallPapertile,HKCU,Control Panel\Desktop,TileWallpaper

		IfGreater,Wallpapers0,1,SetTimer,AddWallpapers,-%WallPapersTime%000	;if there is more than 1 set timer for next wallpaper

		}

	Wallpaperstarted:="1"															; Confirm wallpaper ha run once

	RegWrite,REG_SZ,HKCU,Control Panel\Desktop,WallpaperStyle,2 					; We amways want the walpaper cover the entire desktop

	RegWrite,REG_SZ,HKCU,Control Panel\Desktop,TileWallpaper,0 						; And we do not want tiles

	if (WallPapers0="1") { 															; if there is only one Wallpaper

		DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str,WallPapers1 , UInt, 2) ; Changes the desktop wallpaper to the specified bitmap (.bmp) file.

		WallPaper:=WallPapers1															

		return

	} else Loop %WallPapers0% { 													; If there are more wallpapers 

		if (WallPaper=WallPapers%WallPapers0%) {										; if we are at the last wallpaper

			DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str,WallPapers1 , UInt, 2) ; Changes the desktop wallpaper to the First (.bmp) file.

			WallPaper=% WallPapers1															; Change the current Wallpaper to the first Walpaper variable

			return

			}

		if (WallPaper=WallPapers%A_Index%) { 											; If We have reached the current wallpaper

			; msgbox,  % WallPapers`%(A_Index+1)`%

			t:=A_Index+1

			DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str,WallPapers%t% , UInt, 2)

			; DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str,WallPapers`%(A_Index+1)`% , UInt, 2)

			WallPaper=% WallPapers%t%

			return

			}

		}

	return
DelWallpapers:

	SetTimer,AddWallpapers,Off														; Prevent the timer from adding a new wallpaper

	; RegWrite,REG_SZ,HKCU,Control Panel\Desktop,wallpaper,%WallPaperOld% ;Restore old Walpaper

	RegWrite,REG_SZ,HKCU,Control Panel\Desktop,WallpaperStyle,%WallPaperStyle%		; Restore old style

	RegWrite,REG_SZ,HKCU,Control Panel\Desktop,TileWallpaper,%WallPapertile%		; Restore old patern

	DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str,WallPaperOld, UInt, 2)	; Restore old Walpaper if anny and apply

	return


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
This is for macbook users like myself

$&::						;Fix macbook typing & instead of 1 when capslock is on (for azerty dutch belgium)
	if GetKeyState("CapsLock" ,"T")=0
		send &
	else send 1
	return
#c::Send,^c	; Copy
#v::Send,^v	; Paste
#y::Send,^y	; Redo
#z::Send,^z	; Undo
#x::Send,^x	; Cut
#s::Send,^s	; Save
#o::Send,^o	; Open
^(::SendRaw, [
^)::SendRaw, ]
!(::SendRaw, {
!)::SendRaw, }
!u::SendRaw, µ
#LButton::RButton           ; Win-click = right-click
#Up::PgUp                   ; Win-up = page up
#Down::PgDn                 ; Win-down = page down
#Left::Home                 ; Win-left = home
#Right::End                 ; Win-right = end
^bs::send {Del}             ; ctrl-backspace = Delete
!bs::send {Del}             ; Alt-backspace = Delete
+bs::Del                    ; Shift-backspace = Delete
#BS::Del                    ; Win-backspace = Delete (backspace works, but ctrl-alt-win-del is the new ctrl-alt-del)
#F1::SendMessage, 0x112, 0xF170, 2,, Program Manager  ; Win+F1 hotkey that turns off the monitor.
#F2::SendMessage, 0x112, 0xF170, -1,, Program Manager  ; Win+F2 hotkey that turns on the monitor.
#F4::Drive, Eject
#F10::SoundSet, +1, , mute  ; Toggle the master mute (set it to the opposite state)
#F11::SoundSet -1  ; Raise the master volume by 1 interval (typically 5%).
#F12::SoundSet +1  ; Raise the master volume by 1 interval (typically 5%).


And i use these to program in notepad++
#IfWinActive ahk_class Notepad++ ;for coding ahk
:*:(if)::if `n`t{{}`n`n{}}
:*:(While)::While Expression `n`t{{}`n`n{}}
:*:loop,::loop, `%var`% `n`t{{}`n`n{}}
:*:(())::() {{} `n`t`n{}}
:*:StringGetPos,::StringGetPos,OutputVar,InputVar,SearchText [, L#|R#, Offset]
:*:StrGetPos,::StringGetPos,OutputVar,InputVar,SearchText [, L#|R#, Offset]
:*:StrGP,::StringGetPos,OutputVar,InputVar,SearchText [, L#|R#, Offset]
:*:SGP,::StringGetPos,OutputVar,InputVar,SearchText [, L#|R#, Offset]
:*:IfE,::IfEqual,var,%true%,SetEnv,var,%false%
:*:IfEqual,::IfEqual, var, value (same: if var = value)
:*:IfNE,::IfNotEqual, var, value (same: if var <> value) (!= can be used in place of <>)
:*:IfNotEqual,::IfNotEqual, var, value (same: if var <> value) (!= can be used in place of <>)
:*:IfG,::IfGreater, var, value (same: if var > value)
:*:IfGreater,::IfGreater, var, value (same: if var > value)
:*:IfGOE,::IfGreaterOrEqual, var, value (same: if var >= value)
:*:IfGreaterOrEqual,::IfGreaterOrEqual, var, value (same: if var >= value)
:*:IfL,::IfLess, var, value (same: if var < value)
:*:IfLess,::IfLess, var, value (same: if var < value)
:*:IfLOE,::IfLessOrEqual, var, value (same: if var <= value)
:*:IfLessOrEqual,::IfLessOrEqual, var, value (same: if var <= value)
:*:SS,::StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
:*:StrSpl,::StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
:*:StringSplit,::StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
:*:SP,::SplitPath, InputVar [, OutDriveDirFileExt, OutDir, OutExt, OutFile, OutDrive]
:*:SplP,::SplitPath, InputVar [, OutDriveDirFileExt, OutDir, OutExt, OutFile, OutDrive]
:*:SplPath,::SplitPath, InputVar [, OutDriveDirFileExt, OutDir, OutExt, OutFile, OutDrive]
:*:SplitPath,::SplitPath, InputVar [, OutDriveDirFileExt, OutDir, OutExt, OutFile, OutDrive]
:*:SR,::StringReplace, OutputVar, InputVar, SearchText [, ReplaceText, ReplaceAll?] 
:*:StrR,::StringReplace, OutputVar, InputVar, SearchText [, ReplaceText, ReplaceAll?] 
:*:StringReplace,::StringReplace, OutputVar, InputVar, SearchText [, ReplaceText, ReplaceAll?] 
:*:SetT,::SetTimer,Label,Miliseconds
:*:FileSetAttrib,::FileSetAttrib, Attributes [, FilePattern, OperateOnFolders?, Recurse?]
:*:SetAttrib,::FileSetAttrib, Attributes [, FilePattern, OperateOnFolders?, Recurse?]
:*:Attrib,::FileSetAttrib, Attributes [, FilePattern, OperateOnFolders?0=files 1=files+fold 2=fold, Recurse?]
:*:StringLen,::StringLen, OutputVar, InputVar


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
My function for a customized console window:

to add:
AddConsole:
	RegBackup(RegBackupConsole,"HKCU","Console")
	RegBackup(RegBackupConsole2,"HKCU","Software\Microsoft\Command Processor")
	RegWrite,REG_DWORD,HKCU,Console,QuickEdit,1 ;select with mouse, enter and rightclick to paste
	; RegWrite,REG_SZ,HKCU,Software\Microsoft\Command Processor,AutoRun,dir ;Run a command when CMD.exe starts
	RegWrite,REG_DWORD,HKCU,Software\Microsoft\Command Processor,PathCompletionChar,9 ;9=Tab 8=BS Activate Automatic Completion
	RegWrite,REG_DWORD,HKCU,Software\Microsoft\Command Processor,CompletionChar,9 ;Activate Automatic Completion
	RegWrite,REG_DWORD,HKCU,Software\Microsoft\Command Processor,DefaultColor,0x70 ;Backgr-Forgr,0=black,1=Blue,2=Green,3=Aqua,7=White
	return
To Delete:
DelConsole:
	RegDelete,HKCU,Console																	; Delete the new settings
	RegDelete,HKCU,Software\Microsoft\Command Processor
	RegRestore(RegBackupConsole RegBackupConsole2)											; Restore the old settings
	return


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
This is how i create a playlist from a drive:
#p::	; Pres Win+p to create a playlist (from the entire drive) in the scripts directory
	; excludeFromLibrary is readed from ini 
	; excludeFromLibrary=Program files,Downloads,someotherpath,...
	FileDelete, %A_ScriptDir%\Playlist.m3u
	Filetypes = mp3,Ogg
	Loop, parse, Filetypes, `,
		{
		Loop, %exedrive%\*.%A_LoopField%, 0, 1
			{
			if A_LoopFileFullPath contains %excludeFromLibrary%
				continue
			FileAppend,% Substr(A_LoopFileFullPath,3) "`n",  %A_ScriptDir%\Playlist.m3u
			}
	}
	Return


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Somme Batchfiles to start apps:
No need to use portable apps

Firefox. bat:
cd [color=black]/D "%~d0\Program Files\Firefox\"
if $%1$==$$ start Firefox.exe -profile "\Documents and Settings\User\Firefox\Profiles\Default_en"[/color]
if not [color=black]$%1$==$$ start Firefox.exe -profile "\Documents and Settings\User\Firefox\Profiles\Default_en" -new-tab %1[/color]
Skype.bat:
cd [color=black]/D "%~d0\Program Files\skype\"[/color]
start [color=black]skype.exe /nosplash /minimized /removable /datapath:"\Settings\Apps\Skype"[/color]


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Here i put my scrips that only work in lexicos build of AHK
.
Dvorak: Swich dutch Belgium keybord to dvorak.
; This inly works with lexicos build of ahk
; And is written for Dutch Belgium Keyboard
; ^!#Space::Msgbox,% "Dvorak: " Dvorak:=!Dvorak ;Toggle Dvorak on and of
^!#Space::Msgbox,% "Dvorak: " DvorakState:= (Dvorak:=!Dvorak) ? "On" : "Off" ;Toggle Dvorak on and off
#if,Dvorak=1
@::sendraw, ``
&::sendraw, 1
é::2
"::3
'::4
(::5
§::6
è::7
!::8
ç::9
à::0
)::[
-::]
a::'
z::,
e::.
r::p
t::y
y::f
u::g
i::c
o::r
p::l
^::/ ; SC01A::/
$::=
q::a
s::o
d::e
f::u
g::i
h::d
j::h
k::t
l::n
m::s
ù::-
`::\
<::
w::;
x::q
c::j
v::k
b::x
n::b
,::m
`;::w
SC034::v
=::z


[email protected]::sendraw, ~
+&::sendraw, !
+é::sendraw, @
+"::sendraw, #
+'::sendraw, $
+(::sendraw, `%
+§::sendraw, ^
+è::sendraw, &
+!::sendraw, *
+ç::sendraw, (
+à::sendraw, )
+)::sendraw, {
+-::sendraw, }
+a::sendraw, "
+z::sendraw, <
+e::sendraw, >
+r::p
+t::y
+y::f
+u::g
+i::c
+o::r
+p::l
+^::sendraw, ?
+$::sendraw, +
+q::a
+s::o
+d::e
+f::u
+g::i
+h::d
+j::h
+k::t
+l::n
+m::s
+ù::sendraw, _
+`::sendraw, |
+<::
+w::sendraw, :
+x::q
+c::j
+v::k
+b::x
+n::b
+,::m
+`;::w
+SC034::v
+=::z
#if


emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
Some of my contributions to the forum that i want to remember
Spacebar as Space and as Shift
Send text to all identical windows

emmanuel d
  • Members
  • 519 posts
  • Last active: Jul 15 2017 12:04 PM
  • Joined: 29 Jan 2009
they are yust reserved :roll: