LINUX.ORG.RU

Сообщения den73

 

OpenBox/LXDE - как в диалоге открытия файла вводить имя файла с клавиатуры?

Форум — Desktop

В vs code для ручного ввода нужно сначала выбрать «введите расположение» мышью, а потом набирать полный путь, а не относительно изначально заданной директории. В leafpad вообще не видно поля ввода, но оно появляется, если нажать на домашнюю директорию (опять же, мышью). Есть ли способ нормально вводить с клавиатуры?

ОТВЕТ:

нажатие / показывает окошко прямого ввода имени файла.

ещё упоминалось Ctrl-H, но я не смог оживить.

 , ,

den73
()

поднять зеркало «computer language benchmark game»

Форум — Job

Известна игра «computer language benchmark game». У неё есть исхоники, например, git://github.com/kragen/shootout.git, https://stackoverflow.com/questions/6157153/how-can-i-get-the-source-codes-fo...

Предлагается желающим сделать следующее: 1. Установить где-нибудь на debian stretch 2. прогнать тесты и создать архив с результатами. 3. куда-нибудь выложить результаты (например, в виде таблички в формате LibreOffice, хотя бы уж в гитхаб). 4. Написать статью, описывающую, как всё это повторить, на русском языке, для чайников, и выложить её туда же на гитхаб.

Я в своё время начинал устанавливать эту игрушку, но не осилил.

Смысл в том, что сайт явно продался жавистам. Они выпилили luaJit, не приняли D, выкинули попарное сравнение. Некоторые тесты вызывают сомнения. В лиспе они выкинули тесты, которые генерируют код динамически. И т.п.

 

den73
()

альтернативы computer benchmark game

Форум — Development

Всем привет! Я точно помню, что кто-то из форумчан делал свой проект с бенчмарками, сравнивающими разные ЯП. Напомните, пожалуйста, кто это был и где искать?

И вообще, нужна наконец какая-то альтернатива этому отвратительному продажному computer benchmark game, который очевидным образом пиарит жабу.

 

den73
()

Сколько времени собирается javascript v8?

Форум — Development

Вдруг кто-нибудь пробовал? И насколько этот процесс муторный?

 ,

den73
()

как управлять попаданием js-библиотеки на сайт

Форум — Web-development

У меня есть библиотека, к-рую я установил с помощью npm install. В ней есть некие скрипты, которые нужны на сайте. Они находятся, естественно, в node_modules. И есть директория js в корне сайта.

Можно ли автоматизировать процесс попадания библиотеки из node_modules в js?

Например, чтобы при апгрейде библиотеки туда попали новые версии js-скриптов, и чтобы они углифицировались? Чтобы не попадали те скрипты, которые на сайте не нужны. Я нахожу ряд статей «как начать пользоваться grunt/bower и т.п.», но как-то не попадается статься, где было бы описана именно эта ситуация.

Или это всё нужно делать руками?

 ,

den73
()

tcl как кроссплатформенная замена bash

Форум — Development

Подойдёт ли?

 , ,

den73
()

LXDE, lubuntu-desktop - открывать приложение или переключаться в него по горячей клавише

Форум — Desktop

Имеется debian 9 stretch LXDE. Открыта IDE, веб-браузер и терминал. Я хочу переключаться между ними не альт-табом, а по горячим клавишам. Я знаю, что это можно сделать с помощью рабочих столов, но у меня два монитора. Если раскидать приложения по рабочим столам, пространство экрана будет недоиспользовано.

В офтопике есть «закреплённые приложения» возле кнопки «Пуск». Когда нажимаем Win+1, Win-2 и т.п., запускается первое, второе и т.п. приложение . А если приложение уже запущено, то в него переключаюсь.

Можно ли так настроить LXDE? Или, может быть, есть какая-то ещё альтернатива?

РЕШЕНИЕ

# Установим программки...
> sudo apt-get install wmctrl wish xdg-utils
# Посмотрим, какие окошки у нас есть
> wmctrl -x -l 
0x03000046  0 sun-awt-X11-XFramePeer.jetbrains-phpstorm  deb8 rl [/y/rl] - ...ргт [rl] - PhpStorm
0x03600004  0 lxterminal.Lxterminal  deb8 den73@deb8: ~
0x03c00001  0 google-chrome.Google-chrome  deb8 Новая вкладка - Google Chrome
0x03c00014  0 google-chrome.Google-chrome  deb8 Developer Tools - https://www.google.ru/...
0x03800003  0 leafpad.Leafpad       deb8 (Без имени)
# Окошки можно искать по имени класса и по заголовку (man wmctrl).

