Ремесло программиста

Объявление

форум на движке phpBB доступен для тестирования
www.strategia.space
www.strategia.space/forum/
по предложению Лиса - канал на Matrix - #remdev:matrix.org

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Ремесло программиста » Яр » А вот и я опять.


А вот и я опять.

Сообщений 31 страница 60 из 89

31

budden написал(а):

программирование-по-русски.рф/сводка-с-фронта.яргт

- Эк-"скъюз"-ми... (или "сожмите меня покрепче"), однако, переводя недавно сию MDN-статью, - не мог не заметить, с какой лёгкостью и на полном автомате создаются песочницы с примерами кода, который мной был изменён или введён на странице перевода. Причём за это никто никого не ругает...
- Наоборот, приветствуется создание дополнительного материала, помогающего новичкам освоить тот или иной способ программирования.
Вот маленький, но живой и действующий примерчик "оттудова": (редактируйте текст внутри окна)
[html]
<head>
<title>Rich Text Editor</title>
<script type="text/javascript">
var oDoc, sDefTxt;

function initDoc() {
  oDoc = document.getElementById("textBox");
  sDefTxt = oDoc.innerHTML;
  if (document.compForm.switchMode.checked) { setDocMode(true); }
}

function formatDoc(sCmd, sValue) {
  if (validateMode()) { document.execCommand(sCmd, false, sValue); oDoc.focus(); }
}

function validateMode() {
  if (!document.compForm.switchMode.checked) { return true ; }
  alert("Uncheck \"Show HTML\"."); /* убрать галочку из "Показать HTML" */
  oDoc.focus();
  return false;
}

function setDocMode(bToSource) {
  var oContent;
  if (bToSource) {
    oContent = document.createTextNode(oDoc.innerHTML);
    oDoc.innerHTML = "";
    var oPre = document.createElement("pre");
    oDoc.contentEditable = false;
    oPre.id = "sourceText";
    oPre.contentEditable = true;
    oPre.appendChild(oContent);
    oDoc.appendChild(oPre);
    document.execCommand("defaultParagraphSeparator", false, "div");
  } else {
    if (document.all) {
      oDoc.innerHTML = oDoc.innerText;
    } else {
      oContent = document.createRange();
      oContent.selectNodeContents(oDoc.firstChild);
      oDoc.innerHTML = oContent.toString();
    }
    oDoc.contentEditable = true;
  }
  oDoc.focus();
}

function printDoc() {
  if (!validateMode()) { return; }
  var oPrntWin = window.open("","_blank","width=450,height=470,left=400,top=100,menubar=yes,toolbar=no,location=no,scrollbars=yes");
  oPrntWin.document.open();
  oPrntWin.document.write("<!doctype html><html><head><title>Print<\/title><\/head><body onload=\"print();\">" + oDoc.innerHTML + "<\/body><\/html>");
  oPrntWin.document.close(); /*  */
}
</script>

<style type="text/css">
form { /*  grid*/
  display: inline-block; 
  background-color: rgba(180,180,180,.8);
  border: 1px solid rgba(155,155,155,.6);
}
.intLink { cursor: pointer; }
img.intLink { border: 0; }
#toolBar1 select { font-size:10px; background-color: #eff;}
#textBox {
  min-width: 500px;
  height: 300px;
  border: 1px solid rgba(155,155,155,.6);
  padding: 12px;
  overflow: scroll;
  background-color: #eff;
}
#textBox #sourceText {
  padding: 0;
  margin: 0;
  max-width: 800px;
  min-height: 200px;
}
#switchBox, label, #btn { cursor: pointer; }
</style>
</head>
<body onload="initDoc();">
 
<form name="compForm" method="post" action="sample.php" onsubmit="if(validateMode()){this.myDoc.value=oDoc.innerHTML;return true;}return false;">
<input id="put" type="hidden" name="myDoc">

