03 апреля 2023 12 октября 2023 Всякое vim


Чтобы включить отбражение warning сообщений достаточно добавить в ~/.vimrc

let g:lsp_diagnostics_echo_cursor = 1

Узнать состояние переменной vim можно с помощью команды echo

:echo g:lsp_diagnostics_echo_cursor

весь список можно посмотреть использую <C+D>, то-есть, начинаете писать :echo g:lsp<C+D> отбразит список переменных начинающихся на g:lsp

 


03 апреля 2023 12 октября 2023 Всякое vim


Для замены текст по всему файлу нужно использовать команду

:s/найти/заменить/g

опция g обязывает заменить всё, без неё будет проведена только 1 замена

Для замены текст в отдельном участке кода необходимо выделить участок в визуальном режиме, для выделения выходим в командный режим с помощью Esc, затем жмём v и перемещаем курсор до конца или начала блока текста

затем жмём :

в командной строке vim появится :'<,'>

дописываем s/найти/заменить/g так что получается

:'<,'>s/найти/заменить/g

и жмём enter

в результате текст будет заменён только в выделенном блоке


14 февраля 2023 Всякое Python JavaScript 1C Rust PHP C++


 

Сравнение лаконичности языков программирования Python JavaScript 1C Rust Php C++

Python

JavaScript

1C

Rust

PHP

C++

32

34

35

39

67

84

False

break

и

as

__halt_compiler

alignas

True

case

из

async

abstract

alignof

None

class

или

await

and

and

and

catch

не

break

array

and_eq

with

const

для

const

as

asm

assert

continue

если

continue

break

auto

break

debugger

иначе

crate

callable

Bооl

class

default

как

dyn

case

Bitand

continue

delete

когда

else

catch

bltor

def

do

пока

enum

class

break

del

else

по

extern

clone

case

elif

export

вконце

false

const

catch

else

extends

возврат

fn

continue

char

except

finally

попытка

for

declare

char16_t

finally

for

поймать

if

default

char32_t

for

function

исключение

impl

die

compl

from

if

прервать

in

do

const

global

import

продолжить

let

echo

const_cast

if

in

импорт

loop

else

constexpr

import

instanceof

экспорт

match

elseif

continue

in

let

выбросить

mod

empty

dass

is

new

выбор

move

enddeclare

decltype

lambda

return

новый

mut

endfor

default

nonlocal

super

метод

pub

endforeach

delete

not

switch

это

ref

endif

do

or

this

исп

return

endswitch

double

pass

throw

конст

Self

endwhile

dynamic_cast

raise

try

конструктор

self

eval

else

return

typeof

любой

static

exit

enum

try

var

область

struct

extends

explicit

while

void

знч

super

final

export

yield

while

пер

trait

finally

extern

 

with

перечисление

true

for

false

 

yield

структура

type

foreach

float

 

 

умолчание

union

function

for

 

 

 

unsafe

global

friend

 

 

 

use

goto

goto

 

 

 

where

if

if

 

 

 

while

implements

inline

 

 

 

 

include

int

 

 

 

 

include_once

long

 

 

 

 

instanceof

mutable

 

 

 

 

insteadof

namespace

 

 

 

 

interface

new

 

 

 

 

isset

noexcept

 

 

 

 

list

not

 

 

 

 

namespace

not_eq

 

 

 

 

new

nullptr

 

 

 

 

or

operator

 

 

 

 

print

ОR

 

 

 

 

private

or_eq

 

 

 

 

protected

private

 

 

 

 

public

protected

 

 

 

 

require

public

 

 

 

 

require_once

register

 

 

 

 

return

reinterpret_cast

 

 

 

 

static

return

 

 

 

 

switch

short

 

 

 

 

throw

signed

 

 

 

 

trait

sizeof

 

 

 

 

try

static

 

 

 

 

unset

static_assert

 

 

 

 

use

static_cast

 

 

 

 

var

struct

 

 

 

 

while

switch

 

 

 

 

xor

template

 

 

 

 

yield

this

 

 

 

 

 

thread_local

 

 

 

 

 

throw

 

 

 

 

 

true

 

 

 

 

 

try

 

 

 

 

 

typedef

 

 

 

 

 

typeid

 

 

 

 

 

typename

 

 

 

 

 

union

 

 

 

 

 

unsigned

 

 

 

 

 

using

 

 

 

 

 

virtual

 

 

 

 

 

void

 

 

 

 

 

volatile

 

 

 

 

 

wchar_t

 

 

 

 

 