Создадим скрипт для обработки горячих клавиш и запишем в файл ~/.config/горячие-клавиши-openbox.ш:

#!/bin/bash

function Диалог {
  echo "wm withdraw . 
  tk_messageBox -title {Помощник горячих клавиш} -message \"$0 сообщает:
[list $1]\"
  destroy ." | wish
}

command -v wmctrl || Диалог "Не установлена программа wmctrl"
case $1 in
  (W-1) 
   wmctrl -x -a Lxterminal \
   || xdg-open ~/Рабочий\ стол/lxterminal.desktop;;
  (W-2)
   wmctrl -x -a "Doublecmd" \
   || ~/doublecmd/doublecmd.sh;;
  (W-3) 
   wmctrl -a "- Google Chrome" \
   || google-chrome;;
  (W-4) 
   wmctrl -a "Developer Tools -" \
   || Диалог "$1 только активирует Chrome Developer Tools, но не запускает их";;
  (W-5) wmctrl -a "- Visual Studio Code" \
   || code;;
  ("") Диалог "В качестве параметра передай горячую клавишу, как она записана в OpenBox.";;
  (*) Диалог "Неизвестная горячая клавиша «$1»"
esac

# Сделаем файл исполняемым
> chmod u+x ~/.config/горячие-клавиши-openbox.ш
# Настроим конфигурацию LXDE
# Для LXDE
> leafpad ~/.config/openbox/lxde-rc.xml
# Для Lubuntu-desktop
> leafpad ~/.config/openbox/lubuntu-rc.xml

Добавляем в секцию keyboard:

    <keybind key="W-1"><action name="Execute">
       <command>~/.config/горячие-клавиши-openbox.ш W-1</command></action></keybind>
    <keybind key="W-2"><action name="Execute">
       <command>~/.config/горячие-клавиши-openbox.ш W-2</command></action></keybind>
    <keybind key="W-3"><action name="Execute">
       <command>~/.config/горячие-клавиши-openbox.ш W-3</command></action></keybind>
    <keybind key="W-4"><action name="Execute">
       <command>~/.config/горячие-клавиши-openbox.ш W-4</command></action></keybind>
    <keybind key="W-5"><action name="Execute">
       <command>~/.config/горячие-клавиши-openbox.ш W-5</command></action></keybind>

Применяем

> openbox --reconfigure

Сочетания Win+1 .. Win+5 теперь вроде работают.

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

P.S. работает также в Ubuntu 12.04; также проверено в Ubuntu 16.04 для рабочего стола lubuntu-desktop

 , , переключение приложений

den73
()

Выбираем грид для админки

Форум — Web-development

Обзоры для отбора:

Текущий остаток

Первый круг требований

Изменяемая ширина колонок (хотя я уже теперь думаю - а нужна ли она?), постраничный просмотр, поддержка AJAX, маркер текущей записи, хождение по записям стрелками, доступность исходника.

Не прошли первый круг: tui.grid, jsGrid, Quickgrid, jqGrid, jexcel, https://github.com/paulopmx/Flexigrid (нет указателя текущей записи), http://www.evolutility.org/demo/demo_ToDo.aspx (нет указателя текущей записи), https://datatables.net/ (то же),

Идём на второй круг

Теперь должно выполняться следующее:

  • при любой навигации, кроме прокрутки за скроллбар, текущая запись видна на экране
  • кнопки pgup-pgdn позволяют листать запись
  • ctrl-f ищет в гриде, если грид фокусирован, и на всей странице, включая грид, если грид не фокусирован. Вообще это требование спорное, т.к. требует загрузки всего контента в страницу. Т.е., либо нужно перешибить Ctrl-f и листать страницы программно, либо не нужен скроллбар, а нужно явно показать, что на странице присутствует лишь часть данных.
  • не тормозит при хождении стрелками

Не прошли второй круг: w2ui.

https://paramquery.com/demos/readonly_cells - ctrl-f не листает по строкам.