<div id="toolBar1">
<select onchange="formatDoc('formatblock',this[this.selectedIndex].value);this.selectedIndex=0;">
<option selected>- формат -</option>
<option value="h1">Title 1 &lt;h1&gt;</option>
<option value="h2">Title 2 &lt;h2&gt;</option>
<option value="h3">Title 3 &lt;h3&gt;</option>
<option value="h4">Title 4 &lt;h4&gt;</option>
<option value="h5">Title 5 &lt;h5&gt;</option>
<option value="h6">Подзаголовок &lt;h6&gt;</option>
<option value="p">Параграф &lt;p&gt;</option>
<option value="pre">Preformatted &lt;pre&gt;</option>
</select>
<select onchange="formatDoc('fontname',this[this.selectedIndex].value);this.selectedIndex=0;">
<option class="heading" selected>- шрифт -</option>
<option>Arial</option>
<option>Arial Black</option>
<option>Courier New</option>
<option>Times New Roman</option>
</select>
<select onchange="formatDoc('fontsize',this[this.selectedIndex].value);this.selectedIndex=0;">
<option class="heading" selected>- размер -</option>
<option value="1">Малюсенький</option>
<option value="2">Маленький</option>
<option value="3">Нормальный</option>
<option value="4">Большеват</option>
<option value="5">Большой</option>
<option value="6">Большущий</option>
<option value="7">Огромный</option>
</select>
<select onchange="formatDoc('forecolor',this[this.selectedIndex].value);this.selectedIndex=0;">
<option class="heading" selected>- цвет -</option>
<option value="red">Красный</option>
<option value="blue">Синий</option>
<option value="green">Зеленый</option>
<option value="black">Чёрный</option>
</select>
<select onchange="formatDoc('backcolor',this[this.selectedIndex].value);this.selectedIndex=0;">
<option class="heading" selected>- фон -</option>
<option value="#faa">Красень</option>
<option value="#afa">Зелень</option>
<option value="#aaf">Синь</option>
</select>
</div>
<div id="toolBar2">
<img class="intLink" title="Чистка" onclick="if(validateMode()&&confirm('Вы уверены?')){oDoc.innerHTML=sDefTxt};" src="data:image/gif;base64,R0lGODlhFgAWAIQbAD04KTRLYzFRjlldZl9vj1dusY14WYODhpWIbbSVFY6O7IOXw5qbms+wUbCztca0ccS4kdDQjdTLtMrL1O3YitHa7OPcsd/f4PfvrvDv8Pv5xv///////////////////yH5BAEKAB8ALAAAAAAWABYAAAV84CeOZGmeaKqubMteyzK547QoBcFWTm/jgsHq4rhMLoxFIehQQSAWR+Z4IAyaJ0kEgtFoLIzLwRE4oCQWrxoTOTAIhMCZ0tVgMBQKZHAYyFEWEV14eQ8IflhnEHmFDQkAiSkQCI2PDC4QBg+OAJc0ewadNCOgo6anqKkoIQA7" />
<img class="intLink" title="Печать" onclick="printDoc();" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oEBxcZFmGboiwAAAAIdEVYdENvbW1lbnQA9syWvwAAAuFJREFUOMvtlUtsjFEUx//n3nn0YdpBh1abRpt4LFqtqkc3jRKkNEIsiIRIBBEhJJpKlIVo4m1RRMKKjQiRMJRUqUdKPT71qpIpiRKPaqdF55tv5vvusZjQTjOlseUkd3Xu/3dPzusC/22wtu2wRn+jG5So/OCDh8ycMJDflehMlkJkVK7KUYN+ufzA/RttH76zaVocDptRxzQtNi3mRWuPc+6cKtlXZ/sddP2uu9uXlmYXZ6Qm8v4Tz8lhF1H+zDQXt7S8oLMXtbF4e8QaFHjj3kbP2MzkktHpiTjp9VH6iHiA+whtAsX5brpwueMGdONdf/2A4M7ukDs1JW662+XkqTkeUoqjKtOjm2h53YFL15pSJ04Zc94wdtibr26fXlC2mzRvBccEbz2kiRFD414tKMlEZbVGT33+qCoHgha81SWYsew0r1uzfNylmtpx80pngQQ91LwVk2JGvGnfvZG6YcYRAT16GFtW5kKKfo1EQLtfh5Q2etT0BIWF+aitq4fDbk+ImYo1OxvGF03waFJQvBCkvDffRyEtxQiFFYgAZTHS0zwAGD7fG5TNnYNTp8/FzvGwJOfmgG7GOx0SAKKgQgDMgKBI0NJGMEImpGDk5+WACEwEd0ywblhGUZ4Hw5OdUekRBLT7DTgdEgxACsIznx8zpmWh7k4rkpJcuHDxCul6MDsmmBXDlWCH2+XozSgBnzsNCEE4euYV4pwCpsWYPW0UHDYBKSWu1NYjENDReqtKjwn2+zvtTc1vMSTB/mvev/WEYSlASsLimcOhOBJxw+N3aP/SjefNL5GePZmpu4kG7OPr1+tOfPyUu3BecWYKcwQcDFmwFKAUo90fhKDInBCAmvqnyMgqUEagQwCoHBDc1rjv9pIlD8IbVkz6qYViIBQGTJPx4k0XpIgEZoRN1Da0cij4VfR0ta3WvBXH/rjdCufv6R2zPgPH/e4pxSBCpeatqPrjNiso203/5s/zA171Mv8+w1LOAAAAAElFTkSuQmCC">
<img class="intLink" title="Назад" onclick="formatDoc('undo');" src="data:image/gif;base64,R0lGODlhFgAWAOMKADljwliE33mOrpGjuYKl8aezxqPD+7/I19DV3NHa7P///////////////////////yH5BAEKAA8ALAAAAAAWABYAAARR8MlJq7046807TkaYeJJBnES4EeUJvIGapWYAC0CsocQ7SDlWJkAkCA6ToMYWIARGQF3mRQVIEjkkSVLIbSfEwhdRIH4fh/DZMICe3/C4nBQBADs=" />
<img class="intLink" title="Вперёд" onclick="formatDoc('redo');" src="data:image/gif;base64,R0lGODlhFgAWAMIHAB1ChDljwl9vj1iE34Kl8aPD+7/I1////yH5BAEKAAcALAAAAAAWABYAAANKeLrc/jDKSesyphi7SiEgsVXZEATDICqBVJjpqWZt9NaEDNbQK1wCQsxlYnxMAImhyDoFAElJasRRvAZVRqqQXUy7Cgx4TC6bswkAOw==" />
<img class="intLink" title="Удалить форматирование" onclick="formatDoc('removeFormat')" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9oECQMCKPI8CIIAAAAIdEVYdENvbW1lbnQA9syWvwAAAuhJREFUOMtjYBgFxAB501ZWBvVaL2nHnlmk6mXCJbF69zU+Hz/9fB5O1lx+bg45qhl8/fYr5it3XrP/YWTUvvvk3VeqGXz70TvbJy8+Wv39+2/Hz19/mGwjZzuTYjALuoBv9jImaXHeyD3H7kU8fPj2ICML8z92dlbtMzdeiG3fco7J08foH1kurkm3E9iw54YvKwuTuom+LPt/BgbWf3//sf37/1/c02cCG1lB8f//f95DZx74MTMzshhoSm6szrQ/a6Ir/Z2RkfEjBxuLYFpDiDi6Af///2ckaHBp7+7wmavP5n76+P2ClrLIYl8H9W36auJCbCxM4szMTJac7Kza////R3H1w2cfWAgafPbqs5g7D95++/P1B4+ECK8tAwMDw/1H7159+/7r7ZcvPz4fOHbzEwMDwx8GBgaGnNatfHZx8zqrJ+4VJBh5CQEGOySEua/v3n7hXmqI8WUGBgYGL3vVG7fuPK3i5GD9/fja7ZsMDAzMG/Ze52mZeSj4yu1XEq/ff7W5dvfVAS1lsXc4Db7z8C3r8p7Qjf///2dnZGxlqJuyr3rPqQd/Hhyu7oSpYWScylDQsd3kzvnH738wMDzj5GBN1VIWW4c3KDon7VOvm7S3paB9u5qsU5/x5KUnlY+eexQbkLNsErK61+++VnAJcfkyMTIwffj0QwZbJDKjcETs1Y8evyd48toz8y/ffzv//vPP4veffxpX77z6l5JewHPu8MqTDAwMDLzyrjb/mZm0JcT5Lj+89+Ybm6zz95oMh7s4XbygN3Sluq4Mj5K8iKMgP4f0////fv77//8nLy+7MCcXmyYDAwODS9jM9tcvPypd35pne3ljdjvj26+H2dhYpuENikgfvQeXNmSl3tqepxXsqhXPyc666s+fv1fMdKR3TK72zpix8nTc7bdfhfkEeVbC9KhbK/9iYWHiErbu6MWbY/7//8/4//9/pgOnH6jGVazvFDRtq2VgiBIZrUTIBgCk+ivHvuEKwAAAAABJRU5ErkJggg==">
<img class="intLink" title="Жирный" onclick="formatDoc('bold');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAInhI+pa+H9mJy0LhdgtrxzDG5WGFVk6aXqyk6Y9kXvKKNuLbb6zgMFADs=" />
<img class="intLink" title="Italic" onclick="formatDoc('italic');" src="data:image/gif;base64,R0lGODlhFgAWAKEDAAAAAF9vj5WIbf///yH5BAEAAAMALAAAAAAWABYAAAIjnI+py+0Po5x0gXvruEKHrF2BB1YiCWgbMFIYpsbyTNd2UwAAOw==" />
<img class="intLink" title="Подчеркивание" onclick="formatDoc('underline');" src="data:image/gif;base64,R0lGODlhFgAWAKECAAAAAF9vj////////yH5BAEAAAIALAAAAAAWABYAAAIrlI+py+0Po5zUgAsEzvEeL4Ea15EiJJ5PSqJmuwKBEKgxVuXWtun+DwxCCgA7" />
<img class="intLink" title="Выровнять слева" onclick="formatDoc('justifyleft');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JMGELkGYxo+qzl4nKyXAAAOw==" />
<img class="intLink" title="Выровнять центр" onclick="formatDoc('justifycenter');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIfhI+py+0Po5y02ouz3jL4D4JOGI7kaZ5Bqn4sycVbAQA7" />
<img class="intLink" title="Выровнять справа" onclick="formatDoc('justifyright');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JQGDLkGYxouqzl43JyVgAAOw==" />
<img class="intLink" title="Нумерованный список" onclick="formatDoc('insertorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMIGAAAAADljwliE35GjuaezxtHa7P///////yH5BAEAAAcALAAAAAAWABYAAAM2eLrc/jDKSespwjoRFvggCBUBoTFBeq6QIAysQnRHaEOzyaZ07Lu9lUBnC0UGQU1K52s6n5oEADs=" />
<img class="intLink" title="Пунктирный список" onclick="formatDoc('insertunorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMIGAAAAAB1ChF9vj1iE33mOrqezxv///////yH5BAEAAAcALAAAAAAWABYAAAMyeLrc/jDKSesppNhGRlBAKIZRERBbqm6YtnbfMY7lud64UwiuKnigGQliQuWOyKQykgAAOw==" />
<img class="intLink" title="Цитата" onclick="formatDoc('formatblock','blockquote');" src="data:image/gif;base64,R0lGODlhFgAWAIQXAC1NqjFRjkBgmT9nqUJnsk9xrFJ7u2R9qmKBt1iGzHmOrm6Sz4OXw3Odz4Cl2ZSnw6KxyqO306K63bG70bTB0rDI3bvI4P///////////////////////////////////yH5BAEKAB8ALAAAAAAWABYAAAVP4CeOZGmeaKqubEs2CekkErvEI1zZuOgYFlakECEZFi0GgTGKEBATFmJAVXweVOoKEQgABB9IQDCmrLpjETrQQlhHjINrTq/b7/i8fp8PAQA7" />
<img class="intLink" title="Удалить отступ" onclick="formatDoc('outdent');" src="data:image/gif;base64,R0lGODlhFgAWAMIHAAAAADljwliE35GjuaezxtDV3NHa7P///yH5BAEAAAcALAAAAAAWABYAAAM2eLrc/jDKCQG9F2i7u8agQgyK1z2EIBil+TWqEMxhMczsYVJ3e4ahk+sFnAgtxSQDqWw6n5cEADs=" />
<img class="intLink" title="Добавить отступ" onclick="formatDoc('indent');" src="data:image/gif;base64,R0lGODlhFgAWAOMIAAAAADljwl9vj1iE35GjuaezxtDV3NHa7P///////////////////////////////yH5BAEAAAgALAAAAAAWABYAAAQ7EMlJq704650B/x8gemMpgugwHJNZXodKsO5oqUOgo5KhBwWESyMQsCRDHu9VOyk5TM9zSpFSr9gsJwIAOw==" />
<img class="intLink" title="Гиперссылка" onclick="var sLnk=prompt('Введите ваш URL','http:\/\/');if(sLnk&&sLnk!=''&&sLnk!='http://'){formatDoc('createlink',sLnk)}" src="data:image/gif;base64,R0lGODlhFgAWAOMKAB1ChDRLY19vj3mOrpGjuaezxrCztb/I19Ha7Pv8/f///////////////////////yH5BAEKAA8ALAAAAAAWABYAAARY8MlJq7046827/2BYIQVhHg9pEgVGIklyDEUBy/RlE4FQF4dCj2AQXAiJQDCWQCAEBwIioEMQBgSAFhDAGghGi9XgHAhMNoSZgJkJei33UESv2+/4vD4TAQA7" />
<img class="intLink" title="Вырезать" onclick="formatDoc('cut');" src="data:image/gif;base64,R0lGODlhFgAWAIQSAB1ChBFNsRJTySJYwjljwkxwl19vj1dusYODhl6MnHmOrpqbmpGjuaezxrCztcDCxL/I18rL1P///////////////////////////////////////////////////////yH5BAEAAB8ALAAAAAAWABYAAAVu4CeOZGmeaKqubDs6TNnEbGNApNG0kbGMi5trwcA9GArXh+FAfBAw5UexUDAQESkRsfhJPwaH4YsEGAAJGisRGAQY7UCC9ZAXBB+74LGCRxIEHwAHdWooDgGJcwpxDisQBQRjIgkDCVlfmZqbmiEAOw==" />
<img class="intLink" title="Копировать" onclick="formatDoc('copy');" src="data:image/gif;base64,R0lGODlhFgAWAIQcAB1ChBFNsTRLYyJYwjljwl9vj1iE31iGzF6MnHWX9HOdz5GjuYCl2YKl8ZOt4qezxqK63aK/9KPD+7DI3b/I17LM/MrL1MLY9NHa7OPs++bx/Pv8/f///////////////yH5BAEAAB8ALAAAAAAWABYAAAWG4CeOZGmeaKqubOum1SQ/kPVOW749BeVSus2CgrCxHptLBbOQxCSNCCaF1GUqwQbBd0JGJAyGJJiobE+LnCaDcXAaEoxhQACgNw0FQx9kP+wmaRgYFBQNeAoGihCAJQsCkJAKOhgXEw8BLQYciooHf5o7EA+kC40qBKkAAAGrpy+wsbKzIiEAOw==" />
<img class="intLink" title="Вставить" onclick="formatDoc('paste');" src="data:image/gif;base64,R0lGODlhFgAWAIQUAD04KTRLY2tXQF9vj414WZWIbXmOrpqbmpGjudClFaezxsa0cb/I1+3YitHa7PrkIPHvbuPs+/fvrvv8/f///////////////////////////////////////////////yH5BAEAAB8ALAAAAAAWABYAAAWN4CeOZGmeaKqubGsusPvBSyFJjVDs6nJLB0khR4AkBCmfsCGBQAoCwjF5gwquVykSFbwZE+AwIBV0GhFog2EwIDchjwRiQo9E2Fx4XD5R+B0DDAEnBXBhBhN2DgwDAQFjJYVhCQYRfgoIDGiQJAWTCQMRiwwMfgicnVcAAAMOaK+bLAOrtLUyt7i5uiUhADs=" />
</div>
<div id="textBox" contenteditable="true">
  <p>Однажды в студёную, зимнюю пору я из лесу вышел... (и снова зашёл)</p></div>
  <span><input id="btn" type="submit" value="Принять" /></span>