while

 

 

 

 

 

xor

 

 

 

 

 

xor_eq


26 декабря 2022 29 декабря 2022 Всякое


Для наглядности приведу три картики илюстрирующих процесс "оцифровки звука"

АЦП/ЦАП частота дискредитации звука 44,1 килогерц

на частоте 44,1 килогерца, за одну секунде будет получено данных -- 44100 * ширину слова АЦП/ЦАП, например при ширине АЦП 32 бита, за одну секунду будет получено 172 килобайта данных

на частоте 88,2 килогерца, за одну секунде будет получено данных -- 88100  * ширину слова АЦП/ЦАП, например при ширине АЦП 32 бита, за одну секунду будет получено 344 килобайта данных

на частоте 384 килогерца, за одну секунде будет получено данных -- 384000 * ширину слова АЦП/ЦАП, например при ширине АЦП 32 бита, за одну секунду будет получено 1,5 мегабайта

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

чем отличается цифровой звук от настоящего

Последняя картинка наглядно поясняет чем отличается цифровой звук от настоящего


26 декабря 2022 29 декабря 2022 Всякое


Тест выполняется на разных материнских платах, с разной оперативной памятью и разными процессорами

MSI X99A SLI PLUS(MS-7885), i7-6800K, DDR4 2400 MT/s


Z390 GAMING X-CF, i5-9500F, DDR4 2666 MT/s


24 ноября 2022 Всякое


Попал в руки это замечательный контроллер и ради профилактики решил заменить. Новую предлагают купить за 23 тысячи.

Но если разобраться то оказывается, там стоит обычный аккумулятор за 600 рублей от старенького Sony Ericson

https://aliexpress.ru/item/32738463692.html

https://ru.dhgate.com/product/4pcs-original-for-sony-us503759-a8h-battery/397887722.html


27 апреля 2022 13 октября 2022 Всякое


По службе пришлось столкнуться с сервисом продажи доменов hugedomains.com, интересующий нас домен определялся с такими данными

Domain Name: CENTERSVET.COM
   Registry Domain ID: 2524336753_DOMAIN_COM-VRSN
   Registrar WHOIS Server: whois.namebright.com
   Registrar URL: http://www.NameBright.com
   Updated Date: 2021-08-26T18:12:19Z
   Creation Date: 2020-05-10T18:15:17Z
   Registry Expiry Date: 2023-05-10T18:15:17Z
   Registrar: TurnCommerce, Inc. DBA NameBright.com
   Registrar IANA ID: 1441
   Registrar Abuse Contact Email: support@namebright.com
   Registrar Abuse Contact Phone: 17204960020
   Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
   Name Server: NSG1.NAMEBRIGHTDNS.COM
   Name Server: NSG2.NAMEBRIGHTDNS.COM
   DNSSEC: unsigned
   URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/

и при переходе на домен перекидывало на предложение о покупке домена за 3695 долларов (на момент покупки это 276 430 рублей).

Покупка доменов на www.hugedomains.com

Поиск отзывов на этот сервис в рунете подтвредил сомнения о том, что это сайт мошеннический, но я обратил внимание на то, что в рунете не было ни одного упоминания, что ктото заплатил за домен и не получил ни домена ни денег. Поиск отзывов на американских форумах подтвердил мысль, о том, что люди очень недовольны что их забытые домены выкупают за $5, а затем предлагают купить им же за $1500, всех смушают цены, но очевидно, что некоторым приходилось выкупать свои домены.

Так же из этих форумов стало известно, что hugedomains.com находится на одном гео.адресе с namebright.com, а hugedomains.com это сервис аренды доменов. То-есть там выстроена схема в которой пользователи покупают и используют домен на namebright.com, а когда домен освобождается (например, в случае когда хозяин забыл оплатить), домен передаются в hugedomains.com, а там работает автоматизированная система продажи домена. У домена настраивается редирект на hugedomains.com, там открывается предложение о покупке и форма ввода данных, включая номер карты и cvv код

Попытки переписываться с компанией приводят к тому, что они высылают электронный счёт к оплате, после которого якобы передадут управление доменов. Для получения управления необходимо завести учётную запись на namebright.com

После оплаты счёта, мы в своём кабинете на namebright.com получили полный контроль над доменом, заменили DNS сервера и домен работает. Остаётся лишь перенести домен к нашим хостерам


18 апреля 2022 27 апреля 2022 Всякое


