Vous rêvez d’un unique raccourci clavier pour fermer tous vos onglets Edge, ouvrir un nouvel onglet et redimensionner la fenêtre à une taille fixe ? Suivez ce guide pas à pas : solution fiable, rapide et personnalisable via AutoHotkey ou PowerShell, sans extension.
Problématique et objectif
Edge propose de nombreux raccourcis utiles, mais pas un seul geste qui enchaîne la fermeture de toutes les fenêtres/onglets, la réouverture d’un nouvel onglet et l’application immédiate d’une taille/position précises. L’objectif est donc d’obtenir un raccourci clavier unique qui exécute ce triptyque : fermer → relancer → redimensionner, de manière reproductible et sans intervention manuelle.
Ce que permet Edge nativement (et ses limites)
Avant d’automatiser, rappelons les capacités présentes par défaut :
Action | Raccourci Edge | Remarques |
---|---|---|
Fermer l’onglet courant | Ctrl + W | Ferme seulement l’onglet actif. |
Fermer tous les onglets (fenêtre) | Ctrl + Shift + W | Ferme la fenêtre en cours, donc tous ses onglets. Désactivez l’avertissement « Demander avant de fermer plusieurs onglets » dans edge://settings/accessibility pour éviter une invite. |
Ouvrir un nouvel onglet | Ctrl + T | Ne redimensionne pas la fenêtre. |
Redimensionner à une taille précise | — | Pas de raccourci natif pour une dimension exacte (pixels/position). |
Conclusion : Edge n’offre pas un raccourci unique qui cumule ces trois actions. Pour y arriver, il faut automatiser.
Approche recommandée : automatiser la séquence en un seul raccourci
Deux voies pratiques s’offrent à vous :
- AutoHotkey (AHK) : fermeture « douce », relance d’Edge avec
--window-size
&--window-position
→ plus propre et hautement personnalisable. - Script .bat / PowerShell + raccourci Windows : solution simple, pouvant recourir à une fermeture forcée si nécessaire.
Option A — AutoHotkey (recommandé, fermeture « douce » + relance dimensionnée)
AutoHotkey permet d’écouter un raccourci global puis d’envoyer des actions à la fenêtre Edge. L’idée est :
- Fermer toutes les fenêtres Edge de manière « douce » (équivalent
Ctrl+Shift+W
), - Relancer Edge avec la taille et la position souhaitées,
- Ouvrir un onglet vierge (
about:blank
) pour repartir proprement.
Script minimal (AHK v2) — Ctrl+Alt+E
Créez un nouveau fichier .ahk
(version 2) et collez :
#Requires AutoHotkey v2.0
^!e::{
; Fermer toutes les fenêtres Edge
while WinExist("ahk_exe msedge.exe") {
WinActivate "ahk_exe msedge.exe"
Send "^+w" ; Ctrl+Shift+W = fermer la fenêtre
Sleep 250
; Si une invite apparaît (fermeture de plusieurs onglets), valider
if WinActive("ahk_exe msedge.exe")
Send "{Enter}"
Sleep 150
}
```
; Résoudre le chemin d’Edge (x64 puis x86)
pf := A_ProgramFiles
pfx86 := EnvGet("ProgramFiles(x86)")
path1 := pf "\Microsoft\Edge\Application\msedge.exe"
path2 := pfx86"\Microsoft\Edge\Application\msedge.exe"
edge := FileExist(path1) ? path1 : path2
; Relancer Edge dimensionné + onglet vierge
Run '"' edge '" --new-window --window-size=1280,720 --window-position=100,100 about:blank'
```
}
Paramètres à adapter :
1280,720
→ largeur, hauteur en pixels.100,100
→ position (X,Y) du coin supérieur gauche.- Le raccourci (
^!e
) = Ctrl + Alt + E (changez-le à votre convenance).
Bonnes pratiques
• Désactivez l’avertissement « Demander avant de fermer plusieurs onglets » dans edge://settings/accessibility
pour éviter tout blocage.
• Réglez « Au démarrage » sur Ouvrir l’onglet Nouvel onglet (edge://settings/startHomeNTP
) pour ne pas rouvrir votre ancienne session.
• Si vous avez plusieurs profils, ajoutez --profile-directory="Default"
(ou "Profile 1"
, etc.) aux arguments de lancement.
Script avancé (AHK v2) — propre, modulaire et DPI-aware
Cette variante expose les paramètres en tête de fichier, gère la recherche du chemin Edge, permet d’indiquer un profil et propose une fonction pour convertir des dimensions « logiques » (DIP) en pixels si vos écrans ont une mise à l’échelle (125 %, 150 %, etc.).
#Requires AutoHotkey v2.0
; ===== Paramètres à personnaliser =====
HotKey := "^!e" ; Raccourci global (Ctrl+Alt+E)
UseDIP := false ; true = dimension logique, false = pixels
TargetW := 1280 ; Largeur souhaitée
TargetH := 720 ; Hauteur souhaitée
TargetX := 100 ; Position X
TargetY := 100 ; Position Y
Profile := "" ; "Default", "Profile 1", etc. (laisser vide pour le profil par défaut)
NewPage := "about:blank" ; Page d’ouverture
; =====================================
Hotkey HotKey, DoReset
DoReset(*) {
CloseEdgeGently()
LaunchEdgeWithSize()
}
CloseEdgeGently() {
; Ferme toutes les fenêtres Edge via le raccourci natif (fermeture douce)
while WinExist("ahk_exe msedge.exe") {
WinActivate "ahk_exe msedge.exe"
Send "^+w" ; Fermer la fenêtre
Sleep 250
; Confirmer la boîte si elle est au premier plan (Edge)
if WinActive("ahk_exe msedge.exe")
Send "{Enter}"
Sleep 150
}
}
LaunchEdgeWithSize() {
global UseDIP, TargetW, TargetH, TargetX, TargetY, Profile, NewPage
edge := GetEdgePath()
if !edge {
MsgBox "Impossible de localiser msedge.exe. Vérifiez l’installation d’Edge."
return
}
w := UseDIP ? DipToPx(TargetW) : TargetW
h := UseDIP ? DipToPx(TargetH) : TargetH
x := UseDIP ? DipToPx(TargetX) : TargetX
y := UseDIP ? DipToPx(TargetY) : TargetY
args := "--new-window --window-size=" w "," h " --window-position=" x "," y " " NewPage
if (Profile != "")
args := '--profile-directory="' Profile '" ' args
Run '"' edge '" ' args
}
GetEdgePath() {
pf := A_ProgramFiles
pfx86 := EnvGet("ProgramFiles(x86)")
paths := [
pf "\Microsoft\Edge\Application\msedge.exe",
pfx86"\Microsoft\Edge\Application\msedge.exe",
pf "\Microsoft\Edge Beta\Application\msedge.exe",
pf "\Microsoft\Edge Dev\Application\msedge.exe"
]
for p in paths
if FileExist(p)
return p
return ""
}
DipToPx(dip) {
; Conversion simple basée sur le DPI du moniteur principal
; 96 DPI = 100 %, 120 DPI = 125 %, etc.
dpi := A_ScreenDPI
return Round(dip * dpi / 96)
}
Astuce multi-écrans : vous pouvez utiliser des coordonnées négatives pour positionner la fenêtre sur un écran placé à gauche/au-dessus de l’écran principal. Exemple : TargetX := -1920
pour viser un moniteur 1080p placé à gauche.
Pourquoi AutoHotkey est la voie la plus propre
- La fermeture s’appuie sur le raccourci natif d’Edge, ce qui limite la casse (téléchargements en cours, formulaires non enregistrés, etc.).
- La relance dimensionnée utilise des arguments Chromium (
--window-size
,--window-position
) reproductibles. - Vous pouvez étendre le script (profils, pages, délais, vérifications, alternance de tailles, etc.).
Option B — Script .bat ou PowerShell + raccourci Windows
Alternative simple, pratique en environnement verrouillé. Deux variantes :
.bat minimal (fermeture forcée)
@echo off
taskkill /IM msedge.exe /F
start "" "%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" --new-window --window-size=1280,720 --window-position=100,100 about:blank
Limite : taskkill /F
coupe net les processus (risque de perte de l’état volatile). À privilégier seulement si la fermeture douce est impossible dans votre contexte.
PowerShell (fermeture douce, fallback forcé)
# Fermer "doucement" chaque fenêtre Edge
$procs = Get-Process -Name msedge -ErrorAction SilentlyContinue
if ($procs) {
foreach ($p in $procs) {
if ($p.MainWindowHandle -ne 0) {
$null = $p.CloseMainWindow()
Start-Sleep -Milliseconds 500
}
}
# Fallback si des instances restent
Get-Process -Name msedge -ErrorAction SilentlyContinue | Stop-Process -Force
}
# Trouver msedge.exe (x64 puis x86)
\$pf = \${env\:ProgramFiles}
\$pfx86 = \${env\:ProgramFiles(x86)}
\$path1 = Join-Path \$pf "Microsoft\Edge\Application\msedge.exe"
\$path2 = Join-Path \$pfx86 "Microsoft\Edge\Application\msedge.exe"
\$edge = if (Test-Path \$path1) { \$path1 } elseif (Test-Path \$path2) { \$path2 } else { \$null }
# Relance dimensionnée + onglet vierge
if (\$edge) {
Start-Process \$edge '--new-window --window-size=1280,720 --window-position=100,100 about\:blank'
} else {
Write-Host "msedge.exe introuvable."
}
Associer un vrai raccourci clavier Windows
- Placez votre
.bat
ou.ps1
dans un dossier fixe. - Clic droit → Créer un raccourci → Propriétés.
- Dans Touche de raccourci, pressez la combinaison désirée (ex. Ctrl + Alt + E).
- Si vous utilisez un
.ps1
, ciblezpowershell.exe -ExecutionPolicy Bypass -File "C:\chemin\script.ps1"
.
Option C — Gérer uniquement la taille sans script : PowerToys → FancyZones
Si votre priorité est la taille exacte (et pas forcément la fermeture d’onglets), vous pouvez définir des zones de dimensions précises via PowerToys → FancyZones, puis y ancrer Edge au clavier. Ce n’est pas un « tout-en-un », mais c’est propre, visuel et robuste pour la contrainte de taille.
Réglages Edge indispensables pour un comportement prévisible
- Au démarrage → Ouvrir l’onglet Nouvel onglet (
edge://settings/startHomeNTP
) pour éviter la restauration de sessions précédentes. - Avertissement de fermeture multiple → désactiver « Demander avant de fermer plusieurs onglets » (
edge://settings/accessibility
), sinon une boîte de dialogue bloquera l’automatisation. - Exécution en arrière-plan → si nécessaire, désactivez « Continuer à exécuter Microsoft Edge en arrière-plan » (
edge://settings/system
) pour simplifier la relance. - Profils → si vous utilisez plusieurs profils, ciblez explicitement le bon profil via
--profile-directory
(ex."Default"
,"Profile 1"
).
Personnaliser la relance d’Edge (arguments utiles)
Argument | Usage | Exemple |
---|---|---|
--new-window | Force l’ouverture dans une nouvelle fenêtre. | --new-window |
--window-size=W,H | Fixe largeur/hauteur en pixels. | --window-size=1280,720 |
--window-position=X,Y | Place la fenêtre (coin supérieur gauche). | --window-position=100,100 |
--profile-directory="Nom" | Ouvre un profil précis (utile si vous en avez plusieurs). | --profile-directory="Default" |
URL de démarrage | Définit la page initiale, typiquement about:blank pour partir « propre ». | about:blank |
Cas d’usage avancés
Ouvrir un jeu de pages au lieu d’un onglet vierge
Remplacez about:blank
par une (ou plusieurs) URL(s). Exemple :
Run '"' edge '" --new-window --window-size=1440,900 --window-position=50,50 https://intranet/ https://webapp/'
Astuce : si vous enchaînez plusieurs URL, Edge les ouvrira chacune dans un onglet.
Basculer entre deux tailles prédéfinies
Vous voulez un « toggle » (par ex. 1280×720 ↔ 1600×900) ? Maintenez un petit état dans AHK et relancez Edge avec l’autre couple (W,H) selon la valeur mémorisée.
DPI et écrans haute densité
Avec une mise à l’échelle (125 %, 150 %…), vos « 1280×720 » peuvent paraître plus petits/grands que prévu. Utilisez la fonction DipToPx()
du script avancé : indiquez des tailles « logiques » (sur la base 96 DPI), le script convertira en pixels réels.
Profils & chemins spéciaux
- Profil par défaut :
--profile-directory="Default"
. - Autres profils :
"Profile 1"
,"Profile 2"
(dossiers sous%LOCALAPPDATA%\Microsoft\Edge\User Data\
). - Éditions Beta/Dev : les exécutables peuvent se trouver sous
Microsoft\Edge Beta
ouMicrosoft\Edge Dev
; le script avancé scanne ces chemins.
Comparatif rapide des options
Critère | AutoHotkey (A) | .bat / PowerShell (B) |
---|---|---|
Fermeture « douce » | Oui (via Ctrl+Shift+W ) | Oui en PowerShell (CloseMainWindow() ), sinon forcée |
Précision taille/position | Excellente (--window-size , --window-position ) | Excellente (mêmes arguments) |
Complexité | Moyenne (script AHK à garder en mémoire) | Faible à moyenne |
Risques (perte d’état) | Faibles (fermeture native) | Faibles à moyens (si /F est utilisé) |
Extensibilité (profils, toggle) | Très élevée | Élevée en PowerShell, moyenne en .bat |
Check‑list de fiabilisation
- Invite de fermeture multiple désactivée :
edge://settings/accessibility
. - Démarrage sur onglet vierge :
edge://settings/startHomeNTP
. - Processus résiduels : si l’automatisation échoue à relancer proprement, vérifiez Exécution en arrière-plan (
edge://settings/system
). - Profils : précisez
--profile-directory
si vous jonglez entre comptes. - Multi‑écrans : ajustez
--window-position
(coords négatives possibles). - DPI : si les dimensions vous paraissent « fausses », activez UseDIP dans le script avancé.
Dépannage (FAQ)
Le raccourci ne fait rien. Assurez‑vous que le script AHK s’exécute (icône en zone de notification). En .bat/.ps1, vérifiez le chemin vers msedge.exe
et les droits d’exécution (politique PowerShell si besoin).
Une boîte de dialogue me bloque. Désactivez l’option « Demander avant de fermer plusieurs onglets ». Certains sites peuvent afficher des alertes de navigation ; privilégiez la fermeture « douce » (AHK/PowerShell) et évitez la fermeture forcée lors de téléchargements.
La fenêtre ne s’ouvre pas à la bonne taille. Vérifiez la présence de --window-size
/--window-position
, la mise à l’échelle de l’écran (activez la conversion DIP ▶ PX) et que le mode « Reprendre là où vous vous êtes arrêté » n’interfère pas avec l’ouverture sur un nouvel onglet.
Plusieurs profils Edge sont utilisés. Ajoutez --profile-directory="Default"
ou "Profile 1"
selon le profil cible. Les noms correspondent aux dossiers sous %LOCALAPPDATA%\Microsoft\Edge\User Data\
.
Mon service IT bloque les scripts. Utilisez la variante .bat minimale (avec prudence) ou sollicitez l’activation d’AutoHotkey/PowerShell signés. Certaines stratégies de groupe peuvent restreindre les paramètres de ligne de commande.
Exemples prêts à copier‑coller
AutoHotkey (v2) — simple
#Requires AutoHotkey v2.0
^!e::{
while WinExist("ahk_exe msedge.exe") {
WinActivate "ahk_exe msedge.exe"
Send "^+w"
Sleep 250
if WinActive("ahk_exe msedge.exe")
Send "{Enter}"
Sleep 150
}
pf := A_ProgramFiles, pfx86 := EnvGet("ProgramFiles(x86)")
edge := FileExist(pf "\Microsoft\Edge\Application\msedge.exe")
? pf "\Microsoft\Edge\Application\msedge.exe"
: pfx86 "\Microsoft\Edge\Application\msedge.exe"
Run '"' edge '" --new-window --window-size=1280,720 --window-position=100,100 about:blank'
}
.bat — simple
@echo off
taskkill /IM msedge.exe /F
start "" "%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" --new-window --window-size=1280,720 --window-position=100,100 about:blank
PowerShell — douce + fallback
$procs = Get-Process -Name msedge -ErrorAction SilentlyContinue
if ($procs) {
foreach ($p in $procs) {
if ($p.MainWindowHandle -ne 0) {
$null = $p.CloseMainWindow()
Start-Sleep -Milliseconds 500
}
}
Get-Process -Name msedge -ErrorAction SilentlyContinue | Stop-Process -Force
}
$pf = ${env:ProgramFiles}; $pfx86 = ${env:ProgramFiles(x86)}
$path1 = Join-Path $pf "Microsoft\Edge\Application\msedge.exe"
$path2 = Join-Path $pfx86 "Microsoft\Edge\Application\msedge.exe"
$edge = if (Test-Path $path1) { $path1 } elseif (Test-Path $path2) { $path2 } else { $null }
if ($edge) { Start-Process $edge '--new-window --window-size=1280,720 --window-position=100,100 about:blank' }
Conclusion
Edge ne propose pas nativement un raccourci unique pour tout faire. La solution la plus fiable et polyvalente consiste à automatiser la séquence « fermer toutes les fenêtres → relancer avec taille/position fixes → ouvrir un onglet vierge ». Avec AutoHotkey, vous bénéficiez d’une fermeture « douce », d’un contrôle précis des dimensions et d’une personnalisation quasi illimitée (profils, bascule de tailles, DPI, multi‑écrans). À défaut, un script .bat ou PowerShell fera très bien l’affaire, à condition d’appliquer les quelques réglages Edge listés dans ce guide. Résultat : un raccourci unique qui remet Edge dans un état net, reproductible et calibré pour travailler plus vite.