Ultimate Shift Controller
Guide utilisateur
Version 3.0.9

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 1. Type de distribution et configuration requise
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Logiciel gratuit, sans frais d'utilisation. Requiert Windows 10/11 64 bits, .NET 8 Desktop Runtime (x64), un clavier et une souris. Le comportement peut varier selon le matériel, l'application ou le jeu. Le contrôleur virtuel peut demander des pilotes supplémentaires.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 2. Installation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Il n'y a pas d'installateur. Extrayez le ZIP dans un dossier accessible en écriture, lancez UltimateShiftController.exe, configurez les affectations puis cliquez sur [Enregistrer]. Ne lancez pas le programme directement depuis le ZIP.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 3. Désinstallation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Désactivez le démarrage automatique, quittez USC y compris dans la zone de notification, puis supprimez le dossier. Supprimez [Settings] pour effacer aussi les profils. Les pilotes de contrôleur virtuel doivent être désinstallés séparément.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 4. Présentation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Ultimate Shift Controller combine clavier et souris pour réaffecter des touches, lancer des raccourcis depuis la souris et changer d'affectation tant qu'un déclencheur de couche est maintenu. Il convient aux jeux, à l'édition, à l'écriture, au streaming et aux applications riches en raccourcis. Les fonctions de base n'exigent pas de contrôleur virtuel.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 5. Fonctions principales
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Remappage clavier/souris, raccourcis avec modificateurs, sorties multiples, F1-F24, couches NORMAL/HYPER/ULTRA/ULTIMATE, Turbo, onglets, profils, import/export, HUD, zone de notification, clic gauche/droit comme entrée dans les couches supérieures et traduction locale via Chrome.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 6. Mise en route
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Lancez l'application, choisissez la couche à modifier, enregistrez l'entrée dans le champ supérieur et la sortie dans le champ inférieur, cliquez sur [Enregistrer], puis testez. Exemple : Q -> CTRL+1.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 7. Les quatre couches
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

NORMAL est la couche par défaut. HYPER et ULTRA sont actives tant que leur déclencheur est maintenu. ULTIMATE est active lorsque les deux le sont. Les boutons du haut choisissent la couche à modifier ; les déclencheurs choisissent la couche réellement utilisée.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 8. HYPER / ULTRA / ULTIMATE et souris externes
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Les déclencheurs logiques HYPER et ULTRA sont limités à F13-F24 et doivent être différents.

Exemple : HYPER=F13, ULTRA=F14. Le bouton physique doit envoyer la même touche F que celle configurée dans USC.

Une sortie USC F13-F24 sans Turbo peut aussi servir de déclencheur interne. Les clics gauche et droit peuvent être enregistrés comme entrées dans HYPER/ULTRA/ULTIMATE ; ils restent bloqués dans l’entrée NORMAL et dans tous les champs de sortie. Une entrée sans Turbo maintient sa sortie jusqu’au relâchement.

[Razer Synapse 2]
Synapse 2 enregistre F13-F24 sans afficher leur nom. Pour F13 : dans NORMAL, faites temporairement envoyer F13 par la touche physique F1 ; ouvrez l'enregistrement du bouton dans Synapse 2 ; appuyez sur F1 ; enregistrez même si aucun nom n'apparaît ; rétablissez ensuite F1 dans USC et choisissez F13 comme déclencheur HYPER.

[Razer Synapse 3]
Si F13-F24 sont proposées directement, attribuez F13/F14 au bouton et utilisez la même touche dans USC.

[Logicool/Logitech G-Shift et G HUB]
G HUB permet de choisir F1-F24. Affectez F13/F14 à un bouton normal ou G-Shift, puis utilisez la même touche dans USC.

[Autres périphériques]
La méthode fonctionne avec tout logiciel capable d'enregistrer F13-F24. Même si le nom n'est pas visible, l'affectation fonctionne si elle est enregistrée et envoyée. Préférez F13-F24.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 9. Onglets, profils et sauvegarde
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Les onglets organisent les affectations. Les profils stockent toute la configuration. Cliquez toujours sur [Enregistrer]. Les données se trouvent dans [Settings].

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 10. Turbo, HUD et état
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Turbo répète une sortie. US HUD affiche la couche. CLEAN tente de libérer les états bloqués. Keyboard Lock bloque temporairement le clavier et se désactive à la souris.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 11. Paramètres importants
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Kill des entrées mappées] évite l'action simultanée de l'entrée d'origine et de la sortie. Le blocage des entrées non mappées empêche leur passage dans HYPER/ULTRA/ULTIMATE. Des options de zone de notification et de démarrage Windows sont également disponibles.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 12. Contrôleur virtuel
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Fonction avancée pouvant demander des pilotes, la séparation des contrôleurs physique/virtuel et des réglages du jeu. Une mauvaise configuration peut produire une double entrée. Guide illustré :
https://github.com/Lu-ci-el/UltimateShiftController/blob/main/Instructions_en.md