У компании Nic.ru есть специальная страничка где можно прочитать отзывы о работе комании, я сегодня оставил там свой отзыв и на всякий случай продублировал его сюда

оставил такой отзыв на сайте https://www.nic.ru/info/otzyvy/

Ужасный и отвратительный сервис которым приходится пользоваться уже больше 10 лет
и каждый раз когда приходится сделать какую либо манипуляцию непроизвольно испытывают целую гамму негативных эмоций от гнева до презрительного отвращения

с каждым случаем использования стоимость продления увеличивается
и домены купленные за 150 рублей сейчас можно продлить минимум за 1600 рублей

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

сам по себе сервис технически реализован крайне безграмотно и является сшитым из кусков разных технологий франкленштейном рунет, это какой то позор

причём нужно понимать, что стоимость услуги совершенно не соответствует реальности и является завышенной как минимум на 1000% процентов, у других хостеров регистрация и продление доменов стоят 200-250 рублей в год, и там не навязываются ни какие платные опции в виде скрытого whois или антивируса для домена

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

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

в качестве небольшой иллюстрации работы сервиса опишу как я переводил домены с nic.ru к другому хостеру

по ссылке Услуги >     Мои домены >         Перенос доменов
открывается форма на которой можно заказать перенос доменов
необходимо ввести адреса доменов и заказать перенос

и вот у меня в первый раз страница зависла и висели 15 минут, затем пришлось перезагрузить страницу и повторить ввод данных

после повторного  ввода списка доменов, появилась ошибка что они не могут перевести 3 из 2 доменов, да именно 3 из 2

пришлось ещё обновить страницу и в третий раз вести список доменов и заказать перенос, с третьего раза форма обработала и появилось сообщение что ушло письмо с инструкцией

письмо пришло через 3 дня со следующим текстом

An English version of this message is contained below.
 

Уважаемый клиент!
 
Истек срок подтверждения администратором согласия на генерацию кодов переноса к другому регистратору. Список доменов, для которых отменен заказ на получение кодов:
 

пришлось в 4 раз вводить список доменов для переноса, опять вылазила ошибка о невозможности переноса 2 доменов из 2, но после обновления сработало

пришла СМС с кодом и через 30 минут пришло письмо с инструкцией

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

затем я начал переносить домены с другого акаунта по ранее проделанной схеме

Услуги >     Мои домены >         Перенос доменов

опять ошибка с вводом списка доменов, опять обновление и повторный ввод и сообщение что ушло письмо с инструкцией и СМС

СМС пришла, а письмо не пришло и видимо не придётся в течении трёх дней, я попробовал сменить почтовый ящик но система не даёт создать заказ переноса так как уже есть созданный ранее заказ

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


звонить в техподдержку безсполезно, так как
во первых, очень должно дозваниваться, подтверждать свои  учётные данные, затем вас переключают на "специалиста" который просит проверить папку спам или перенастроить почту (типичные отмазки) и заканчивается диалог тем, что они якобы выслали письмо и оно вот вот придёт

писать им на почту так же бесполезно, они просто не отвечаются в приемлимые сроки


я считаю, что nic.ru и reg.ru это монопольные и мощенические конторы, которые взвинтили цены на доменные имена более чем на 1000%, которые ежегодно выкачивают миллиарды денег из госучреждений и частных компаний

 

орфографию, подчёркивающие эмоции от использования сервиса, сохраняю


18 апреля 2022 27 апреля 2022 Всякое


Идея за 300

Евгений Касперксий приходит в nic.ru и reg.ru и предлагает им дополнительную услугую добавления домена в белый список антивируса Касперского, например по 100 рублей за домен.

После добавления домена в белый список антивируса Касперского данный домен будет отображаться особым и успокаивающим цветом, а домены не добавленные в белый список будут подсвечиваться как опасные для пользователей

А мошенники из nic.ru и reg.ru заключают договор  с Касперским и добавляют на своих сервисах обязательную и не отключаемую платную (по 1000р) услугу поддержки Антивируса Касперский всем своим клиентам.

После чего стоимость продления услуги возрастает с 1600 рублей, до 2600 рублей


02 декабря 2020 27 апреля 2022 Всякое


DALI COMMANDS

Type of addresses:

address byte:

Short or group address

YAAAAAAS

Short addresses (64)

0AAAAAAS

Group addresses (16)

100AAAAS

Broadcast

100AAAAS

Special command

101CCCC1

Special command

110CCCC1

 

 

S: selector bit:

S = ‘0’ direct arc power level following

 

S = ‘1’ command following

 

