{"id":1817,"date":"2016-01-09T12:37:00","date_gmt":"2016-01-09T09:37:00","guid":{"rendered":"http:\/\/infokam.eu\/blog\/?p=1817"},"modified":"2016-01-09T13:20:24","modified_gmt":"2016-01-09T10:20:24","slug":"cum-sa-scriem-cu-diacritice-si-alte-trucuri-are-ne-simplifica-viata","status":"publish","type":"post","link":"https:\/\/infokam.eu\/blog\/2016\/01\/09\/cum-sa-scriem-cu-diacritice-si-alte-trucuri-are-ne-simplifica-viata\/","title":{"rendered":"Cum s\u0103 scriem cu diacritice \u015fi alte trucuri care ne simplific\u0103 via\u0163a"},"content":{"rendered":"<p align=\"right\">Anton Kovacs \u2013 <a href=\"http:\/\/www.infokam.ro\">www.infokam.ro<\/a><\/p>\n<p><font size=\"4\">Unii scriu \u201cpeste\u201d, al\u0163ii scriu \u201cpeshte\u201d, cunosc chiar un politician care spune \u201cpesce\u201d. <\/font>Unii spun \u201ctoparlan\u201d, al\u0163ii spun \u201ctzoparlan\u201d.<\/p>\n<p><font size=\"4\">Cum putem \u00eens\u0103 s\u0103 scriem corect \u00een limba rom\u00e2n\u0103, mai precis, cum s\u0103 scriem cu diacritice, cu <strong>\u00c2<\/strong>, <strong>\u0102<\/strong>, <strong>\u00ce<\/strong>, <strong>\u015e<\/strong>, <strong>\u0162 <\/strong>? \u015ei s\u0103 facem acest lucru nu numai \u00een Word (unde avem macro-uri) ci \u00een orice program, inclusiv Facebook&nbsp; \ud83d\ude42 <\/font><\/p>\n<p>Una din solu\u0163ii ar fi s\u0103 ne cump\u0103r\u0103m o tastatur\u0103 cu layout rom\u00e2nesc, ceva de genul \u0103sta<\/p>\n<p><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/poza11.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"203\" title=\"poza1\" style=\"display: inline; background-image: none;\" alt=\"poza1\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/poza1_thumb1.jpg\" border=\"0\"><\/a><\/p>\n<p>Dar poate c\u0103 avem un laptop c\u0103ruia nu putem s\u0103-i schimb\u0103m tastatura, sau poate tastatura noastr\u0103 este de calitate \u015fi nu dorim s\u0103 o schimb\u0103m. Sau poate ne-am obi\u015fnuit o via\u0163\u0103 cu o tastatur\u0103 cu layout US \u015fi din instinct \u015ftim c\u0103 <font color=\"#444444\"><strong>@<\/strong><\/font> se afl\u0103 pe tasta 2 sau litera <strong>Y<\/strong> se afl\u0103 pe primul r\u00e2nd, dup\u0103 tastele&nbsp; QWERT \u015fi nu undeva pe cel de-al 3-lea r\u00e2nd.<\/p>\n<p>O alt\u0103 solu\u0163ie ar fi s\u0103 configur\u0103m sistemul de operare pentru a folosi at\u00e2t layout US c\u00e2t \u015fi layout RO, urm\u00e2nd s\u0103 comut\u0103m pe layout-ul RO atunci c\u00e2nd dorim s\u0103 scriem cu diacritice. \u015ei bine\u00een\u0163eles s\u0103 \u0163inem minte c\u0103 litera <strong>\u0102<\/strong> se ob\u0163ine ap\u0103s\u00e2nd tasta \\, c\u0103 pentru litera <strong>\u00ce<\/strong> trebuie s\u0103 tast\u0103m&nbsp; <strong>], \u0162<\/strong>-ul va fi tasta al\u0103turat\u0103 \u015fi a\u015fa mai departe. Cam complicat.<\/p>\n<p>Ce frumos \u015fi simplu de re\u0163inut ar fi dac\u0103 pentru a tasta <strong>\u0103<\/strong> am putea folosi a+o alt\u0103 tast\u0103 aflat\u0103 la \u00eendem\u00e2n\u0103, de exemplu WinKey, la fel s\u0103 putem tasta <strong>\u00ee<\/strong> ap\u0103s\u00e2nd i+Win Key s.a.m.d.<\/p>\n<p align=\"center\"><\/p>\n<div align=\"center\">\n<table width=\"200\" align=\"center\" border=\"0\" cellspacing=\"5\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td width=\"200\" valign=\"top\">\n<p align=\"center\"><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/winkey1.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"105\" height=\"104\" title=\"winkey\" style=\"margin: 0px; display: inline; background-image: none;\" alt=\"winkey\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/winkey_thumb1.jpg\" border=\"0\"><\/a><\/p>\n<p align=\"center\"><em> Tasta WinKey<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p align=\"center\">\n<\/p>\n<p>Cum am putea face acest lucru ?<\/p>\n<p>Simplu.<\/p>\n<p>Desc\u0103rc\u0103m de <a href=\"www.infokam.ro\/Programe\/autoHotkey.zip\"><strong>aici<\/strong><\/a> pachetul care con\u0163ine un mic program care se nume\u015fte AutoHotKey, dezarhivam pachetul descarcat \u015fi salvam folderul din con\u0163inut undeva pe hardisk.<\/p>\n<p>Vom observa c\u0103 \u00een pachet exist\u0103 dou\u0103 fi\u015fiere, AutoHotkey.exe \u015fi Autohotkey.ahk<\/p>\n<p><\/p>\n<p><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"137\" title=\"image\" style=\"display: inline; background-image: none;\" alt=\"image\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image_thumb7.png\" border=\"0\"><\/a><\/p>\n<p align=\"justify\">Nu mai trebuie dec\u00e2t s\u0103 lans\u0103m Autohotkey.exe (dublu click pe el) dup\u0103 care tast\u00e2nd <strong>Winkey+I<\/strong> vom ob\u0163ine<strong> \u00ee<\/strong>, cu <strong>winkey+a<\/strong> vom ob\u0163ine<strong> \u0103<\/strong>, <strong>winkey+s<\/strong> va rezulta <strong>\u015f<\/strong>, <strong>winkey+t=\u0163<\/strong> iar <strong>winkey+q=\u00e2<\/strong><\/p>\n<p align=\"justify\">Ap\u0103s\u00e2nd <strong>winkey+i+Shift<\/strong> vom ob\u0163ine <strong>\u00ce,<\/strong> <strong>winkey+a+Shift=\u0102<\/strong> \u015fi a\u015fa mai departe. <\/p>\n<p align=\"justify\"><strong><font color=\"#ff0000\" size=\"3\">Deci, Winkey+litera=litera mic\u0103 cu diacritic iar WinKey+litera+Shift=litera mare cu diacritic <\/font><\/strong>(cu excep\u0163ia \u00e2 \u015fi \u00c2 pentru care vom tasta WinKey+q, respectiv WinKey+q+Shift)<\/p>\n<p align=\"justify\">Majoritatea celor care citesc acest text se vor opri aici dar, cei mai \u00eendr\u0103zne\u0163i vor c\u0103uta s\u0103 fac\u0103 \u015fi alte lucruri cu acest program. De exemplu, dac\u0103 tot am g\u0103sit o solu\u0163ie pentru remaparea unor taste, oare nu am putea \u00eencerca s\u0103 \u201cremap\u0103m\u201d \u015fi tastele nouse-ului ?<\/p>\n<p align=\"justify\">De exemplu, dorim s\u0103 schimb\u0103m nivelul volumului f\u0103r\u0103 s\u0103 mai d\u0103m click pe iconul destinat acestui lucru.<\/p>\n<p align=\"justify\">Presupun\u00e2nd c\u0103 \u00een acest moment la dumneavoastr\u0103 \u00een calculator ruleaz\u0103 Autohotkey \u015fi nu a\u0163i modificat fisierul *.ahk ve\u0163i observa c\u0103 dac\u0103 ve\u0163i ap\u0103sa tasta din dreapta a mouse-ului \u015fi \u00eenv\u00e2rti\u0163i roti\u0163a de scrool spre \u00eenainte volumul sunetului va cre\u015fte, iar dac\u0103 rotim roti\u0163a \u00eenapoi volumul scade.<\/p>\n<p align=\"justify\">Poate dorim s\u0103 facem cumva s\u0103 complet\u0103m cu un simplu click username-ul\/emailul \u015fi parola pe site-urile unde ni se cere s\u0103 ne logam. Nimic mai simplu, ap\u0103s\u0103m butonul din mijloc\/roti\u0163a de scrool al mouse-ului \u015fi cele dou\u0103 c\u00e2mpuri se completeaz\u0103 automat.<\/p>\n<p align=\"justify\"><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"399\" title=\"image\" style=\"display: inline; background-image: none;\" alt=\"image\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image_thumb9.png\" border=\"0\"><\/a><\/p>\n<p align=\"justify\">Pentru a ad\u0103uga noi func\u0163ii sau pentru a modifica func\u0163iile existente nu trebuie dec\u0103t s\u0103 deschidem fisierul Autohotkey.ahk cu notepad \u015fi s\u0103 facem modific\u0103rile necesare dup\u0103 care salv\u0103m fisierul. <\/p>\n<p align=\"justify\">Dup\u0103 salvare va trebui s\u0103 \u201cre\u00eenc\u0103rc\u0103m\u201d scriptul repornind Autohotkey.exe. <\/p>\n<p align=\"justify\">Pentru \u00eenceput schimba\u0163i doar user-id-ul \u015fi parola (vezi textele marcate cu verde de mai jos), celelalte func\u0163ii descrise sunt deja implementate.<\/p>\n<p align=\"justify\"><strong>A\u015fa arat\u0103 fisierul autohotkey.ahk creat de c\u0103tre mine: <\/strong>(r\u00e2ndurile care \u00eencep cu <strong>;<\/strong> sunt doar comentarii explicative \u015fi nu sunt necesare)<\/p>\n<table width=\"500\" border=\"3\" cellspacing=\"5\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td width=\"500\" valign=\"top\">\n<p>; Mouse buton dreapta si rotita de scrool in fata mareste volumul<\/p>\n<p>~RButton &amp; WheelUp::<br \/> Send {Volume_Up 3}<br \/> return<\/p>\n<p>; Mouse buton dreapta si rotita de scrool in spate scade volumul<\/p>\n<p>~RButton &amp; WheelDown::<br \/> Send {Volume_Down 3}<br \/> return<\/p>\n<p>; Mouse buton dreapta si apasa scrool\/butonul din mijloc opreste sonorul<\/p>\n<p>~RButton &amp; Mbutton::<br \/> Send {Volume_Mute}<br \/> return<\/p>\n<p> ; Mouse apasa rotita de scrool\/butonul din mijloc pentru a completa user ID si parola<\/p>\n<p>MButton::<\/p>\n<p>SetKeyDelay 10<\/p>\n<p>Send <font style=\"background-color: rgb(0, 255, 0);\">USER ID<font style=\"background-color: rgb(255, 255, 255);\">&nbsp;&nbsp; In locul textului marcat cu verde tasta\u0163i propriul ID <\/font><\/font><br \/> Send {Tab}<br \/> Send <font style=\"background-color: rgb(0, 255, 0);\">PAROLA<font style=\"background-color: rgb(255, 255, 255);\">&nbsp; <\/font><font color=\"#ffffff\"><font color=\"#000000\" style=\"background-color: rgb(255, 255, 255);\">In locul textului marcat cu verde scrie\u0163i propria parol\u0103<\/font><\/font><\/font><br \/> Send {Tab}<br \/> Send {Enter}<br \/> return<\/p>\n<p> ; A de la ROMANIA<\/p>\n<p>#+Q::<br \/> Send {ASC 0194}<br \/> Return<\/p>\n<p>; a de la romania<\/p>\n<p>#q::<br \/> Send {ASC 0226}<br \/> Return<\/p>\n<p> ; I de la INCEPUT<\/p>\n<p>#+I::<br \/> Send {ASC 0206}<br \/> Return<\/p>\n<p>; i de la inceput<\/p>\n<p>#i::<br \/> Send {ASC 0238}<br \/> Return<\/p>\n<p>; A de la PAPADIE<\/p>\n<p>#+A::<br \/>SendUnicodeChar(0x0102)<br \/> Return<\/p>\n<p>; a de la papadie<\/p>\n<p>#a::<br \/>SendUnicodeChar(0x0103)<br \/> Return<\/p>\n<p>; S de la SARPE<\/p>\n<p>#+S::<br \/>SendUnicodeChar(0x015E)<br \/> Return<\/p>\n<p>; s de la sarpe<\/p>\n<p>#s::<br \/>SendUnicodeChar(0x015F)<br \/>Return<\/p>\n<p>; T de la TOAPA<\/p>\n<p>#+T::<br \/>SendUnicodeChar(0x0162)<br \/> Return<\/p>\n<p>; t de la toapa<\/p>\n<p>#t::<br \/>SendUnicodeChar(0x0163)<br \/>Return<\/p>\n<p><font color=\"#ff0000\">; Nu modifica nimic din ce e scris mai jos<\/font><\/p>\n<p><font color=\"#ff0000\">SendUnicodeChar(charCode)<br \/>{<br \/>&nbsp;&nbsp;&nbsp;&nbsp; VarSetCapacity(ki, 28 * 2, 0)<br \/>&nbsp;&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki + 0, 1)<br \/>&nbsp;&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki + 6, charCode)<br \/>&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki + 8, 4)<br \/>&nbsp;&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki +28, 1)<br \/>&nbsp;&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki +34, charCode)<br \/>&nbsp;&nbsp;&nbsp;&nbsp; EncodeInteger(&amp;ki +36, 4|2)<\/font><\/p>\n<p><font color=\"#ff0000\">&nbsp;&nbsp;&nbsp; DllCall(&#8220;SendInput&#8221;, &#8220;UInt&#8221;, 2, &#8220;UInt&#8221;, &amp;ki, &#8220;Int&#8221;, 28)<br \/> }<\/font><\/p>\n<p><font color=\"#ff0000\">EncodeInteger(ref, val)<br \/> {<br \/>&nbsp;&nbsp;&nbsp;&nbsp; DllCall(&#8220;ntdll\\RtlFillMemoryUlong&#8221;, &#8220;Uint&#8221;, ref, &#8220;Uint&#8221;, 4, &#8220;Uint&#8221;, val)<br \/> }<\/font><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Posibilit\u0103\u0163ile oferite de acest program sunt aproape nelimitate, de exemplu, putem s\u0103 ad\u0103ug\u0103m un mic script care la ap\u0103sarea unei taste (de exemplu F10) s\u0103 deschid\u0103 un program oarecare, de exemplu Notepad<\/p>\n<table width=\"500\" border=\"3\" cellspacing=\"5\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td width=\"500\" valign=\"top\">\n<p>F10::<br \/>\nRun, Notepad, , max<\/p>\n<p>Return<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>sau, un script care la ap\u0103sarea unei taste (de exemplu F11) s\u0103 \u201cscrie automat\u201d un text oarecare<\/p>\n<table width=\"500\" border=\"3\" cellspacing=\"5\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td width=\"500\" valign=\"top\">\n<p>F11::<br \/>\nsend Dincolo de pamant si infinit<br \/>\nSend {Enter}<br \/>\nsend Catam sa aflu cerul unde vine.<br \/>\nSend {Enter}<br \/>\nsend Si-un glas solemn atunci s-a auzit:<br \/>\nSend {Enter}<br \/>\nsend Si cerul si infernul sunt \u00een tine.<br \/>\nSend {Enter}<br \/>\nReturn<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><\/p>\n<p><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"574\" height=\"377\" title=\"image\" style=\"display: inline; background-image: none;\" alt=\"image\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/image_thumb8.png\" border=\"0\"><\/a><\/p>\n<p>Cei care vor dori s\u0103 \u00ee\u015fi creeze propriile scripturi vor g\u0103si toat\u0103 documenta\u0163ia necesar\u0103<strong> <\/strong><a href=\"https:\/\/autohotkey.com\/docs\/AutoHotkey.htm\"><strong>aici<\/strong><\/a> <\/p>\n<p>\u015ei \u00een final, dac\u0103 dorim ca acest program s\u0103 porneasc\u0103 \u201cautomat\u201d odat\u0103 cu pornirea Windowsului nu trebuie dec\u0103t s\u0103 creem un shortcut la AutoHotkey.exe (click dreapta pe fi\u015fier \u015fi \u201cCreate Shortcut\u201d) \u015fi s\u0103-l mut\u0103m \u00een folderul \u201cStartup\u201d<\/p>\n<p>Poate pentru \u00eenceput nu ar strica s\u0103 v\u0103 juca\u0163i cu dou\u0103 copii ale programului, unul \u201cadev\u0103rat\u201d, care porne\u015fte odat\u0103 cu Windowsul, iar altul \u201cde teste\u201d, \u00een alt folder. Bine\u00een\u0163eles c\u0103 \u00een aceast\u0103 situa\u0163ie c\u00e2nd folosi\u0163i una din copii cealalt\u0103 va trebui s\u0103 fie oprit\u0103.<\/p>\n<p><a href=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/poza22.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"615\" title=\"poza2\" style=\"display: inline; background-image: none;\" alt=\"poza2\" src=\"https:\/\/infokam.eu\/blog\/wp-content\/uploads\/2016\/01\/poza2_thumb2.jpg\" border=\"0\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Anton Kovacs \u2013 www.infokam.ro Unii scriu \u201cpeste\u201d, al\u0163ii scriu \u201cpeshte\u201d, cunosc chiar un politician care spune \u201cpesce\u201d. Unii spun \u201ctoparlan\u201d, al\u0163ii spun \u201ctzoparlan\u201d. Cum putem \u00eens\u0103 s\u0103 scriem corect \u00een limba rom\u00e2n\u0103, mai precis, cum s\u0103 scriem cu diacritice, cu \u00c2, \u0102, \u00ce, \u015e, \u0162 ? \u015ei s\u0103 facem acest lucru nu numai \u00een Word [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28],"tags":[282,283,284],"class_list":["post-1817","post","type-post","status-publish","format-standard","hentry","category-it","tag-diactritice","tag-limba-romana","tag-tastatura"],"_links":{"self":[{"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/posts\/1817","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/comments?post=1817"}],"version-history":[{"count":13,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/posts\/1817\/revisions"}],"predecessor-version":[{"id":1834,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/posts\/1817\/revisions\/1834"}],"wp:attachment":[{"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/media?parent=1817"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/categories?post=1817"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infokam.eu\/blog\/wp-json\/wp\/v2\/tags?post=1817"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}