<span id="editMode"><input id="switchBox" type="checkbox" name="switchMode" onchange="setDocMode(this.checked);" /> <label for="switchBox">Показать HTML</label></span>

</form>
  <div></div>
</body>
[/html]

[html]
<style>
p {background-color: #eff;}
</style>
<body><p>
- А что если <a href="http://xn-----6kcajervcdvqarhfgengcekya4c.xn--p1ai/%D1%8F%D1%80%D0%BE%D0%BA%D0%BB%D0%B0%D0%B2%D0%B0-js.%D1%8F%D1%80%D0%B3%D1%82/">Яро-клаву</a> туда же опубликовать? Пусть смакуют те удобства, кои она привносит при её использовании. (?) <br>Я не посмел без ведома автора провести этот эксперимент, да и нужные скрипты трудно вынимать из контекста страницы. А ведь MDN читают достаточно часто, потому и последователей будет больше. </p>
</body>
[/html]

32

https://bitbucket.org/budden/iaroklava-js - надо бы добавить, конечно, на страницу эту ссылку.

33

Но веб- это помойка. Данная версия создана только для того, чтобы понять, как оно работает, ничего не устанавливая на свой компьютер. В вебе есть большие проблемы с обработкой клавиатуры. Чтобы сделать по-нормальному, нужен либо драйвер, либо изделие. Драйвер с меньшей вероятностью, но для ноутбуков только он сгодится. Т.е. нужно утвердить стандартом и заставить всех поставщиков его соблюдать. Изделие более жизнеспособно, но сначала нужно всех убедить, что этим надо пользоваться. А у нас даже про раскладку Чистова мало кто знает.

34

На самом-то деле, ввод русскоязычных текстов в различных языках разметок (например, маркдаун), с яроклавой и без - это как рай и ад (чуть не написал ай и рад).

35

budden написал(а):

надо бы добавить, конечно, на страницу эту ссылку.

Проверил скрипт в песочнице:
[html]
<p data-height="680" data-theme-id="0" data-slug-hash="LrzeWG" data-default-tab="result" data-user="warsan" data-embed-version="2" data-pen-title="LrzeWG" class="codepen">См. Pen <a href="https://codepen.io/warsan/pen/LrzeWG/">LrzeWG</a> от Сандро (<a href="https://codepen.io/warsan">@warsan</a>) on <a href="https://codepen.io">CodePen</a>.</p>
<script async src="https://static.codepen.io/assets/embed/ei.js"></script>
[/html]

36

Ух ты! Круто у вас получается - я так не умею.

37

Ну, если хотите, публикуйте, желательно, со ссылкой на программирование-по-русски.рф

38

Да вот я думаю, зачем люди делают переводы статей?... Если им платят за переводы (возможно, Хабр платит или деньгами, или дозволением присутствовать на своей озарённой сиянием Сириуса площадке)

Им просто платят. Хабр платит авторам при условии, что печатаешь много и собираешь читателей. Но (далее - моя гипотеза) поскольку авторам трудно придумать что-то своё оригинальное, то берут чужое, просто на иностранном языке.

39

Сандро
Ваш скрипт не работает в опере версии 12.

budden
http://программирование-по-русски.рф/сводка-с-фронта.яргт
Почитал всё по дело. Но вот стилистика хромает. У вас какое-то отрывочное мышление. Наверно все программисты страдают от этого. Привыкли мы к декларативному стилю вместо изложения.

По статистике только 12% женщин заняты карьерой. Остальные кисельные барышни живут ради жизни. Вспомнить хотя бы хайп вокруг училок в купальниках. Одни наехали на других за то, что у тех тело красивое и могут себе позволить сделать снимки.
Так что как лингвисты они так себе. Зато девушки улучшают коммуникабельность в любой организации, в любом бизнесе.

Что касается словаря. То как и в любом деле тут важна личность. Большинство людей не пользуются словарями от слов совсем даже есть термин врождённая грамотность.  Вот к примеру Розенталя я терпеть не могу так как по мне он разрушил русский язык его научный труд  его словарь не имеет под своей основой  строгой логики.  Зато возглавить министерство ему удалось.

Так вот ни лингвисты ни учителя нам не помогут со словарём. Вот переводчики те умеют работать со словами и словарями. Не все но таких много. Нужна конкретная личность которая займётся им. Но сам по себе словарь бесполезен. Его нужно внедрять, делать инфраструктуру.  К примеру на бирже текстов advego.com есть скрипт для проверки текста. Он выдаёт рекомендации на то или иное слово. Является ли оно ключевым или водой или стоп словом.  Если внедрить к ним то можно повысить популярность. Habre  и другие пользуются подобными инвентарём что-бы повысить популярность статей.  Но вот за популярность отвечает не словарь, а увы поисковик. Ведь он определяет какому слову повысить коэффициент а какому понизить. Притом алгоритмы увы неизвестны так как сейчас там одни НС.  Так что изменить тут мы мало что можем. Только путём поднятия хайпа можно внедрить новые слова в оборот. Гугл и Яндекс дают статистику по вводу новых слов от 5 до 20 в год. Так что таким путем мы будем 10 лет внедрять словарь.

Майкрософту им по барабану у них свои лингвисты и свои программы переводчики со своими словарями. Кстати они не плохо переводят. Но вот словари они менять не будут так-как это всё равно что  остановить поезд. Они пишут справку для пользователей пишут книги для программистов пишут справку по API это целая система. И если один винтик захотят повернуться в другую сторону то гироскопический эффект системы от других просто не даст этому произойти.

Отредактировано Павиа (2018-06-17 09:37:53)

40

> Ваш скрипт не работает в опере версии 12.
А мой?

> Почитал всё по дело. Но вот стилистика хромает.
Your PRs are welcome, репозиторий тут: 

https://bitbucket.org/budden/ppr

41

> По статистике только 12% женщин заняты карьерой.
На самом деле, стремление к добровольной деятельности есть, в т.ч. у женщин. Я таких видел более одной за последний месяц. 12% женщин России - это более чем дофига :)

