Scripts de raccourcis clavier (AutoHotKey)


Cette page liste plusieurs scripts utiles permettant de créer des nouveaux raccourcis clavier permettant d'effectuer diverses actions. Ces scripts utilisent le logiciel AutoHotKey, disponible à l'adresse : AutoHotKey. La procédure générale est la suivante :

  • Télécharger et installer le logiciel
  • Dans le dossier de votre choix, faire clic droit → nouveau → Autohotkey script
  • Modifier le fichier créé avec un bloc note
  • Ajouter les lignes copiées de l'un des exemples ci-dessous
  • Enregistrer le fichier (vous pouvez le garder ouvert)
  • Double cliquer sur le fichier pour lancer le script
  • Pour que le script se lance au démarrage de l'ordinateur, créer un raccourci du fichier .exe et le copier dans le dossier \AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup (voir ici)

Conseils

Ajouter des touches média sur un clavier standard

Si disposez d'un clavier tout simple en USB et que vous souhaitez y ajouter des touches "média", telles que la mise en sourdine ou la modification du volume, utilisez le script suivant

/*
  Ajout de raccourcis pour les touches média
  Auteur : Célestin, 2023-12-05
*/
#Requires AutoHotkey v2.0
; Un nouveau lancement du script écrase l'ancien
#SingleInstance Force

; Mise en sourdine
F2::{
  Send "{Volume_Mute}"
}
; Diminution du volume
F3::{
  Send "{Volume_Down}"
}
; Augmentation du volume
F4::{
  Send "{Volume_Up}"
}

Ajouter des raccourcis à la molette de la souris

Le script ci-dessous permet d'ajouter deux raccourcis à la molette de la souris :

  • en appuyant sur ALT + molette vers le haut, le script « appuie » sur la touche Effacer (retour arrière)
  • en appuyant sur ALT + molette vers le bas, le script « appuie » sur la touche Supprimer

Cela permet de gagner du temps et surtout de la fatigue musculaire pour pouvoir laisser la main sur la souris !

/*
  Ajout de raccourcis sur la molette de la souris
  Auteur : Célestin, 2023-12-05
*/
#Requires AutoHotkey v2.0
; Un nouveau lancement du script écrase l'ancien
#SingleInstance Force

; Le programme ne se lance pas sur Sublime Text (ce raccourci existe déjà)
SetTitleMatchMode 2
#HotIf WinActive("Sublime Text")
#HotIf

; Molette vers le bas correspond à la touche "Supprimer"
!WheelDown::
{
  Send "{Delete}"
}
; Molette vers le haut correspond à la touche "Retour arrière" (Effacer)
!WheelUp::
{
  Send "{Backspace}"
}

Ajouter un raccourci pour taper son adresse de courriel

/*
 Raccourci pour courriel
 Auteur : Célestin, 2023-12-21
*/
#Requires AutoHotkey v2.0
; Un nouveau lancement du script écrase l'ancien
#SingleInstance Force
; Control Alt Arobase pour courriel
<^<!à::
{
 Send "jean-pierre.coffe`@ytp.com"
}

Alternative

/*
 Raccourcis utiles
 Auteur : Fran, 2024-01-02T170358
*/
#Requires AutoHotkey v2.0
Ctrl & F1::SendText "john.doe@yopmail.com" ; je préfère Ctrl & F1 car on peut le faire à une main quand on utilise la souris par ex. ; mettez ce que vous voulez bien sûr 😏
Ctrl & F2::SendText "+33 3 33 33 33 33" ; téléphone
Ctrl & F3::SendText "Best regards,{enter}John Doe" ; le truc classique qu'on met souvent à la fin d'un email (cdt en français)
Ctrl & F4::
{
;iso 8601 time, le meilleur format de date sans aucun doute
Time := ( A_YYYY . "-" . A_MM . "-" . A_DD . "T" . A_Hour . A_Min . A_Sec)
Send Time
}

Compléments

On peut insérer pratiquement toutes sortes de caractères, y compris des trucs bizarres ou des émojis pour peu qu'on ait le code ASCII ou UNIcode de celui-ci.

Le truc ci-dessous est (à peu près) basé sur la disposition des touches spéciales dans Linux, faites avec des combinaisons qui font à peu près sens, voir ici.