Y = ‘0’ short address

 

Y = ‘1’ group address or broadcast

A: significant address bit

 

C: significant command bit

 

 

 

Table 1 contains a complete summary of the DALI command set. Basically there are four types of commands (forward frames):

1. Direct / Indirect arc power control commands – used to set ballast power level.

2. Configuration commands – configures the ballast (for example: add to a group or store level). Command must be repeated within 100 ms, otherwise it’s ignored.

3. Query commands – ask slave (ballast) for status information (for example: power level or version number). The slave can send a backward frame.

4. Special commands – used to initialize and setup the ballast, some must be repeated within 100 ms, and some require an answer from the slave. Most commands are only processed within 15 minutes after an “INITIALIZE” command is received.

Table 1. DALI Command Set Summary

Number

Command Code

Repeat < 100 ms

Answer Slave

Command Name

-

YAAA AAA0 XXXX XXXX

no

no

DIRECT ARC POWER CONTROL

0

YAAA AAA1 0000 0000

no

no

OFF

1

YAAA AAA1 0000 0001

no

no

UP

2

YAAA AAA1 0000 0010

no

no

DOWN

3

YAAA AAA1 0000 0011

no

no

STEP UP

4

YAAA AAA1 0000 0100

no

no

STEP DOWN

5

YAAA AAA1 0000 0101

no

no

RECALL MAX LEVEL

6

YAAA AAA1 0000 0110

no

no

RECALL MIN LEVEL

7

YAAA AAA1 0000 0111

no

no

STEP DOWN AND OFF

8

YAAA AAA1 0000 1000

no

no

ON AND STEP UP

9-15

YAAA AAA1 0000 1XXX

 

 

RESERVED

16 - 31

YAAA AAA1 0001 XXXX

no

no

GO TO SCENE

32

YAAA AAA1 0010 0000

yes

no

RESET

33

YAAA AAA1 0010 0001

yes

no

STORE ACTUAL LEVEL IN THE DTR

34 - 41

YAAA AAA1 0010 XXXX

 

 

RESERVED

42

YAAA AAA1 0010 1010

yes

no

STORE THE DTR AS MAX LEVEL

43

YAAA AAA1 0010 1011

yes

no

STORE THE DTR AS MIN LEVEL

44

YAAA AAA1 0010 1100

yes

no

STORE THE DTR AS SYSTEM FAILURE LEVEL

45

YAAA AAA1 0010 1101

yes

no

STORE THE DTR AS POWER ON LEVEL

46

YAAA AAA1 0010 1110

yes

no

STORE THE DTR AS FADE TIME

47

YAAA AAA1 0010 1111

yes

no

STORE THE DTR AS FADE RATE

48 - 63

YAAA AAA1 0011 XXXX

 

 

RESERVED

64 - 79

YAAA AAA1 0100 XXXX

yes

no

STORE THE DTR AS SCENE

80 - 95

YAAA AAA1 0101 XXXX

yes

no

REMOVE FROM SCENE

96 - 111

YAAA AAA1 0110 XXXX

yes

no

ADD TO GROUP

112 -127

YAAA AAA1 0111 XXXX

yes

no

REMOVE FROM GROUP

128

YAAA AAA1 1000 0000

yes

no

STORE DTR AS SHORT ADDRESS

129 -143

YAAA AAA1 1000 XXXX

 

 

STORE DTR AS SHORT ADDRESS

144

YAAA AAA1 1001 0000

no

yes

QUERY STATUS

145

YAAA AAA1 1001 0001

no

yes

QUERY BALLAST

146

YAAA AAA1 1001 0010

no

yes

QUERY LAMP FAILURE

147

YAAA AAA1 1001 0011

no

yes

QUERY LAMP POWER ON

148

YAAA AAA1 1001 0100

no

yes

QUERY LIMIT ERROR

149

YAAA AAA1 1001 0101

no

yes

QUERY RESET STATE

150

YAAA AAA1 1001 0110

no

yes

QUERY MISSING SHORT ADDRESS

151

YAAA AAA1 1001 0111

no

yes

QUERY VERSION NUMBER

152

YAAA AAA1 1001 1000

no

yes

QUERY CONTENT DT


24 мая 2018 27 ноября 2022 Всякое


  • Сайт итальянского правительства https://www.esteri.it/
  • Сайт правительства эфиопии http://www.ethiopia.gov.et/
  • Сайт сената США https://soprweb.senate.gov/

ps: собираю ссылки на популярные сайты с использование Bootstrap