42

> Нужна конкретная личность которая займётся им. Но сам по себе словарь бесполезен. Его нужно внедрять, делать инфраструктуру.
В целом я согласен, но остановимся ли мы на констатации согласия или каждый задумается о том, есть ли у него на примете такая личность?

Наверное, стоит сделать движок. Даже если не удастся продвинуть словарь, он сам по себе является точкой сборки единомышленников и возможностью что-то делать. Я бы сделал движок сам (потренировал бы веб), но мне некогда. У кого есть идеи, кто может сделать такой движок и сколько это может стоить? Зачатки ТЗ здесь:

https://bitbucket.org/budden/ppr/src/38 … ew-default

43

Почитал по ссылке: --
Мотивация откровенно хромая там. Вот они буружи за нами следят. А если мы внедрим свое, наши не будут за нами следить и портить нам жизнь? Зная свое государство, уверен - будут также. Смысла менять шило на мыло?

Лоббируя импортные технологии, большинство ИТ-шников, по сути, являются агентами влияния США, даже если они в душе - патриоты.

Ну это вообще уже через край, мягко говоря. Эта претензия должна предъявляться опять же монополисту на все эти правила - государству. Если наше государство не заинтересовано в национальной политике продвижения русского языка, то чем виноваты программисты? Абсолютно не приемлимо.
А между тем, есть например литературные всякие мероприятия (например: Читалкин, хвастаюсь, моя дочь в нем участвовала :), там люди разных возрастов рассказывают стихи и читают отрывки из литературных произведений местных авторов), но нет никакой политики, которая проводила сознательные движения на развитие русского языка в профессиональных сферах деятельности. Вы послушайте самих чиновников и посчитайте в их речи сколько заимствованных слов они используют.

