{"id":172,"date":"2020-05-24T06:38:00","date_gmt":"2020-05-24T06:38:00","guid":{"rendered":"http:\/\/www.goncalo.pt\/por\/?p=172"},"modified":"2023-10-07T03:33:40","modified_gmt":"2023-10-07T03:33:40","slug":"2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c","status":"publish","type":"post","link":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/","title":{"rendered":"2020-05-24 &#8211; De volta dos caracteres multi-byte nos terminais de Linux em C++"},"content":{"rendered":"\n<p>Uma imagem de 24 de Maio, em que andava de volta do problema dos caracteres multi-byte, ao criar o Cisco IOS Simulator. <img loading=\"lazy\" decoding=\"async\" alt=\"?\" src=\"https:\/\/static.xx.fbcdn.net\/images\/emoji.php\/v9\/t9f\/1\/16\/1f61b.png\" width=\"16\" height=\"16\"><\/p>\n\n\n\n<p>Descri\u00e7\u00e3o da altura:<\/p>\n\n\n\n<p>\u00abAlgo que muitos n\u00e3o imaginam que se tem de programar quando se cria algo do zero. Os caracteres multi-byte. E irei explicar porque v\u00eaem nas imagens linhas com metade do tamanho, e caracteres esquisitos.<\/p>\n\n\n\n<p>Para quem n\u00e3o sabe, um caractere \u00e9 representado por um byte (normalmente), e um byte vai de 0 a 255. MAS, s\u00f3 metade deles s\u00e3o usados por norma para representar os caracteres que usamos no dia-a-dia, os de 0 a 127, ou melhor, 32-127.<\/p>\n\n\n\n<p>Mas isto n\u00e3o chega para todos os caracteres, onde ficam ent\u00e3o os &#8220;\u00c7\u00e7\u00e1\u00e8\u00f3\u00d9\u00fa&#8221;, etc? E os caracteres Chineses, e etc?<\/p>\n\n\n\n<p>Esses ter\u00e3o de ser representados por v\u00e1rios bytes, 2, 3, etc.<\/p>\n\n\n\n<p>Os Portugueses s\u00e3o representados por norma por 2 bytes, como o &#8220;\u00c7&#8221; que \u00e9 representado pelos bytes 195 e 67.<\/p>\n\n\n\n<p>Agora, eu estava a meio deste c\u00f3digo, e n\u00e3o tenho isto a contar correctamente o tamanho de cada linha, ele conta cada &#8220;\u00e7&#8221; como sendo 2 bytes, e como tem o limite de 80 bytes por linha (80 chars), as linhas com \u00e7 ainda ficam a ocupar s\u00f3 metade.<\/p>\n\n\n\n<p>Al\u00e9m disso, como ele n\u00e3o os reconhece como tendo 2 bytes cada, ele corta-os ao meio, ao chegar \u00e0 posi\u00e7\u00e3o 80 de cada linha, mete metade do caractere \u00e7 numa linha (o byte 195) e o byte 67 na seguinte, e assim aparecem 2 sinais estranhos, pois aquilo n\u00e3o \u00e9 um \u00e7.<\/p>\n\n\n\n<p>Abaixo, meto um &#8220;o&#8221; no meio, e isto \u00e9 suficiente para fazer com que o \u00faltimo &#8220;\u00e7&#8221; da linha ocupe as colunas 79 e 80, e na linha seguinte, as 0 e 1, e j\u00e1 fica tudo bem.<\/p>\n\n\n\n<p>Isto claro est\u00e1 errado, tenho de preparar esta parte, para que os caracteres sejam bem contados, e a consola fique a funcionar bem.<\/p>\n\n\n\n<p>Isto faz parte do simulador de routers Cisco que estou a desenvolver, o simulador em si nem aceita &#8220;\u00e7&#8221; porque os routers n\u00e3o aceitam, eu n\u00e3o precisava de estar a ter este trabalho pois l\u00e1 cada caractere s\u00f3 ocupa um byte, mas estou a t\u00ea-lo porque um dia vou utilizar isto no universal translator que vou desenvolver.<\/p>\n\n\n\n<p>De qualquer das formas, espero que tenham gostado de ver mais um passo do que \u00e9 criar algo do zero, aquilo que d\u00e3o como garantido todos os dias ao usar, mas que d\u00e1 mais trabalho do que parece ao ser criado do zero.<\/p>\n\n\n\n<p>2020-05-24.\u00bb<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uma imagem de 24 de Maio, em que andava de volta do problema dos caracteres multi-byte, ao criar o Cisco<\/p>\n","protected":false},"author":1,"featured_media":173,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,5,3,44,4],"tags":[7,39,41,207,63,40,45,46,10,64,43,37],"class_list":["post-172","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-networking","category-programacao","category-projectos","category-sistemas","category-softwares","tag-c","tag-cisco","tag-cisco-ios","tag-dev","tag-emulator","tag-ios","tag-key-presses","tag-keyboard","tag-linux","tag-multi-byte-characters","tag-simulator","tag-terminal"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira\" \/>\n<meta property=\"og:description\" content=\"Uma imagem de 24 de Maio, em que andava de volta do problema dos caracteres multi-byte, ao criar o Cisco\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\" \/>\n<meta property=\"og:site_name\" content=\"Gon\u00e7alo Ferreira\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-24T06:38:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-07T03:33:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776\" \/>\n\t<meta property=\"og:image:width\" content=\"1366\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"gnmf\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"gnmf\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\"},\"author\":{\"name\":\"gnmf\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd\"},\"headline\":\"2020-05-24 &#8211; De volta dos caracteres multi-byte nos terminais de Linux em C++\",\"datePublished\":\"2020-05-24T06:38:00+00:00\",\"dateModified\":\"2023-10-07T03:33:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\"},\"wordCount\":416,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776\",\"keywords\":[\"C++\",\"Cisco\",\"Cisco IOS\",\"Dev\",\"Emulator\",\"IOS\",\"Key Presses\",\"Keyboard\",\"Linux\",\"Multi-Byte Characters\",\"Simulator\",\"Terminal\"],\"articleSection\":[\"Networking\",\"Programa\u00e7\u00e3o\",\"Projectos\",\"Sistemas\",\"Softwares\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\",\"name\":\"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776\",\"datePublished\":\"2020-05-24T06:38:00+00:00\",\"dateModified\":\"2023-10-07T03:33:40+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776\",\"width\":1366,\"height\":768,\"caption\":\"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.goncalo.pt\/por\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"2020-05-24 &#8211; De volta dos caracteres multi-byte nos terminais de Linux em C++\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"name\":\"Gon\u00e7alo Ferreira\",\"description\":\"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!\",\"publisher\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\",\"name\":\"Gon\u00e7alo Ferreira\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"width\":389,\"height\":90,\"caption\":\"Gon\u00e7alo Ferreira\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"http:\/\/www.linkedin.com\/in\/GoncaloPT\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd\",\"name\":\"gnmf\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g\",\"caption\":\"gnmf\"},\"sameAs\":[\"http:\/\/www.goncalo.pt\/por\"],\"url\":\"https:\/\/www.goncalo.pt\/por\/author\/gnmf\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/","og_locale":"en_US","og_type":"article","og_title":"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira","og_description":"Uma imagem de 24 de Maio, em que andava de volta do problema dos caracteres multi-byte, ao criar o Cisco","og_url":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/","og_site_name":"Gon\u00e7alo Ferreira","article_published_time":"2020-05-24T06:38:00+00:00","article_modified_time":"2023-10-07T03:33:40+00:00","og_image":[{"width":1366,"height":768,"url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776","type":"image\/png"}],"author":"gnmf","twitter_card":"summary_large_image","twitter_misc":{"Written by":"gnmf","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#article","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/"},"author":{"name":"gnmf","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd"},"headline":"2020-05-24 &#8211; De volta dos caracteres multi-byte nos terminais de Linux em C++","datePublished":"2020-05-24T06:38:00+00:00","dateModified":"2023-10-07T03:33:40+00:00","mainEntityOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/"},"wordCount":416,"commentCount":0,"publisher":{"@id":"https:\/\/www.goncalo.pt\/por\/#organization"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776","keywords":["C++","Cisco","Cisco IOS","Dev","Emulator","IOS","Key Presses","Keyboard","Linux","Multi-Byte Characters","Simulator","Terminal"],"articleSection":["Networking","Programa\u00e7\u00e3o","Projectos","Sistemas","Softwares"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/","url":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/","name":"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++ - Gon\u00e7alo Ferreira","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776","datePublished":"2020-05-24T06:38:00+00:00","dateModified":"2023-10-07T03:33:40+00:00","breadcrumb":{"@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#primaryimage","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-05-24-Playing-with-multi-byte-characters-in-Linux-Terminal-with-C.png?v=1618147776","width":1366,"height":768,"caption":"2020-05-24 - De volta dos caracteres multi-byte nos terminais de Linux em C++"},{"@type":"BreadcrumbList","@id":"https:\/\/www.goncalo.pt\/por\/2020\/05\/24\/2020-05-24-de-volta-dos-caracteres-multi-byte-nos-terminais-de-linux-em-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.goncalo.pt\/por\/"},{"@type":"ListItem","position":2,"name":"2020-05-24 &#8211; De volta dos caracteres multi-byte nos terminais de Linux em C++"}]},{"@type":"WebSite","@id":"https:\/\/www.goncalo.pt\/por\/#website","url":"https:\/\/www.goncalo.pt\/por\/","name":"Gon\u00e7alo Ferreira","description":"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!","publisher":{"@id":"https:\/\/www.goncalo.pt\/por\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.goncalo.pt\/por\/#organization","name":"Gon\u00e7alo Ferreira","url":"https:\/\/www.goncalo.pt\/por\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","width":389,"height":90,"caption":"Gon\u00e7alo Ferreira"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/"},"sameAs":["http:\/\/www.linkedin.com\/in\/GoncaloPT\/"]},{"@type":"Person","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd","name":"gnmf","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g","caption":"gnmf"},"sameAs":["http:\/\/www.goncalo.pt\/por"],"url":"https:\/\/www.goncalo.pt\/por\/author\/gnmf\/"}]}},"_links":{"self":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/172"}],"collection":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/comments?post=172"}],"version-history":[{"count":1,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/172\/revisions"}],"predecessor-version":[{"id":174,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/172\/revisions\/174"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media\/173"}],"wp:attachment":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media?parent=172"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/categories?post=172"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/tags?post=172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}