Inutile pour les fonctions clavier, souris, couches et raccourcis.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 13. Dépannage
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Enregistrez les réglages, vérifiez les déclencheurs, l'option Kill en cas de double entrée, Keyboard Lock, CLEAN et les droits d'écriture du dossier. Évitez Program Files si l'enregistrement échoue.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 14. Contact et rapports de bugs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

https://github.com/Lu-ci-el/UltimateShiftController/issues

Indiquez le problème, les étapes, la fréquence, l'environnement et les logs. Aucune réponse individuelle, correction immédiate ou compatibilité universelle n'est garantie. Les demandes abusives ou de développement personnalisé ne sont pas acceptées.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 15. Remarques
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Sauvegardez [Settings], quittez USC avant mise à jour, vérifiez les conflits et les règles des jeux/services. N'utilisez pas USC pour tricher, déranger ou perturber d'autres utilisateurs. L'auteur décline toute responsabilité pour les dommages liés à l'utilisation.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ USC_TRANSLATION_3_0_4 / Traduction
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

- La traduction nécessite Google Chrome 64 bits et des modèles locaux pris en charge. Microsoft Edge n’est pas utilisé comme solution de repli.
- Activez « Utiliser la traduction » et ouvrez les réglages. La touche de traduction est une touche logique F13-F24 et ne peut pas reprendre le déclencheur HYPER ou ULTRA.
- Cliquez à gauche sur « Touche de déclenchement » pour la capturer et à droite pour l’effacer. Il peut s’agir d’un accord physique clavier/souris/manette ou d’une sortie de mappage USC sans Turbo de la couche active. Les moitiés physiques et internes ne sont jamais mélangées.
- Le texte étranger sélectionné est traduit vers la langue actuellement choisie dans USC. Le texte dans votre langue est traduit vers la dernière langue de conversation réussie ou vers la cible par défaut.
- Le résultat apparaît dans la fenêtre simple. Pour obtenir le texte sélectionné, USC envoie exactement une fois Ctrl+C à l'application au premier plan sous forme d'événements de code d'analyse séparés, dans l'ordre Left Ctrl DOWN → C DOWN → C UP → Left Ctrl UP, en maintenant brièvement Ctrl avant C. USC n'envoie jamais C en premier et ne réessaie pas C après un échec de copie. Seule une mise à jour prouvée du presse-papiers est traduite ; sinon aucune traduction n'est lancée et la fenêtre simple indique que la sélection n'a pas pu être obtenue. La capture d'écran et l'OCR ne sont pas utilisés.
- Les 14 langues intégrées peuvent être préparées en lot. Les autres langues sont préparées séparément avec une balise BCP-47 si Chrome les prend en charge.
- Ouvrir les réglages, actualiser ou sélectionner une ligne ne lance aucun téléchargement. Seuls DL et le DL groupé possèdent cette autorité.
- Un DL explicite ouvre dans Chrome normal une page locale temporaire protégée par jeton. Il fonctionne lorsque Chrome est déjà ouvert et ne commence qu’après un clic dans Chrome. Aucun site externe n’est ouvert et les modèles restent sous la responsabilité de Chrome.
- La traduction normale utilise un assistant invisible à requête unique via l’entrée/sortie standard et n’ouvre ni page, ni onglet, ni fenêtre Chrome, ni listener localhost. Elle ne télécharge pas automatiquement un modèle manquant.
- USC ne conserve que ses réglages et de petites preuves dans [Settings\Translation]. Les profils, TranslateKit, packs, modèles, composants, runtime et cache Chrome ne sont pas copiés dans USC.
- Markdown, URL, code, citations, paragraphes et sauts de ligne sont protégés hors du modèle, découpés avec des limites finies puis reconstruits. Enregistrez avec [Enregistrer] dans la fenêtre principale.