В целом понятно, что делать и это делается: нужно не только искать закладки, но и устранять зависимость от США в ИТ по каждому отдельному пункту. Т.е. создавать "всё своё".

Почему США? Английский продвигает Великобритания. Роль США в развитии ИТ, а не внедрения английского.

Замените в ЕГЭ устаревший Паскаль хотя бы на тот же 1С (там уже есть "школьный алгоритмический язык", но на него нет спроса на рынке труда).

1С ужасен для обучения детей. Паскаль дает структурированный код. Я не говорю, что Паскаль круто, но менять на худшее тоже не вариант.

Дайте приоритет при госзакупках тем технологиям, которые хорошо поддерживают кириллицу.

Госзакупки для распила, не для этого.

Но зачем нам нужно, чтобы в нашей стране целая отрасль зависела от чужого языка?

Лисп же располагает к обобщениям. Почему одна отрасль? Это масштаб страны и отраслей, а не ИТ.
По поводу словаря:
http://sh.uploads.ru/skyDL.jpg

Да, да, мои схемки в Визио ужасны :), но требуют менее 5 минут времени.
В общем структура учитывает диалекты, и возможность вносить разные значения для одних и тех же слов (ориентируясь по дате внесения).

Отредактировано utkin (2018-06-18 09:43:01)

44

А если мы внедрим свое, наши не будут за нами следить и портить нам жизнь? Зная свое государство, уверен - будут также. Смысла менять шило на мыло?

Это вопрос идеологический, а идеология у нас с вами разная. Поэтому мы здесь к общему знаменателю не придём, предлагаю констатировать наличие расхождений: для вас страшнее застенки Лубянки, а для меня - томагавки с 500кт. И будем двигаться дальше :)

но нет никакой политики, которая проводила сознательные движения на развитие русского языка в профессиональных сферах деятельности

Отлично! Вы поняли то, что написано на сайте программирование-по-русски.рф, я именно об этом так и говорю. Более того, я обращался в фонд "Русский мир" и в программу ФЦП РЯ (ныне не действует), и мне примерно это же там и сказали, хоть и в неявной форме. Мы, говорят, проводим культурные мероприятия и издаём учебники. Шанс тебе получить грант - это менее 1%. Т.е. нужно открывать новое направление деятельности в государстве.

Я не говорю, что Паскаль круто, но менять на худшее тоже не вариант.

1С - совершенно нормальный язык программирования, между прочим, достаточно высокоуровневый (гораздо выше уровнем, чем Паскаль). Но пусть будет хоть Оберон или Валентина, главное, чтобы был язык живой, а не мёртвый.

Почему США? Английский продвигает Великобритания.