https://dhtmlx.com/docs/products/dhtmlxGrid/ - указатель уходит за границы экрана.

Третий круг

Здесь мы выкидываем те гриды, которые не поддерживают фильтрацию на сервере.

Не прошли: dynamic-table - казалось, что у него уникально хорошее хождение с клавиатуры, но slick grid победил. Поэтому dynamic-table исключается из дальнейшего рассмотрения. Остальные выжили.

Остаток требований:

  • грид находится в двух состояниях - фокусирован или нет. При щелчке вне грида грид не фокусирован
  • быстро показывает набор из 100 записей, находящихся в виде JSON на самой странице.

Итог Пока что выбрал SlickGrid, его хвалят за модульность и быстроту. У него сейчас одна основная ветка. Он используется в stackoverflow (data.stackexchange.com), pgAdmin4 (уж не знаю, хорошо это или наоборот), как модуль Drupal (500 сайтов).

 ,

den73
()

Использование пробела в качестве Alt_R в xkb и создание Яро-раскладки

Форум — Development

Я доделал Яро-раскладку под офтопик на базе AutoHotkey, и она вроде работает. Теперь хочу такую же под Linux. У меня какой-то из довольно новых дебианов с Lxde, раскладка должна органично вписаться в эту среду, ну и вообще, быть совместимой.

Вот веб-версия: http://программирование-по-русски.рф/яроклава-js.яргт

Вот текущая версия для AutoHotkey (Win only).

;;;; Этот файл должен быть в кодировке utf-8 с BOM. 
;;;; Яро-раскладка
;;;; Общая идея такова:
;;;;  Пробел становится модификатором, который 
;;;;  позволяет, не выходя из русской раскладки  набивать латиницу и некоторые спец.значки
;;;;  При этом оставлен только один способ набивать
;;;;  знаки препинания .,:;/\, это позволяет меньше путаться.
;;;;  
;;;;  Проверено на AutoHotkey v1.1.29.01 (Unicode 64-bit), 
;;;;  под Windows 10.
;;;; 
;;;;  https://bitbucket.org/budden/iaroklava-js
;;;;  http://программирование-по-русски/яроклава-js.яргт
;;;;
;;;;  (C) Денис Будяк 2018, budden73@mail.ru
;;;;  Код распространяется по лицензии MIT 
;;;; 
;;;;  Установка: инсталлируйте программу AutoHotkey
;;;;  скопируйте этот файл в свою папку "документы" 
;;;;  и запустите AutoHotkey. 

#UseHook, On

; $vk41:: Print("{vk41}","{U+263C}") ; Space+A -> Sun

