{"id":13313,"date":"2012-10-19T00:50:03","date_gmt":"2012-10-18T22:50:03","guid":{"rendered":"http:\/\/davidbosman.fr\/blog\/2012\/10\/19\/quelques-astuces-pour-autohotkey\/"},"modified":"2015-06-07T16:54:47","modified_gmt":"2015-06-07T14:54:47","slug":"quelques-astuces-pour-autohotkey","status":"publish","type":"post","link":"https:\/\/www.davidbosman.fr\/blog\/2012\/10\/19\/quelques-astuces-pour-autohotkey\/","title":{"rendered":"Quelques astuces pour AutoHotKey"},"content":{"rendered":"<p><strong>Edit:<\/strong> avec le code correctement mis en forme, c&#8217;est pas plus mal \ud83d\ude09<\/p>\n\n<p>Ceux qui me connaissent depuis assez longtemps pour avoir lu les manuels que j\u2019ai \u00e9crit sur Windows savent que je suis un fan de <a href=\"http:\/\/www.autohotkey.com\/\">AutoHotKey<\/a> (similaire, en moins convivial mais bien plus puissant, \u00e0 TextExpander sous OS X\/iOS, et \u00e0 AutoKey sous Ubuntu), pour automatiser tout ce que je peux. Comme je passe actuellement pas mal de temps sous Windows, plus exactement dans OneNote et Word (pour une petite exp\u00e9rience d\u2019\u00e9criture dont je vous reparlerais, si elle se r\u00e9v\u00e8le concluante), c\u2019est l\u2019occasion r\u00eav\u00e9e de partager quelques raccourcis AutoHotKey que j\u2019utilise au quotidien.<\/p>\n\n<!--more-->\n\n<h3>Tiret Cadratin<\/h3>\n\n<p>Dans Word, lorsque vous ins\u00e9rez un tiret cadratin (ou tiret long) il sera g\u00e9n\u00e9ralement consid\u00e9r\u00e9 comme la premi\u00e8re entr\u00e9e d\u2019une liste \u00e0 puces. C\u2019est un remplacement automatique tr\u00e8s pratique\u2026 sauf quand on \u00e9crit des dialogues, vous savez :<\/p>\n\n<p><a href=\"http:\/\/davidbosman.fr\/blog\/wp-content\/uploads\/Quelques-astuces-pour-AutoHotKey_139E5\/jodie.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;\" title=\"jodie\" src=\"http:\/\/davidbosman.fr\/blog\/wp-content\/uploads\/Quelques-astuces-pour-AutoHotKey_139E5\/jodie_thumb.jpg\" alt=\"jodie\" width=\"454\" height=\"193\" border=\"0\" \/><\/a>\n<em>\nMe fais pas chier, Word ! Ceci n\u2019est pas une liste \u00e0 puces mais une suite de paragraphes en style \u201cNormal\u201d, qui commencent juste par un tiret.<\/em><\/p>\n\n<p>Vous me direz qu\u2019il suffit\u00a0 de d\u00e9sactiver le remplacement automatique dans Word, mais encore une fois : c\u2019est assez pratique dans la majorit\u00e9 des cas, pourquoi s\u2019en passer ? Solution : cr\u00e9er un script qui permette de contourner l\u2019automatisme de Word dans ce cas pr\u00e9cis.<\/p>\n\n<blockquote>::&#8211;::\nSend {\u2014}{Space}\nSend ^z\nreturn<\/blockquote>\n\n<p>Comment \u00e7a marche ? Lorsque je tape deux signes moins suivi de la touche espace, AutoHotKey les remplace par un tiret long, puis il simule un appui sur les touches <strong>Ctrl+z<\/strong> ce qui revient \u00e0 dire \u00e0 Word d\u2019annuler le style (puces) qu\u2019il vient d\u2019appliquer automatiquement \u00e0 votre tiret. Sous Windows, c\u2019est bon \u00e0 savoir : Ctrl+z permet toujours d\u2019annuler une correction automatique ou un style appliqu\u00e9 par Word.<\/p>\n\n<h3>Entr\u00e9es de journal, dat\u00e9es<\/h3>\n\n<p>Ce script permet d&#8217;ajouter un titre du m\u00eame niveau que le dernier utilis\u00e9 dans le doc, bas\u00e9 sur la date et l\u2019heure, \u00e0 la fin d\u2019un fichier Word (dont le chemin d\u2019acc\u00e8s est sp\u00e9cifi\u00e9 dans le script), que le fichier soit d\u00e9j\u00e0 ouvert, ou pas :<\/p>\n\n<p><a href=\"http:\/\/davidbosman.fr\/blog\/wp-content\/uploads\/Quelques-astuces-pour-AutoHotKey_139E5\/journal.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;\" title=\"journal\" src=\"http:\/\/davidbosman.fr\/blog\/wp-content\/uploads\/Quelques-astuces-pour-AutoHotKey_139E5\/journal_thumb.jpg\" alt=\"journal\" width=\"454\" height=\"143\" border=\"0\" \/><\/a><\/p>\n\n<blockquote>:R*?:jjia::\nIfWinExist Journal-2012 &#8211; Microsoft Word\nWinActivate\nelse\nRun C:\\Users\\david\\SkyDrive\\Documents\\journal\\Journal-2012.docx\nFormatTime, CurrentDateTime,, dddd le dd MMMM, HH@mm\nSendInput, ^{End}\nSend {ENTER}\nSendInput %CurrentDateTime%\nSendInput +!{LEFT}\nSend {ENTER}\nSend ^+n\nReturn<\/blockquote>\n\n<p>On peut taper le raccourci (ici, j\u2019utilise <strong>jjia<\/strong>) n\u2019importe o\u00f9 dans Windows, pas seulement dans Word ou dans une fen\u00eatre de saisie de texte. Le script v\u00e9rifie que le fichier est d\u00e9j\u00e0 ouvert, sinon il l\u2019ouvre.<\/p>\n\n<p><strong>SendInput, ^{End}<\/strong> envoie le curseur \u00e0 le fin du fichier.<\/p>\n\n<p><strong>SendInput +!{LEFT}<\/strong> correspond au raccourci clavier de Word <strong>MaJ+Alt+fl\u00e8che vers la gauche<\/strong>, qui applique un style de titre \u00e9gal au dernier style de titre utilis\u00e9 dans le fichier (titre 2 si c\u2019est Titre 2, titre 3 si c\u2019est Titre 3, etc.). Pour appliquer un titre de niveau sup\u00e9rieur, vous appuieriez deux fois de suite sur <strong>MaJ+Alt+fl\u00e8che vers la gauche<\/strong>. Si vous vouliez cr\u00e9er un style de niveau inf\u00e9rieur, vous utiliseriez <strong>MaJ+Alt+fl\u00e8che vers la droite<\/strong>.<\/p>\n\n<p><strong>Send ^+n<\/strong> n\u2019est pas n\u00e9cessaire, mais permet de s\u2019assurer que Word utilisera le style normal (<strong>Maj+Ctrl+n<\/strong> annule tous les styles) lorsque l\u2019on commencera \u00e0 taper le texte de l\u2019entr\u00e9e du journal.<\/p>\n\n<p>Vous l\u2019aurez surement devin\u00e9, en dehors des styles de mise en forme et des raccourcis clavier propres \u00e0 Word, ce script fonctionnera avec tout autre programme et avec tout format de fichier dans lequel on peut \u00e9crire du texte (suffit de changer le chemin d\u2019acc\u00e8s <em>et<\/em> le nom de la fen\u00eatre ouverte, dans le if). Et m\u00eame avec du Markdown (c\u2019est pas parce que je suis sous Windows, que je l\u2019ai laiss\u00e9 tomber). Ici j\u2019envoie un titre de niveau 2, en Markdown donc :<\/p>\n\n<blockquote>SendInput {#}{#} %CurrentDateTime%<\/blockquote>\n\n<h3>Facilement nommer ses fichiers avec la date<\/h3>\n\n<p>Que je sois sous Windows ou OS X, <a href=\"http:\/\/davidbosman.fr\/blog\/2011\/01\/29\/nommer-ses-fichiers\/\">je nomme mes fichiers de la m\u00eame fa\u00e7on<\/a>. J\u2019ai donc d\u00e9fini les raccourcis clavier suivant :<\/p>\n\n<blockquote>:R*?:jjn::\nFormatTime, CurrentDateTime,, yyyy-MMdd-N-\nSendInput %CurrentDateTime%\nReturn\n\n:R*?:jjw::\nFormatTime, CurrentDateTime,, yyyy-MMdd-W-\nSendInput %CurrentDateTime%\nReturn\n\n:R*?:jjd::\nFormatTime, CurrentDateTime,, yyyy-MMdd-W-DRAFT-\nSendInput %CurrentDateTime%\nReturn\n\n:R*?:jjo::\nFormatTime, CurrentDateTime,, yyyy-MMdd-J-dddd\nSendInput %CurrentDateTime%\nSend {.}\nSend markdown\nReturn<\/blockquote>\n\n<p>Le dernier script ajoute une extension sp\u00e9cifique, \u2018.markdown\u2019, au nom du fichier.<\/p>\n\n<h3>Natural scrolling sous Windows<\/h3>\n\n<p>J\u2019utilise Windows sur un Mac (j\u2019attends toujours de trouver mieux que le MacBook Air comme portable, ou qu\u2019un MacBook Pro avec son magnifique \u00e9cran mat), malheureusement Apple ne semble pas avoir le m\u00eame souci du d\u00e9tail que dans OS X, ni le m\u00eame soin en ce qui concerne l\u2019exp\u00e9rience utilisateur sous Windows (en m\u00eame temps, c\u2019est pas comme si elle souhaitait vraiment encourager l\u2019utilisation de Windows). Par exemple, il n\u2019est pas possible de d\u00e9sactiver l\u2019insupportable <em>PlopPlopPlop<\/em> que font les boutons de r\u00e9glage du volume (je suis toujours \u00e0 la recherche d\u2019une solution <em>simple<\/em>), ni de r\u00e9gler le Natural scrolling du Trackpad\u2014pour celui-l\u00e0,\u00a0 AutoHotKey permet de se tirer d\u2019affaire :<\/p>\n\n<blockquote>WheelUp::\nSend {WheelDown}\nReturn\n\nWheelDown::\nSend {WheelUp}\nReturn<\/blockquote>\n\n<p>J\u2019ai piqu\u00e9 ce dernier script sur un autre site\u2026 Je crois me souvenir que j\u2019en ai d\u00e9j\u00e0 parl\u00e9 ici. Pas le courage de chercher. Ce n\u2019est pas parfait (quand on scrolle trop longtemps, cela fait planter AutoHotKey), mais je vis avec.<\/p>\n\n<h3>Sur le m\u00eame sujet, on vous propose<\/h3>\n\n<p><a href=\"http:\/\/davidbosman.fr\/blog\/2012\/03\/08\/un-textexpander-pour-windows-et-ubuntu\/\">Un TextExpander pour Windows (et Ubuntu) ?<\/a><\/p>\n\n<p><a href=\"http:\/\/davidbosman.fr\/blog\/2011\/03\/26\/un-exemple-dutilisation-de-textexpander\/\">Un exemple d\u2019utilisation de TextExpander<\/a><\/p>\n\n<p><a href=\"http:\/\/davidbosman.fr\/blog\/2011\/01\/29\/nommer-ses-fichiers\/\">Nommer ses fichiers<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Edit: avec le code correctement mis en forme, c&#8217;est pas plus mal \ud83d\ude09 Ceux qui me connaissent depuis assez longtemps pour avoir lu les manuels que j\u2019ai \u00e9crit sur Windows savent que je suis un fan de AutoHotKey (similaire, en &hellip; <a href=\"https:\/\/www.davidbosman.fr\/blog\/2012\/10\/19\/quelques-astuces-pour-autohotkey\/\">Read more &rarr;<\/a><\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[98,21,38,26],"class_list":["post-13313","post","type-post","status-publish","format-standard","hentry","category-trucs-et-astuces","tag-autohotkey","tag-ecriture","tag-markdown","tag-windows"],"_links":{"self":[{"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/posts\/13313","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/comments?post=13313"}],"version-history":[{"count":9,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/posts\/13313\/revisions"}],"predecessor-version":[{"id":16676,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/posts\/13313\/revisions\/16676"}],"wp:attachment":[{"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/media?parent=13313"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/categories?post=13313"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.davidbosman.fr\/blog\/wp-json\/wp\/v2\/tags?post=13313"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}