Неважно. Важно, что не русский и не Россия. Вот ещё стул от Англии не остыл в ЕС, как Макрон уже выступил и предлагает вернуть французский в качестве официального в ЕС. Вот как надо действовать.

Госзакупки для распила, не для этого.

Ну ведь не 100% же разворовывают :)

Почему одна отрасль? Это масштаб страны и отраслей, а не ИТ.

Я планов наших люблю громадьё. Ваш PR на эту тему тоже Welcome. Но чем более смелое высказывание мы делаем, тем более веские доказательства ему нужны. По ИТ я могу показать и доказать, да и то не факт - я опросил несколько знакомых на тему РЯ, и свой опыт имею. Причём картина использования РЯ/АЯ везде разная! И это всё ограниченный опыт, набранный несистемно, а не картина по ИТ в целом. Для государственных решений нужно хорошее обоснование, а не на уровне "бла-бла". Если же брать страну в целом и все отрасли, то говорить доказательно сложнее, т.к. фактов нужно гораздо больше.

Структура словаря у вас не такая, какую я хочу. Я бы сказал - неправильная. Вот такая должна быть (в фантастической яро-подобной нотации)

Код:
опр тип внутр-гт -- текст,
  док «внутренний гипертекст, в котором могут присутствовать закодированные
        ссылки на другие элементы данной БД, но не на внешние ресурсы» кно

опр тип внеш-гт = текст,
  док «гипертекст, в котором могут присутствовать закодированные ссылки
        И на элементы данной БД, И на внешние ресурсы» кно

опр табл язык,
  док «Английский язык или диалект русского, например, Microsoft или 1С»
  поля
    имя -- текст
    полное-имя -- гипертекст
    ссылка -- урл ...
      док «Оригинал диалекта» кнп кно

опр табл контекст-применения,
  док «Определяет часть речи, роль в предложении и т.п.»
  поля 
    ссылка-на язык
    // другие поля, например, часть речи, роль в предложении и т.п.
  кнп кно

опр табл смысл,
  док «Важно, что ключевым полем является не слово, а отдельный смысл,
        который находится в отношении N ? N к словам»
  поля 
    ссылка-на язык, док 
       «Язык, в котором этот смысл. Смысл должен быть сформулирован словами
         того же языка. Может отсутствовать, если фраза однозначна»
    смысл -- внутр-гт, док 
      «Определение смысла - фраза на языке, заданном ссылкой 'язык'.
        В т.ч. для английского смысла - английская»
    фраза -- текст, 
      док «Слово или словосочетание на языке, заданном ссылкой 'язык'»
    Контекст -- ссылка(Контекст), 
      док «Часть речи, роль в предложении и др. особенности
            применимости - ссылка на справочник»
  кнп
  первичный-ключ, имя Пк-смысл поля [ Смысл Фраза Контекст ] кнп кно

опр таб отношение-смыслов,
  док «Определяет логические отношения смыслов»
  поля
    операция -- текст, док  
      «На самом деле тут должен быть справочник операций над смыслами: 
        тождественен, входит-в, не-пересекается-с, пересекается-с»
    с-ле -- ссылка-на смысл, док «Смысл слева»
    с-пр -- ссылка-на смысл, док «Смысл справа» кнп кно


Начал это писать и получилось совсем не то, что я изначально имел в виду. Какая-то база знаний. А имелось в виду более простое - только операция = между смыслами, и без всякого контекста (контекст запихивается в поле "смысл"). Возможно, это было более правильно, т.к. проще.

Отредактировано budden (2018-06-18 14:38:05)

45

но я сюда не за тем пришёл. А вот за чем: по сути, это будет агрегатор словарей. Насколько законно делать агрегатор словарей?

46

Это вопрос идеологический, а идеология у нас с вами разная. Поэтому мы здесь к общему знаменателю не придём, предлагаю констатировать наличие расхождений: для вас страшнее застенки Лубянки, а для меня - томагавки с 500кт. И будем двигаться дальше

Разница в идеологии в том, что с моей точки зрения разницы между этими двумя вариантами нету с точки зрения конечного ущерба.

1С - совершенно нормальный язык программирования, между прочим, достаточно высокоуровневый (гораздо выше уровнем, чем Паскаль). Но пусть будет хоть Оберон или Валентина, главное, чтобы был язык живой, а не мёртвый.

Да согласен, но В-2 еще далеко до такой крутости :). На самом деле дьявол кроется в деталях. И замену не просто надо, а надо ее называть. Кто будет приемником Паскаля? Я знаю вот, во всяких там гимназиях детей пичкают Питоном например. Я не знаю насколько это правильно вообще и с точки зрения русского языка в частности, просто факт. Я к чему - трупы там не просто пылятся, а заменить их особо не чем. Программирование уже не творчество, а все больше специализация. То есть человеку нужно вышку заканчивать. А все что ему дадут в рамках школьной программы вероятней всего нужно будет переучивать в ВУЗе снова. Как это и делают с Паскалем, а в особо запущенных случаях болезнь развивают с помощью Дельфи.

Вот ещё стул от Англии не остыл в ЕС, как Макрон уже выступил и предлагает вернуть французский в качестве официального в ЕС.

Это информационный шум от недобросовестных журналистов. Он время от времени поет то, что от него требуют его избиратели - вот неплохо бы чтобы все было на французском. Он делал такие заявления и до брекзита периодически на протяжении всей своей карьеры. Но дальше заявлений его действия не продвигаются.

Ну ведь не 100% же разворовывают

Для рядовых закупок стандартная такса 10% в распил. Для приближенных к заднице императора условия обговариваются индивидуально :).

Для государственных решений нужно хорошее обоснование, а не на уровне "бла-бла".

Ну это же в нашей стране просто делается - предлагайте откаты свыше 10% от закупки и  лед тронется :). Это конечно все грязно, но таковы условия в стране - это самый простой и эффективный путь. Вам составят такое ТЗ, что никто кроме Вашего РЯП не сможет пройти торги. А дальше повелевайте массами сами.

Насколько законно делать агрегатор словарей?

Законно. Делаете преамбулу - авторские права на словари принадлежат их правообладателям. Указываете авторство и даете ссылку на официальный ресурс. Так как Ваш проект образовательный, а не коммерческий, проблем быть не должно.