;;; Нижеследующий фрагмент генерируется так:
;;; - откройте пример.html в браузере
;;; - откройте консоль (F12)
;;; - вызовите ГенерируйКодДляAutoHotKey()
$vkc0:: Нажато("{vkc0}","~")
$+vkc0:: Нажато("+{vkc0}","`")
$vk31:: Нажато("{vk31}","☼")
$+vk31:: Нажато("+{vk31}","≠")
$vk32:: Нажато("{vk32}","@")
$+vk32:: Нажато("+{vk32}","@")
$vk33:: Нажато("{vk33}","#")
$+vk33:: Нажато("+{vk33}","§")
$vk34:: Нажато("{vk34}","$")
$+vk34:: Нажато("+{vk34}","†")
$vk35:: Нажато("{vk35}","°")
$+vk35:: Нажато("+{vk35}","<НЕТ>")
$vk36:: Нажато("{vk36}","^")
$+vk36:: Нажато("+{vk36}","☭")
$vk37:: Нажато("{vk37}","&")
$+vk37:: Нажато("+{vk37}","¿")
$vk38:: Нажато("{vk38}","<НЕТ>")
$+vk38:: Нажато("+{vk38}","<НЕТ>")
$vk39:: Нажато("{vk39}","<НЕТ>")
$+vk39:: Нажато("+{vk39}","<НЕТ>")
$vk30:: Нажато("{vk30}","<НЕТ>")
$+vk30:: Нажато("+{vk30}","<НЕТ>")
$vkbd:: Нажато("{vkbd}","<НЕТ>")
$+vkbd:: Нажато("+{vkbd}","<НЕТ>")
$vkbb:: Нажато("{vkbb}","≈")
$+vkbb:: Нажато("+{vkbb}","≡")
$vk51:: Нажато("{vk51}","q")
$+vk51:: Нажато("+{vk51}","Q")
$vk57:: Нажато("{vk57}","w")
$+vk57:: Нажато("+{vk57}","W")
$vk45:: Нажато("{vk45}","e")
$+vk45:: Нажато("+{vk45}","E")
$vk52:: Нажато("{vk52}","r")
$+vk52:: Нажато("+{vk52}","R")
$vk54:: Нажато("{vk54}","t")
$+vk54:: Нажато("+{vk54}","T")
$vk59:: Нажато("{vk59}","y")
$+vk59:: Нажато("+{vk59}","Y")
$vk55:: Нажато("{vk55}","u")
$+vk55:: Нажато("+{vk55}","U")
$vk49:: Нажато("{vk49}","i")
$+vk49:: Нажато("+{vk49}","I")
$vk4f:: Нажато("{vk4f}","o")
$+vk4f:: Нажато("+{vk4f}","O")
$vk50:: Нажато("{vk50}","p")
$+vk50:: Нажато("+{vk50}","P")
$vkdb:: Нажато("{vkdb}","[")
$+vkdb:: Нажато("+{vkdb}","{{}")
$vkdd:: Нажато("{vkdd}","]")
$+vkdd:: Нажато("+{vkdd}","{}}")
$vkdc:: Нажато("{vkdc}","|")
$+vkdc:: Нажато("+{vkdc}","<НЕТ>")
$vk41:: Нажато("{vk41}","a")
$+vk41:: Нажато("+{vk41}","A")
$vk53:: Нажато("{vk53}","s")
$+vk53:: Нажато("+{vk53}","S")
$vk44:: Нажато("{vk44}","d")
$+vk44:: Нажато("+{vk44}","D")
$vk46:: Нажато("{vk46}","f")
$+vk46:: Нажато("+{vk46}","F")
$vk47:: Нажато("{vk47}","g")
$+vk47:: Нажато("+{vk47}","G")
$vk48:: Нажато("{vk48}","h")
$+vk48:: Нажато("+{vk48}","H")
$vk4a:: Нажато("{vk4a}","j")
$+vk4a:: Нажато("+{vk4a}","J")
$vk4b:: Нажато("{vk4b}","k")
$+vk4b:: Нажато("+{vk4b}","K")
$vk4c:: Нажато("{vk4c}","l")
$+vk4c:: Нажато("+{vk4c}","L")
$vkba:: Нажато("{vkba}","<НЕТ>")
$+vkba:: Нажато("+{vkba}","<НЕТ>")
$vkde:: Нажато("{vkde}","'")
$+vkde:: Нажато("+{vkde}","<НЕТ>")
$vk5a:: Нажато("{vk5a}","z")
$+vk5a:: Нажато("+{vk5a}","Z")
$vk58:: Нажато("{vk58}","x")
$+vk58:: Нажато("+{vk58}","X")
$vk43:: Нажато("{vk43}","c")
$+vk43:: Нажато("+{vk43}","C")
$vk56:: Нажато("{vk56}","v")
$+vk56:: Нажато("+{vk56}","V")
$vk42:: Нажато("{vk42}","b")
$+vk42:: Нажато("+{vk42}","B")
$vk4e:: Нажато("{vk4e}","n")
$+vk4e:: Нажато("+{vk4e}","N")
$vk4d:: Нажато("{vk4d}","m")
$+vk4d:: Нажато("+{vk4d}","M")
$vkbc:: Нажато("{vkbc}","<")
$+vkbc:: Нажато("+{vkbc}","«")
$vkbe:: Нажато("{vkbe}",">")
$+vkbe:: Нажато("+{vkbe}","»")
;;; !!!! ИЗМЕНЕНО ВРУЧНУЮ, СМ. НИЖЕ! $vkbf:: Нажато("{vkbf}","<НЕТ>")
$+vkbf:: Нажато("+{vkbf}","♥")
;;; Конец сгенерированного фрагмента

;; дублируем пробел, как "пробел+буква справа от ю"
$vkbf:: Нажато("{vkbf}"," ")

ПробелУдерживается := 0
ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 0

