{"id":79737,"date":"2020-04-30T07:41:58","date_gmt":"2020-04-30T05:41:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher"},"modified":"2020-04-30T07:41:58","modified_gmt":"2020-04-30T05:41:58","slug":"novyj-analog-punto-switcher-dlya-linux-xswitcher","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher","title":{"rendered":"Nouveau compagnon de Punto Switcher pour Linux : xswitcher","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La fin du support de xneur m'a caus\u00e9 certains d\u00e9sagr\u00e9ments au cours des six derniers mois. <i>(avec l'apparition d'OpenSUSE 15.1 sur mes bureaux : lorsque xneur est activ\u00e9, les fen\u00eatres perdent le focus et clignotent de mani\u00e8re amusante au rythme des frappes au clavier)<\/i>.<\/p>\n<p>\u00abAh, mince, je recommence encore \u00e0 taper dans le mauvais agencement\u00bb \u2014 cela m'arrive de mani\u00e8re ind\u00e9cente dans mon travail. Et cela n'ajoute pas de positif.<\/p>\n<p><img decoding=\"async\" alt=\"Nouveau compagnon de Punto Switcher pour Linux : xswitcher\" src=\"\/wp-content\/uploads\/2020\/04\/d296936e3aedb8e94ba4c26522ffe72b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nEn m\u00eame temps, moi (en tant qu'ing\u00e9nieur concepteur) peux formuler clairement ce que je veux. Et ce que je voulais (d'abord de Punto Switcher, puis, merci Windows Vista, ayant finalement bascul\u00e9 sur Linux, de xneur) \u00e9tait une seule chose. R\u00e9alisant qu'il y a des nonsens \u00e0 l'\u00e9cran dans le mauvais agencement (ce qui arrive le plus souvent \u00e0 la fin de la saisie d'un nouveau mot), je voulais frapper \u00abPause\/Break\u00bb. Et obtenir ce que j'avais tap\u00e9.<\/p>\n<p>\u00c0 ce jour, le produit a un rapport fonctionnalit\u00e9\/complexit\u00e9 optimal (\u00e0 mon avis). Il est temps de partager.<\/p>\n<h2>TL.DR<\/h2>\n<p>\nEnsuite viendront quelques d\u00e9tails techniques, donc d'abord \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ds-voix\/VX-PBX\/blob\/master\/x%20switcher\/bin\/xswitcher\">un lien \u00ab\u00e0 toucher\u00bb<\/a><\/noindex> pour les impatients.<\/p>\n<p>Actuellement, le comportement suivant est cod\u00e9 en dur :<\/p>\n<ul>\n<li>\u00abPause\/Break\u00bb : supprime (Backspace) le dernier mot, change l'agencement dans la fen\u00eatre active (entre 0 et 1) et le retape.<\/li>\n<li>\u00abCtrl gauche sans rien\u00bb : change l'agencement dans la fen\u00eatre active (entre 0 et 1).<\/li>\n<li>\u00abShift gauche sans rien\u00bb : active l'agencement n\u00b00 dans la fen\u00eatre active.<\/li>\n<li>\u00abShift droit sans rien\u00bb : active l'agencement n\u00b01 dans la fen\u00eatre active.<\/li>\n<\/ul>\n<p>\n\u00c0 partir de maintenant, je pr\u00e9vois de personnaliser le comportement. Sans retour d'information \u2014 ce n'est pas int\u00e9ressant (je suis d\u00e9j\u00e0 satisfait). Je suppose qu'il y aura un nombre suffisant d'auditeurs sur Habr avec des probl\u00e8mes similaires.<\/p>\n<p><b>N.B.<\/b> Puisque dans la version actuelle, le keylogger est connect\u00e9 \u00e0 \"\/dev\/input\/\", xswitcher doit \u00eatre lanc\u00e9 avec des droits root :<\/p>\n<pre><code class=\"bash\">chown root:root xswitcher\nchmod +xs xswitcher<\/code><\/pre>\n<p>\n<b>rmem<\/b> le propri\u00e9taire du fichier avec suid doit \u00eatre root, car celui qui est propri\u00e9taire \u2014 sera le suid et le transformera lors de l'ex\u00e9cution.<\/p>\n<p>Les parano\u00efaques (je ne fais pas exception) peuvent cloner depuis <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ds-voix\/VX-PBX\">GIT<\/a><\/noindex> et compiler sur place. \u00c0 peu pr\u00e8s comme \u00e7a :<\/p>\n<pre><code class=\"bash\">go get \"github.com\/micmonay\/keybd_event\"\ngo get \"github.com\/gvalkov\/golang-evdev\"\n\n### En-t\u00eates X11 pour OpenSUSE \/ bas\u00e9s sur deb\nzypper install libX11-devel libXmu-devel\napt-get install libx11-dev libxmu-dev\n\ncd \"x switcher\/src\/\"\ngo build -o xswitcher -ldflags \"-s -w\" --tags static_all src\/*.go\n<\/code><\/pre>\n<p>\nAjouter un autostart selon vos pr\u00e9f\u00e9rences (selon l'environnement de bureau).<\/p>\n<p>\u00c7a fonctionne, \u00abne demande pas de confiture\u00bb (\u224830 secondes de CPU par jour, \u224812 Mo en RSS).<\/p>\n<h2>D\u00e9tails<\/h2>\n<p>\nMaintenant \u2014 les d\u00e9tails.<\/p>\n<p><i>L'ensemble du r\u00e9f\u00e9rentiel \u00e9tait \u00e0 l'origine d\u00e9di\u00e9 \u00e0 mon projet personnel, et je suis trop paresseux pour en cr\u00e9er un autre. Donc, tout est m\u00e9lang\u00e9 (juste dans des dossiers) et couvert par l'AGPL (\u00ab brevet inverse \u00bb).<\/i><\/p>\n<p>Le code xswitcher est \u00e9crit en golang, avec des insertions minimales de C. Ce choix est cens\u00e9 entra\u00eener le moins de travail possible (jusqu'\u00e0 pr\u00e9sent, \u00e7a fonctionne). Cela permet \u00e9galement de connecter les parties manquantes via cgo.<\/p>\n<p>Des commentaires sont dispos\u00e9s dans le texte, indiquant d'o\u00f9 provient chaque \u00e9l\u00e9ment et pourquoi. \u00c9tant donn\u00e9 que le code xneur ne m'a pas \u00ab inspir\u00e9 \u00bb, j'ai pris comme point de d\u00e9part <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/xintrea\/LoLoSwitcher\">loloswitcher<\/a><\/noindex>.<\/p>\n<p>L'utilisation de \"\/dev\/input\/\" a ses avantages (tout est visible, y compris une touche maintenue enfonc\u00e9e avec r\u00e9p\u00e9tition automatique), mais aussi ses inconv\u00e9nients. Les inconv\u00e9nients sont :<\/p>\n<ul>\n<li>La r\u00e9p\u00e9tition automatique (\u00e9v\u00e9nements avec le code \u00ab 2 \u00bb) ne correspond pas \u00e0 la r\u00e9p\u00e9tition sur les \u00e9crans X.<\/li>\n<li>Impossible de voir l'entr\u00e9e via les interfaces X11 (par exemple, VNC fonctionne ainsi).<\/li>\n<li>Un acc\u00e8s root est n\u00e9cessaire.<\/li>\n<\/ul>\n<p>\nD'un autre c\u00f4t\u00e9, il est possible de s'abonner aux \u00e9v\u00e9nements X via \u00ab XSelectExtensionEvent() \u00bb. On peut consulter le <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/freedesktop\/xorg-xinput\/blob\/master\/src\/test.c\">code xinput<\/a><\/noindex>. Je n'ai trouv\u00e9 rien de semblable pour Go, et une \u00e9bauche a donn\u00e9 d'embl\u00e9e une centaine de lignes de code C. Pour l'instant, j'ai mis de c\u00f4t\u00e9.<\/p>\n<p>La sortie \u00ab inverse \u00bb a \u00e9t\u00e9 r\u00e9alis\u00e9e via l'ajout d'un clavier virtuel. Merci \u00e0 l'auteur de keybd_event, mais c'est une abstraction trop haute et il faudra r\u00e9ajuster par la suite. Par exemple, la touche Win droite s\u00e9lectionne la 3\u1d49 ligne. Et en retour, seule la Win gauche est traduite.<\/p>\n<h2>Erreurs connues<\/h2>\n<p><\/p>\n<ul>\n<li>Nous ne savons rien sur l'entr\u00e9e \u00ab composite \u00bb (exemple : \u00bd). <i>En ce moment, ce n'est pas n\u00e9cessaire.<\/i><\/li>\n<li>Nous reproduisons incorrectement la touche Win droite. Dans mon cas, cela perturbe la disposition des accents.<\/li>\n<li>Il n'y a pas d'analyse claire de l'entr\u00e9e. \u00c0 la place, plusieurs fonctions : Compare(), CtrlSequence(), RepeatSequence(), SpaceSequence(). <i>Merci <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/nsmcan\/\" class=\"user_link\">nsmcan<\/a><\/noindex> pour l'attention : j'ai corrig\u00e9 dans le code et ici.<\/i> Avec une certaine probabilit\u00e9, des bugs peuvent survenir lors des remplacements.<br \/>\n<b>\u00c0 cet endroit, je ne sais pas \u00ab comment faire \u00bb et je serais ravi de toute suggestion.<\/b><\/li>\n<li><i>(Oh non)<\/i> utilisation concurrente des canaux (keyboardEvents, miceEvents).<\/li>\n<\/ul>\n<p><\/p>\n<h2>Conclusion<\/h2>\n<p>\nLe code est le plus simple qui soit, proc\u00e9dural. <i>Et aussi b\u00eate que moi.<\/i> Donc, je me console avec l'espoir que n'importe quel technicien pourra \u00e9crire ce qui manque. Et que ce produit ne dispara\u00eetra pas sans soutien, comme la plupart des projets juste pour le plaisir.<\/p>\n<p>Bonne chance !<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/495748\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 xneur \u0432\u044b\u0437\u0432\u0430\u043b\u043e \u0443 \u043c\u0435\u043d\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043f\u043e\u043b\u0433\u043e\u0434\u0430 (\u0441 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c OpenSUSE 15.1 \u043d\u0430 \u043c\u043e\u0438\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u0430\u0445: \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c xneur \u043e\u043a\u043d\u0430 \u0442\u0435\u0440\u044f\u044e\u0442 \u0444\u043e\u043a\u0443\u0441 \u0438 \u0437\u0430\u0431\u0430\u0432\u043d\u043e \u043c\u0435\u0440\u0446\u0430\u044e\u0442 \u0432 \u0442\u0430\u043a\u0442 \u0432\u0432\u043e\u0434\u0430 \u0441 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b). \u00ab\u0410, \u0431\u043b\u0438\u043d, \u043e\u043f\u044f\u0442\u044c \u043d\u0435 \u0432 \u0442\u043e\u0439 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0435 \u043d\u0430\u0447\u0430\u043b \u043d\u0430\u0431\u0438\u0440\u0430\u0442\u044c\u00bb \u2014 \u0432 \u043c\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e \u043d\u0435\u043f\u0440\u0438\u043b\u0438\u0447\u0438\u044f \u0447\u0430\u0441\u0442\u043e. \u0418 \u043f\u043e\u0437\u0438\u0442\u0438\u0432\u0430 \u043d\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442. \u0412 \u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":79738,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-79737","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 xneur \u0432\u044b\u0437\u0432\u0430\u043b\u043e \u0443 \u043c\u0435\u043d\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043f\u043e\u043b\u0433\u043e\u0434\u0430 (\u0441 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c OpenSUSE 15.1 \u043d\u0430 \u043c\u043e\u0438\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u0430\u0445: \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c xneur \u043e\u043a\u043d\u0430 \u0442\u0435\u0440\u044f\u044e\u0442 \u0444\u043e\u043a\u0443\u0441 \u0438 \u0437\u0430\u0431\u0430\u0432\u043d\u043e \u043c\u0435\u0440\u0446\u0430\u044e\u0442 \u0432 \u0442\u0430\u043a\u0442 \u0432\u0432\u043e\u0434\u0430 \u0441.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041d\u043e\u0432\u044b\u0439 \u0430\u043d\u0430\u043b\u043e\u0433 Punto Switcher \u0434\u043b\u044f linux: xswitcher | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 xneur \u0432\u044b\u0437\u0432\u0430\u043b\u043e \u0443 \u043c\u0435\u043d\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043f\u043e\u043b\u0433\u043e\u0434\u0430 (\u0441 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c OpenSUSE 15.1 \u043d\u0430 \u043c\u043e\u0438\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u0430\u0445: \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c xneur \u043e\u043a\u043d\u0430 \u0442\u0435\u0440\u044f\u044e\u0442 \u0444\u043e\u043a\u0443\u0441 \u0438 \u0437\u0430\u0431\u0430\u0432\u043d\u043e \u043c\u0435\u0440\u0446\u0430\u044e\u0442 \u0432 \u0442\u0430\u043a\u0442 \u0432\u0432\u043e\u0434\u0430 \u0441.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-30T05:41:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-30T05:41:58+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Un nouvel analogue de Punto Switcher pour linux : xswitcher | ProHoster","description":"L'arr\u00eat du soutien d'xneur m'a caus\u00e9 des souffrances notables au cours des six derniers mois (avec l'apparition d'OpenSUSE 15.1 sur mes desktops : lorsque xneur est activ\u00e9, les fen\u00eatres perdent le focus et clignotent de mani\u00e8re amusante au rythme de l'entr\u00e9e).","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041d\u043e\u0432\u044b\u0439 \u0430\u043d\u0430\u043b\u043e\u0433 Punto Switcher \u0434\u043b\u044f linux: xswitcher | ProHoster","og:description":"\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 xneur \u0432\u044b\u0437\u0432\u0430\u043b\u043e \u0443 \u043c\u0435\u043d\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043f\u043e\u043b\u0433\u043e\u0434\u0430 (\u0441 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c OpenSUSE 15.1 \u043d\u0430 \u043c\u043e\u0438\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u0430\u0445: \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c xneur \u043e\u043a\u043d\u0430 \u0442\u0435\u0440\u044f\u044e\u0442 \u0444\u043e\u043a\u0443\u0441 \u0438 \u0437\u0430\u0431\u0430\u0432\u043d\u043e \u043c\u0435\u0440\u0446\u0430\u044e\u0442 \u0432 \u0442\u0430\u043a\u0442 \u0432\u0432\u043e\u0434\u0430 \u0441.","og:url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/novyj-analog-punto-switcher-dlya-linux-xswitcher","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-30T05:41:58+00:00","article:modified_time":"2020-04-30T05:41:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"79737","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:32:22","updated":"2022-09-30 15:31:31","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/79737","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=79737"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/79737\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/79738"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=79737"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=79737"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=79737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}