Отредактировано utkin (2018-06-18 15:18:30)

47

Разница в идеологии в том, что

Не так важно, в чём. Важно, что она есть и легко не может быть убрана, что не мешает делать полезное там, где это различие не мешает.

Законно. Делаете преамбулу - авторские права на словари принадлежат их правообладателям. Указываете авторство и даете ссылку на официальный ресурс. Так как Ваш проект образовательный, а не коммерческий, проблем быть не должно.

Я хотел бы всё же более развёрнуто и документально. Мне кажется, тут всё не так уж просто. Например, я знаю, что нельзя просто так во фрейме показать контент с чужого сайта - это будет использованием материалов. И если мы взяли словарь бумажный, или, тем более, доку по 1С, набили её в компьютерной форме, занесли в свою БД и воспроизвели эту БД на своём сайте - это, на мой взгляд, вполне может иметь последствия. Где можно получить профессиональное заключение на эту тему и сколько это может стоить (а ещё лучше, кто это сделает добровольно)?

48

> Но дальше заявлений его действия не продвигаются.
Делать заявления - это тоже работа политика. У нас нет таких заявлений типа "а давайте сделаем e-mail ы в кириллице". Ни один наш политик такого пока не высказывал, даже Жириновский. Т.е. мы пока отстаём даже от такого уровня активности. Хотя отсутствие e-mail в кириллице означает, что мы частично лишены нашей письменности, ведь e-mail - это как бы имя человека. При том, что это чисто внутреннее дело России установить такой стандарт и заставить хотя бы российских провайдеров его поддерживать.

> Для рядовых закупок стандартная такса 10% в распил.
Возможно, это условие иногда и необходимое, но явно недостаточное :)

49

Я хотел бы всё же более развёрнуто и документально. Мне кажется, тут всё не так уж просто. Например, я знаю, что нельзя просто так во фрейме показать контент с чужого сайта - это будет использованием материалов.

Это зависит от целей такого использования. Вы должны нанести ущерб автору, а так как проект некоммерческий, тайн Вы нераскрываете, соответственно и ущерба нет. Вы не присваиваете права, если указываете автора текста и его координаты. Контент с чужого сайта для чего? Опять же какой контент? Например, если вы в Ютубе позволили встраивать, значит фрейм с Ютубом будет правомерен. Там в соглашении это есть.

И если мы взяли словарь бумажный, или, тем более, доку по 1С, набили её в компьютерной форме, занесли в свою БД и воспроизвели эту БД на своём сайте - это, на мой взгляд, вполне может иметь последствия.

Опять же цели. Какие цели? Если у Вас есть сомнения, то заключайте соглашение с  автором словаря. Составьте договор и подпишите его электронной подписью.
Вот например: https://vc.ru/6766-problem-10456
Еще статьи 1274-1279 ГК РФ.

50

В общем, есть одна учительница, к-рая этим вроде пока на добровольных началах согласилась заниматься. Если она сюда придёт - прошу сильно не обижать :) Посему я пока этим вопросом законности не занимаюсь.

Как проясним с законностью - будем решать про движок.

51

Павиа написал(а):

Ваш скрипт не работает в опере версии 12.

Проверил в Опере версии 53.0.2907.99 - всё работает.

budden написал(а):

Ух ты! Круто у вас получается - я так не умею.

- Каюсь, это моя вина. У Лиса и на Альтпроге функция "HTML в сообщениях" была включена уже давно, а вот на Ремесле упустил включить. Просто забыл.
Сейчас эта функция включена и здесь. Находится она под кнопкой "Дополнительно". Выглядит в редакторе так:

Код:
[html]здесь тело html-кода[/html]

Позволяет вставлять фреймы, скрипт ну и сам html...

52

Тест
[html]<html>
<head>
<meta charset="utf-8" />
<title>Калькулятор</title>
<style type="text/css">
#calculator * {font-size: 16px;}
#calculator table {border: solid 3px silver; border-spacing: 3px; background-color: #EEE; }
#calculator table td {border-spacing: 3px;}
input.display {width: 166px; text-align: right;}
td.buttons {border-top: solid 1px silver;}
input[type= button] {width: 40px; height: 30px;}
</style>
</head>

<body>
<form name="calc" id="calculator">
<table>
<tr>
<td>
    <input type="text" name="input" size="16" class="display">
</td>
</tr>
<tr>
<td class="buttons">
    <input type="button" name="one" value="1" OnClick="calc.input.value += '1'">
    <input type="button" name="two" value="2" OnClick="calc.input.value += '2'">
    <input type="button" name="three" value="3" OnClick="calc.input.value += '3'">
    <input type="button" name="add" value="+" OnClick="calc.input.value += '+'">
    <br>
    <input type="button" name="four" value="4" OnClick="calc.input.value += '4'">
    <input type="button" name="five" value="5" OnClick="calc.input.value += '5'">
    <input type="button" name="six" value="6" OnClick="calc.input.value += '6'">
    <input type="button" name="sub" value="-" OnClick="calc.input.value += '-'">
    <br>
    <input type="button" name="seven" value="7" OnClick="calc.input.value += '7'">
    <input type="button" name="eight" value="8" OnClick="calc.input.value += '8'">
    <input type="button" name="nine" value="9" OnClick="calc.input.value += '9'">
    <input type="button" name="mul" value="x" OnClick="calc.input.value += '*'">
    <br>
    <input type="button" name="clear" value="c" OnClick="calc.input.value = ''">
    <input type="button" name="zero" value="0" OnClick="calc.input.value += '0'">
    <input type="button" name="doit" value="=" OnClick="calc.input.value = eval(calc.input.value)">
    <input type="button" name="div"  value="/" OnClick="calc.input.value += '/'">
</td>
</tr>
</table>
</form>
</body>
</html>[/html]

53

utkin написал(а):

Тест

- Ну вот, хороший пример для подражания! [html]<p>Теперь я хочу увидеть, как уменьшается в размерах наш скрипт: (жмём на кнопки)</p>
<svg viewBox="0 0 200 200" width="200" height="200" xmlns="http://www.w3.org/2000/svg" version="1.1">
<style>
    text{font: 20px Verdana, Helvetica, Arial, sans-serif;}
    tspan{fill: red; font-weight: bold}
    .txt {visibility: visible;}
     #влё, #улё {cursor: pointer;}