$Space::
  ; Critical
  ПробелУдерживается := 1
  ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 0
  ; Critical off
  Return

$+Space::
  ; Critical
  ПробелУдерживается := 1
  ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 0
  ; Critical off
  Return

$Space Up:: 
  ; Critical
  if (ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи == 0) {
    ; Critical off
    Send, {Space}
  }
  ПробелУдерживается := 0
  ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 0
  ; Critical off
  Return

$+Space Up:: 
  ; Critical
  if (ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи == 0) {
    ; Critical off
    Send, +{Space}
  }
  ПробелУдерживается := 0
  ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 0
  ; Critical off
  Return
 

Нажато(vk,s)
{
  Global
  if (ПробелУдерживается == 1) {
    ДругаяКнопкаБылаНажатаВоВремяУдержанияПробелаЛи := 1
    ; Critical off
    SendInput, %s%
  } Else {
    ; Critical off
    SendEvent, %vk%
  }
}

Тут, я вижу, судя по соседним темам, есть виртуозы xmodmap, которые наверняка могут такое сделать за 5 минут. Но когда я в прошлый раз пытался предложить, никто в итоге ничего не сделал и даже частично сделанную работу никто сдать не попытался.

Теперь попробую воспроизвести под Linux

P.S. для тех, кто нагуглит эту тему подвожу итог: решение находится здесь (но, возможно, переедет на gitlab или github в связи с нестабильностью bitbucket): https://bitbucket.org/budden/iaroklava-js/src/master/linux/Яроклава-для-debia...

 xcape, , , ,

den73
()

Создание транспилятора в tcl?

Форум — Development

Посмотрел буквально в течение 30 минут, как работает tclsh. Парсер команды прибит гвоздями. В этом свете неясно, насколько успешным могло бы быть предложение сделать язык, компилирующий в байт-коды тикля, библиотекой. MKuznetsov, что думаешь насчёт транспилятора в tcl? Т.е. отдельного компилятора (написанного хоть на tcl), который на выходе даёт код tcl?

 little-lang, ,

den73
()

Почему на tcl можно писать, будучи пьяным в дугу?

Форум — Talks

Цитата с https://lurkmore.to/Tcl

Tcl (от англ. tickling — щекотание, тикль) — когда-то популярный среди бородатых дядек и тетек программируемый язык метапрограммирования, позволяющий запрограммировать все то, что можно напрограммировать на Си, находясь при этом в дугу пьяным.

собственно, на этом всё :) Это была чувствительная информация, полезная для разработки передовых языков программирования. Но раз тут никто не хочет это обсуждать, то и нефиг ей тут светиться :)

 , ,

den73
()

tcl vs rebol/red

Форум — Development

Ваши мысли.

Вот мои: конечно, круто иметь компилятор в натив, но я так понял, что до лиспа они всё же не дотянули в этом плане. Но, допустим, тут они побеждают tcl.

С другой стороны, классно иметь множество типов, но формат даты типа 1-Jan-1990 не дают никакого шанса на локализацию. Да и вообще, после опыта лиспа сложность определения типа литерала выглядит явным путём не туда. ПРоблема здесь в том, что все форматы встроенных типов данных (насколько я понял), глобальны. Т.е. если я хочу свой DSL, я быстро могу вступить в конфликт. Даже и внутри самого языка такой конфликт есть. Например, 123.45 - это число, 123.45.6 - это tuple из 123.45.6 . А если я хочу tuple из двух чисел 123 и 45 ? Кривота получается.

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

Соответственно, ваши мнения. Может быть, кому-нибудь пришлось на red/rebol что-то делать.

 , , ,

den73
()

а вам кажется странным поведение двойных кавычек в tcl?

Форум — Development

Принимая во внимание следующее:

  • списки в tcl не построены из консов
  • списки в tcl на печати изображаются с помощью фигурных скобок
  • при этом внешняя пара фигурных скобок при печати опускается
  • слова можно считать символами
  • {*} по смыслу есть ,@ (см. Википедию)

Получаем следующее:

# присвоим переменной v список из двух символов b и с
> set v {b c} 
b c 
; то же в лиспе
> (setq v '(b c))
(b c)

# построим двухэтажный список
> list a $v
a {b c}
; то же в лиспе 
> (list 'a v)
; то же в лиспе с помощью квазицитирования
> `(a ,v)

# вклеим содержимое v в список
> list a {*}$v
a b c
; то же в лиспе с помощью квазицитирования
> `(a ,@v)

# А вот это что и зачем? 
> puts "a $v"
a b c

# А так не работает:
> puts "a {*}$v"
a {*}b c

Здесь основной вопрос - зачем двойные кавычки ведут себя вот таким образом? Ведь, казалось бы, двойные кавычки по смыслу и являются аналогом квазицитирования, и поэтому должно быть так:

> "a $v"
a {b c}
> "a {*}$v"
a b c

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

 , ,

den73
()

Можно ли использовать таблицы LibreOffice как аналог Google Sheets?

Форум — Desktop

Т.е. чтобы таблица за один клик создавалась где-то в интернете, было легко её расшарить и работать с ней одновременно, наблюдая за изменениями от других пользователей, чтобы хранилась она в интернете, но чтобы интерфейс при этом было не вебовский, а настольный, как обычно у LibreOffice?

 google sheets,

den73
()

оживить gorillascript - разовая небольшая работа на node.js

Форум — Job

Существуют две версии gorillascript - обычный и gorillascript-community. Обе устанавливаются через npm, обе устарели (не понимаются сегодняшней нодой).

Там есть gruntfile, который описывает несколько задач, в т.ч. build, test, uglify, browser. По приложенной инструкции я не смог его запустить. Ни его, ни плагин grunt-gorilla.

Задача состоит в следующем:

1. Модернизировать grunt (если он протух, то переделать на webpack), так, чтобы он собирался. При этом необязательно, чтобы исходник был на горилле - подойдёт и обычный JS.

2. Собрать гориллу на современной ноде - 8.11 или что-то там. Это нетривиально. Например, использовался ключ --harmony, --harmony_collections. Похоже, что сейчас он не нужен.

3. Тесты должны проходить, согласно тому, как они сейчас определены в gruntfile, горилла должна собираться, аналогичным образом.

4. Должна работать она и в браузере (нужно написать небольшое демо).

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

Темпы исполнения должны быть бодрыми, реакция на емейлы - в оговоренные сроки (для меня комфортабельно наличие рабочих часов с гарантированным ответом в течение часа). Перенос сроков на завтра, послезавтра и т.п. может служить причиной досрочного прекращения работ. Т.е. если у вас есть время - беритесь, если нет - не беритесь.

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

Честно говоря, я думаю, что человеку с хорошим опытом ноды здесь работы дня на два. ПОскольку она когда-то работала и лишь протухла. А значит, тому, кто знает эволюцию ноды, не должно составлять большого труда починить. Я могу и ошибаться, поэтому сумма с большим запасом.

Пишите: budden73@mail.ru

 , ,

den73
()

Как apt не запутается после однократной устновки пакетов из backports?

Форум — General

Всем привет! Устанавливал VirtualBox additions для дебиана- 9 (stretch) гостя. Stackoverflow предлагает использовать stretch-backports.

При этом подаётся команда

sudo apt install -t stretch-backports virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)

У меня в голове не укладывается, как это будет работать в будущем. По моему пониманию, получается как бы что часть пакетов идёт из одного релиза (без backport-ов), а потом добавляется часть из backport-ов.

Каким образом apt разберётся в этой ситуации, когда я в следующий раз подам apt update? Не заменит ли он пакеты из backport-ов на обычные? И если да, то почему?

КОроче, как понять общий смысл и идею apt-а?

 , ,

den73
()

куда положить свой пакет npm

Форум — Web-development

Всем привет! Я форкнул некую библиотеку, которая есть в npm. Где вести разработку? Туда, где npm её поставил? Т.е. в ~/my_project/node_modules/some_lib ? Прочитал уже 4 статьи о том, как делать свои пакеты, но нигде явно этого не написано. Если это так, то это неудобно, я стараюсь, чтобы мой код, с к-рым я работаю, лежал в директории с как можно более коротким именем. Нельзя так настроить?

 

den73
()

Яр для Js - есть ли смысл?

Форум — Talks

Ну вот, теперь стало ясно, что идею русскоязычного ЯП массы не подхватили. Т.е. конечно, Ланит-Терком пилит свой «РуСи» и, наверное, найдёт кому его запродать, а Нуралиев успешно продаёт реализации языка 1С, но это большие дяди, а я - пусть и дядя, но маленький, так что ресурсов впарить кому-то целый ЯП, да ещё и на уровне прототипа, у меня нет. Нет за спиной ни гугла, ни фейсбука.

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

Так вот, я никоим образом не хочу помогать ни искусственному интеллекту, ни автономным боевым роботам. Вот когда америка, или, что более вероятно, Япония, сделает этих роботов, они засветятся в войнах и станет ясно, что они представляют явную угрозу России - тогда поговорим. А так - ну, слили Украину, Молдавию, Казахстан и вот Армения на очереди. Всё это ещё не повод делать автономных боевых роботов. Велика Россия, отступать есть куда.

И ещё конечно, меня подвело высказывание из книги «несвятые святые», о том, что телевидение - это лишь инструмент, а использовать его можно и во благо. Можно ли использовать во благо автономные боевые роботы? Ядерное оружие - можно. Автономных боевых роботов - сомневаюсь.

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

Например, взять ФПИ. Наверное, там сидят молодые придурки, которые делают автономных боевых роботов, хотя смотрели «Терминатор-3». Должно ли у меня было получиться с ними сотрудничать? Очевидно, не должно было.

Так вот, мировое правительство посмотрело Терминатор-3 и постановило: создавать больше мусорных ЯП, и вообще устроить чехарду технологий, всячески проводить дебилизацию ИТ-шников, дискредитировать волнами хайпа саму идею ИТ-инноваций - лишь бы люди не добрались до «дерева безсмертия», упомянутого ещё в самом начале «бытия». Я не буду мешать этим светлым планам, да и даже если пытаться мешать, то всё равно ничего не выйдет. Глупо противостоять мировому правительству.

Поэтому масштаб задач нужно снизить до сравнимых с масштабом моих ресурсов и ограничиться тем, что решает этичные задачи. Например, задачу повышения моего личного благосостояния :)