/*
 Caractères manquants sous Windows par défaut
 Auteur : Fran, 2024-01-02T171713
*/
Capslock & c::Send '{ASC 00199}' ; Ç Alt+0199
Capslock & e::Send '{ASC 00201}' ; É Alt+0201
RAlt & o::Send '{ASC 00156}' ; œ Alt+0156
RAlt & d::Send '{ASC 00216}' ; Ø Alt+0216
RAlt & .::Send '{ASC 00133}' ; … Alt+0133
RAlt & NumpadAdd::Send '{ASC 00177}' ; ± Alt+0177
RAlt & NumpadSub::Send '{ASC 00150}' ; – Alt+0150
RAlt & ^::Send '{U+2260}' ; ≠ U+2260

Ci-dessous c'est bonus, les smileys sûrement à adapter à l'usage de chacun

/*
 Smileys
 Auteur : Fran, 2024-01-02T171726
*/
RAlt & Numpad0::Send '{U+1F44B}' ; wave U+1F44B
RAlt & Numpad1::Send '{U+263A}' ; smile U+263A 
RAlt & Numpad2::Send '{U+1F60A}' ; blush U+1F60A
RAlt & Numpad3::Send '{U+1F923}' ; rofl U+1F923
RAlt & Numpad4::Send '{U+1F602}' ; laugh U+1F602
RAlt & Numpad5::Send '{U+1F914}' ; thinking U+1F914
RAlt & Numpad6::Send '{U+1F937}' ; shrug U+1F937
RAlt & Numpad7::Send '{U+1F60F}' ; smirk U+1F60F
RAlt & Numpad8::Send '{U+1F61F}' ; worried U+1F61F
RAlt & Numpad9::Send '{U+1F620}' ; angry U+1F620

VLC quand il se lance sur Windows

Bah il fait de la merde, il se lance à la résolution du film que vous lancez, mais pas plein écran, et rarement au milieu de votre écran. Vous vous retrouvez souvent avec une fenêtre qui est partiellement (ou majoritairement) en dehors de l'écran.

Ce script (à mettre au démarrage du PC) surveille quand VLC se lance que tout VLC est visible sur l'écran. Il y a ptet des trucs à ajuster si vous utilisez Windows 10 au lieu de Windows 11.

.

#Requires AutoHotkey v2.0
/*
 VLC
 Auteur : Fran, 2024-02-26T191559
*/
Loop
{
Sleep 100
if (PID := ProcessExist("vlc.exe"))
	{
	ProcessName := WinGetProcessName("A")
	;MsgBox ProcessName
	if ProcessName ~= "vlc.exe"
		{
		;screen size https://www.autohotkey.com/docs/v2/Variables.htm#Screen
		VirtualWidth := SysGet(78) ; largeur de tous les écrans cumulée
		VirtualHeight := SysGet(79) ; hauteur de tous les écrans cumulée
		WinGetPos &Left, &Top, &Width, &Height, "A" ; récupère le point en haut à gauche de la fenêtre de VLC ainsi que la largeur et hauteur
		OriginalLeft := Left ; sauvegarde la position originale du coin en haut à gauche
		OriginalTop := Top
		Left := Left + 8 ; windows 11 a mis des ombres partout, donc les fenêtres ne font plus la taille que ça mesure
		Top := Top + 1 ; idem
		Width := Width - 16 ; idem
		Height := Height - 9 ; idem
		Right := Left + Width ; on mesure le bord droit de la fenêtre
		Bottom := Top + Height ; et le bord du bas
	;MsgBox "VLC is at " Left "," Top " and its size is " Width "x" Height ". Bottom of VLC is at " Right "," Bottom " and screen is " VirtualWidth "x" VirtualHeight " in size."
		if Right > VirtualWidth or Bottom > VirtualHeight ; si le bord de la fenêtre est en dehors des bords de l'écran
			{
			if Right > VirtualWidth ; trop large
				{
				;MsgBox "trop large ! `n coin en bas à droite " Right
				NewWidth := Width - (Right - VirtualWidth) + 16
				}
			else
				NewWidth := Width
			if Bottom > VirtualHeight ; trop bas
				{
				;MsgBox "trop bas ! `n coin en bas à droite " Bottom
				NewHeight := Height - (Bottom - VirtualHeight) - 40 ; le 40 c'est pour la barre des tâches, si on fait pas ça les boutons VLC sont inaccessibles
				}
			else
				NewHeight := Height
			WinMove OriginalLeft, OriginalTop, NewWidth, NewHeight, "A"
			}
		;else
		;	MsgBox "Cool"	
		}
	else
		{
		;msgbox "nope"
		}
	}
}

Usage avancé

Créer un GUI avec AHK, mais avec un GUI : https://github.com/samfisherirl/Easy-Auto-GUI-for-AHK-v2