</style>
<symbol id="текст" x="0" y="0" width="300" height="40" viewBox="0 0 300 200" >
    <rect id="txt" x="0" y="-10" width="300" height="200" fill="#ace"/>
    <text x="10" y="-20" >Здесь будет <tspan>ваш скрипт</tspan>:</text>
    <text x="10" y="10" style="transform: skewX(-30deg);">тело скрипта</text>
    <text x="10" y="30" style="transform: matrix(1, 0, -.5, 1, 10, 0);";>тело скрипта</text>
  </symbol>

  <symbol id="влё"  >
    <rect id="влё" x="0" y="0" width="100" height="40" fill="#5c2"/>
    <text id="влё" x="20" y="20">влёт</text>
  </symbol>
  <symbol id="улё">
    <rect id="улё" x="0" y="0" width="100" height="40" fill="#c52"/>
    <text id="улё" x="20" y="20">улёт</text>
  </symbol>
<use xlink:href="#текст" x="0" y="0" width="200" height="200"></use>
  <use xlink:href="#влё" x="0" y="160" width="200" height="200"></use> 
  <animate xlink:href="#текст" attributeType="XML" attributeName="viewBox"
           from="0 0 3000 3000" to="0 0 300 200" dur="0.8s"
           begin="влё.click" fill="freeze" />
  <use xlink:href="#улё" x="100" y="160" width="200" height="200"></use>
  <animate xlink:href="#текст" attributeType="XML" attributeName="viewBox"
           from="0 0 300 200" to="0 0 3000 3000" dur="0.8s"
           begin="улё.click" fill="freeze" />
</svg>
<p>- В "улётном" состоянии строим из скриптов драконовские "последовательности" и "параллельности", а во "влётном" состоянии - редактируем каждый из скриптов-коробочек... </p>
[/html]

54

budden написал(а):

б) принят закон, что все эл.почты официальных лиц должны быть в кириллице
в) браузеры, которые уродуют кириллические URL, запрещены к использованию в гос. учреждениях
г) принят закон, что идентификаторы должны быть в кириллице

Ага, принудить/заставить/насадить кириллицу законами, и пофиг что законы бессмысленные.
После такого негативное отношение к данной теме гарантированно.

55

Здесь - форум единомышленников. Или предлагайте что-то конструктивное, или уходите.

56

Ну просто же - используешь кириллицу - минус 1% к налогу на прибыль :).

57

Это круто - я только за. Правда, тогда за использующих кириллицу заплатят остальные россияне. А надо, чтобы за кириллицу заплатил гугль, эпл и микрософт.

Кроме того, без определённых действий со стороны иностранных организаций, многое просто не получится реализовать. Это я говорю как человек, который пытался использовать русский язык и кириллицу везде и в половине случаев это не удалось, а в другой половине оказалось экстремально дорого. Например, пришлось перейти с mercurial на git. Также я не смог воспользоваться услугами человека, который предлагал мне делать сайт даром (т.к. софт, который он использует, не работает с кириллическими url-ами). И так в каждом вопросе. В других случаях приходится форкать (например, tcl/tk). Т.е. без хорошего пинка гордая птица не полетит.

Отредактировано budden (2018-07-07 00:52:19)

58

Ну можно опять использовать хитрость. Какая-такая кириллица? Мы за юникод :). Ах, Вы не поддерживаете Юникод? Ну значит Вам какие-нибудь препятствия :). Ну и опять же, если ИТ фирма получит преференции в виде -1 процента к налогу на прибыль, она, я думаю, быстрей Вас одного найдет решение.  Для какого-нибудь Яндекса 1 процент налога гигантская сумма. И вот обязать более мягко можно. Не кириллицу допустим в ВУЗах использовать, а тотальный Юникод. А уже он дает базу для использования кириллицы :). То есть не отнять и поделить, а сначала подготовить условия для использования нужных штук.

Правда, тогда за использующих кириллицу заплатят остальные россияне.

Ой, ну начинается :). Как олигархов поддерживать, так сразу денег на пенсии нету.  Было бы желание, а уже распределять чего найдется. А то на защиту от санкций для всяких казнокрадов сразу же нашлась сумма в полтора пенсионного фонда. Меньше сомнительных операций проводить будут и вопрос русского языка будет решен.

Отредактировано utkin (2018-07-07 07:35:48)

59

Юникод - это всего лишь одна из возможных технологий для кириллицы, причём не лучшая. Наша страна достаточно открыто продвигает русский язык и отечественные технологии. Есть закон о гос. языке, закон о запрете вывесок на иностранных языках (или штрафы, я не знаю точно). Есть закон об импортозамещении. Так что тут нет нужды хитрить, а можно просто придумывать наиболее эффективные меры.  Мы ведь в своей стране и, слава богу, обладаем минимальным уровнем суверенитета хотя бы для того, чтобы защищать свой язык на своей территории. Единственное, что государство пока не обратило внимания на эту проблему. Достаточно всего лишь обратить внимание и придумать хороший комплекс мер.

Это непросто. Но тут и можно проявить хитрости. Не один андроид есть на свете, есть несколько платформ для тех же смартфонов. Мы вполне можем выставить требование, что кто не поддерживает русские URL-ы, тот уходит с рынка. Если конкуренция реальна, а не все разработчики платформ возглавляются офицерами Пентагона, то они сделают нам русские URL-ы. А остальные нам не нужны. Если же не дать нам использовать родной язык для них важнее, чем получить с нас денег, то уже тогда придётся раскошелиться на ту платформу, которую мы уже лицензировали (отечественная платформа для смартфонов существует, как минимум, в виде процесса, не знаю насчёт результата).

60

> Как олигархов поддерживать, так сразу денег на пенсии нету.
О политике давайте не будем :) Во всяком случае, если за банкет заплатит США, это в любом случае лучше, если за него заплатит Россия, будь то деньги олигархов или деньги пенсионеров.


Вы здесь » Ремесло программиста » Яр » А вот и я опять.