И приступим к делу. Вот например, JS. Я посмотрел на разные языки, которые транслируются в JS. И что-то мне ни один не понравился. Мне нужно совсем немного:

  • многострочные строковые литералы
  • необязательная статическая типизация
  • при этом «тип» может говорить о том, что «у объекта, к-рый придёт таким-то параметром, должны быть такие-то поля, и больше никаких». И при нарушении типа должна возникать ошибка во время компиляции (когда это возможно) или в рантайме (в противном случае)
  • нормальная числовая башня
  • вменяемые операции, а не 1+1=11
  • полная поддержка sourcemaps
  • работа в браузере и в ноде
  • вменяемые сигнатуры функций с именованными необязательными параметрами и значениями по умолчанию, а не такая помойка, как в JS. Естественно, с проверкой во время компиляции, когда это возможно
  • макросы хотя бы как в Си или m4
  • модули как в Паскале, но с возможностью асинхронной загрузки
  • естественно, лямбды, async и промисы должны быть доступны

Но я такого не встретил. Или плохо смотрел? Соответственно, два вопроса к ЛОРу:

  • что взять за основу такого языка?

Перемещено tailgunner из development

 

den73
()

неспешно выбирается русский процессор

Форум — Talks

Существует ли процессор (на самом деле нужен «компьютер» ,т.к. не буду же я сам компьютер разрабатывать?) со следующими свойствами:

  • разработан в России (не лицензирован, как Байкал)
  • маркировка чипа содержит кириллицу
  • толковая документация на русском языке (а не то, что всё засекречено)
  • доступен частному лицу (ну или хотя бы мне лично по дружбе)
  • достаточно большой (30 МГц, 4Мб памяти хотя бы)

Я слазил сюда https://ruxpert.ru/Российские_микропроцессоры и нашёл комдивы, миландр, элвис, модуль. На грани находится «Кварк», маркировку я не видел, но похоже, что она англоязычная. И ничего не ясно про Geostar Navigation

Я вообще по знакомым понял, что играться в русские процессоры становится модным в определённых кругах - наверняка кто-то уже игрался.

Перемещено tailgunner из development

 

den73
()

когда добавили замыкания в язык X?

Форум — Development

Для X = С++ и Java?

 

den73
()

RSS подписка на новые темы