LINUX.ORG.RU

Сообщения ekzotech

 

Кто тут пользуется IDE от JetBrains?

Пользовался WebStorm, переполз на IntelliJ IDEA как на «одну IDE чтоб править всеми», ну и потом, в IDEA есть инструменты для работы с БД. Ну и просто может работать со всем - от жабы до сях.

Собственно, к чему вопрос: я работаю с Ionic (фреймворк для мобильных на Angular) (да, таки тут недавно случилось чудо и я таки перебрался из околоайтишной сферы в непосредственный вебдев) и столкнулся с тем, что его поддержка во многих редакторах если и есть - то очень корявая, или её нет совсем.

Если говорить конкретно про WebStorm/IntelliJ IDEA, то:

  • Не работает дополнение для имён классов из SCSS в HTML (баг, потому что в ionic стили и классы указываются внутри селектора страницы - грубо говоря, для страницы HomePage будет селектор home-page {}, внутри которого ты нужные для этой страници стили и ставишь. Прям как в каменный век вернулся.
  • Дополнение специфичных атрибутов и их распознавание сделаны коряво: 1. добавляет к каждому атрибуту ="", в итоге я получаю
    ion-button=""
    , хотя это лишние символы, и ставить их нет смысла - они просто будут перегружать визуально код. Да и траффик лишний. 2. IDE меня упорно убеждает, что для button атрибут clear использоваться не может, хотя он самый что ни на есть реальный из ionic.
  • Периодические проблемы с поиском деклараций функций - внутри одного ts ищет без проблем, на другие классы - с переменным успехом. А уж декларации стилей - вечная проблема.

И это лучшее, из всех редакторов - всё-таки нормально работает линт, подсказки и прочие прелести.

Багрепорты есть, висят для WebStorm от 23 мая, движений никаких. В связи с этим вопрос - где и как пройтись напильником, чтоб подправить поддержку фреймворка? Я так понял, судя по количеству багов в трекере и их фиксам, что я вряд ли дождусь фикса от них.

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

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

P.S. На LOR - потому что работаю на macOS и Linux.

P.P.S. В толксы - потому что ну куда ещё?

 , , ,

ekzotech
()

Сборка пакета из исходников в opensuse с опциями

Подскажите, пожалуйста, механику сборки пакета, если он есть в репозитории и как собранный пакет, и как исходники.

Конкретно - хочу пересобрать vim со своими опциями. Как это сделать?

Ну и чтоб 2 раза не вставать - как можно получить весь комплект для сборки точно такого же пакета своими силами? Вот, например, firefox - opensuse его знатно патчат, отучают от файловых диалогов GTK, например. А вот я хочу собрать свою версию firefox dev edition с этими же патчами. Как это провернуть?

 , , , ,

ekzotech
()

vim и настройка поведения + кастом сниппеты

Всем добра!

Хочу спросить советов у бывалых вимеров - благо их тут есть.

Сейчас работаю с фреймворком на js (точнее, на angular, то есть typescript) - Ionic. Соответственно, это html+css+js. Перетыкал много редакторов, из-за возможностей и особенностей пока был вынужден остановиться на webstorm - просто потому, что его поведение соответствует моим ожиданиям. Но хочу таки сменить редактор на vim, как основной. Проблема в том, что плагинов к ionic у vim нет, только подсветка синтаксиса. Попробую составить список тех моментов, которые мне нужны, буду очень признателен, если кто-то даст советы по их решению.

Сразу скажу - режим эмуляции vim для webstorm не предлагать. Редакторы atom, vs code, sublime text - тоже не предлагать - их поведение во многом больше мешает, чем помогает.

  • превращение текста по нажатию tab в тэги в html; в ionic много своих тэгов - таких как ion-button, ion-list, ion-item - большинство редакторов не умеют так, только webstorm ведёт себя прогнозируемо - превращает в тэг, согласно своим настройкам, а если такого тэга в его базе сниппетов нет - просто превращает введённый текст в тэг, с соответствующим закрывающим;
  • вставка ответных скобок, кавычек и т.д. - ремап в конфиге может приводить к некоторым проблемам, когда тебе, например, нужно просто поставить 1 скобку или кавычку; в общем, не совсем очевидно;
  • работа с git - хочу коммитить прямо из редактора максимально простым способом - webstorm, например, делает коммит по cmd+k;
  • легко и просто заворачивать выделенный текст во внешний тэг (вроде фича emmet) - причём и в html, и в css (точнее, scss, поскольку ionic завязан на нём и это очень удобно)
  • навигация в режиме вставки - СТРЕЛОЧКИ НЕ ПРЕДЛАГАТЬ!
  • как научить YouCompleteMe в русские символы в пути к файлу?
  • можно ли научить vim в подхват имен классов между html и css/scss? создал правило для класса mysuperclass в scss, а в html добавляешь class=«my» и оно тебе предлагает дополнить до mysuperclass; и наоборот - если в scss нету такого класса - при начале ввода предлагать его вставить; благо контролировать на этот счёт надо всего 2 файла: variables.scss и локальные html/scss, которые находятся попарно в соответствующих каталогах (короче, ищем такое же имя файла в этом же каталоге, только с расширением html вместо scss и наоборот)
  • быстро переформатировать весь документ в соответствии с установками (выравнивание тэгов и так далее)
  • поддержка синтаксиса в двойных фигурных скобках - так вызываются функции и методы и в angular и в vue.js
  • предпросмотр цветов, с возможностью добавить способ определения цвета - в ionic создаются переменные цветов, которые вызываются потом в scss как
    color: color($colors, colorname)
    - тут пасуют все редакторы, которыми я пользовался; если подсветить обычный hex или rgba они могут, то в этом случае бессильны.
  • ну и конечно работа с самим js в лице ts и angular - что тут может предложить vim?

Я так и не понял, как мне добавить свои сниппеты в ultisnips. Вот я хочу чтоб сниппеты из плагинов оставались, а просто добавить своё расширяющее правило - тот же ion-button, например, для html.

Ну и вообще - можно ли использовать для веба vim полноценно и не страдать?

 , ,

ekzotech
()

Проблемы с подключением openVPN через NM

Не смог я победить L2TP в opensuse, система категорически не хочет подключаться, ругается на то, что клиент и сервер за NAT и после этого пытается подключиться заново. Галочка про UDP стоит. Android, iOS, macOS и windows нормально подключаются.

В общем, решил попутно поднять openVPN для линукса. Всё ок, через openvpn --config my.ovpn всё подключается, траффик заворачивается, всё отлично. А через NM не подключается. Что можно посмотреть?

 , , ,

ekzotech
()

KDE в Opensuse - подключение к L2TP/IPSec

Включил Network Manager для управления подключениями, поставил пакеты с поддержкой l2tp и ipsec. Открываю из трея NM, добавляю подключение - и никакой реакции на кнопку «Подключить», он даже не пытается, похоже.

Кто-то использует KDE, NM + L2TP/IPSec? Какой клиент и как вы подключаетесь?

 , , ,

ekzotech
()

Arch OpenVPN - нет интернета при подключении

Поставил и настроил OpenVPN, клиент подключается, интернета нет. Не пингуются никакие IP-адреса, traceroute кругом молчит.

sysctl -a говорит

net.ipv4.conf.all.forwarding = 1

Добавлял следующие правила в iptables:

iptables -I INPUT -i eth0 -m state --state NEW -p tcp --dport 443 -j ACCEPT
iptables -I FORWARD -i tun+ -j ACCEPT
iptables -I FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A OUTPUT -o tun+ -j ACCEPT

Подключение на 443 порт, tcp. Уже всё перепробовал.

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

 , ,

ekzotech
()

vsftpd в Docker в домашнюю папку пользователя

Всех приветствую!

Нужно поднять FTP для выгрузки отчётов и обработки. Соответственно, мне нужно, чтобы эти данные сваливались в каталог /home/myuser/ftp. С этим проблем нет, хаб в докере поднял, всё работает. А как сделать так, чтобы с правами в этом каталоге всё ок было, но писал в этот каталог другой юзер?

Докер запускается и работает от имени пользователя, но я не хочу давать данные для логина этого пользователя на сторону. По факту мне нужно сделать какого-то ftpuser, который сможет писать в папку /home/myuser/ftp и при этом всё будет отлично с правами и ничего не будет ломаться. Как это можно реализовать?

 , ,

ekzotech
()

Обработка BB-тега url в Java. Как?

Как сделать преобразование BB-тега url в обычный html?

[url=ссылка]текст[/url]

Превратить в валидную html-ссылку в формате

<a href="ссылка">текст</a>

Проблема в том, что таких ссылок в тексте может быть несколько, и их надо обработать.

Я пока вижу один вариант: искать пишем в отдельный String, который будет содержать саму ссылку, а после ] и до - String с текстом, который будет ссылкой. А потом уже собирать в строку в формате a href.

Может есть варианты попроще? Или более правильные, например.

 

ekzotech
()

Как организовать работу с MySQL и обработку правильно?

Всем привет!

Такое дело - перешли на IP-телефонию, используем Asterisk (IP АТС - Yeastar S20). Всё это сделали для соединения телефонии с 1С «АльфаАвто» через СофтФон. Всё круто, входящие звонки обрабатываются, исходящие тоже, если номер есть в базе - дёргается информация по контрагенту, все счастливы. Кроме одного - пропущенные звонки (на которые никто не ответил) не попадают в 1С вообще.

Поскольку на АТС есть доступ к MySQL - решил обрабатывать пропущенные звонки отдельно. В общем, поковырялся с MySQL, разобрался с PREPARE STATEMENT, сделал запрос (кому интересно - вот). Пока черновой, его ещё допилить надо (убрать дубликаты и всё такое).

Основной вопрос - как правильно сделать обработку? Моя идея была такая: делаем бота в Telegram, там же в коде каждые 5 минут дёргаем БД этим запросом. Гонять всё это буду на отдельном VPS. Наверняка тут есть люди, которым приходится обрабатывать данные в MySQL, поэтому хочется получить советов, как это лучше сделать.

Конечное решение должно каждые 5 минут проверять наличие пропущенных звонков с номеров, на которые НЕ перезвонили в течении 5 минут. Отбор этих номеров идёт через запрос в MySQL.

Как лучше и правильнее делать? Гонять промежуточную базу? А как-то можно создавать дубликат текущей базы MySQL на отдельном VPS, чтобы иметь постоянный живой бэкап в текущем времени, и его обрабатывать? Как нормализовать запросы и траффик, ведь в рабочее время эта фигня должна постоянно работать?

Кратко суть:

  • Поскольку на АТС консоль абсолютно урезана и никаких прав - обработку могу делать только на отдельном VPS (да, я в кои-то веки обзавёлся VPS).
  • Как правильнее - делать запрос с VPS? Или как-то создать на VPS клон БД с АТС?
  • В виду практически полного отсутствия опыта работы с SQL я не представляю себе, как сделать технически грамотное решение.
  • Как бы вы решили такую проблему? Повторюсь - задача: получать каждые 5 минут список пропущенных звонков, на которые операторы не перезвонили, и куда-то слать уведомление, чтобы операторы могли эту информацию посмотреть и перезвонить. Я пока остановился на варианте с ботом в Telegram.

Помогите, пожалуйста.

В свою очередь, если кого-то интересует информация по IP телефонии и интеграции с 1С СофтФон (по крайней мере, в «АльфаАвто») - могу рассказать, как это сделали мы.

 , ,

ekzotech
()

Локальный Apache + dnsmasq + SSL

Имеется макось, в которой настроен dnsmasq, настроенный так, чтобы sites/project был доступен локально через браузер в project.dev.

Вопрос такой: насколько реально сделать локально Apache + dnsmasq wildcard на *.devs + сертификаты letsencrypt (он у меня не видит ни один сайт из тех, что лежат в дире)? Настраивал ли кто-то подобное? Или как выходите из положения, если надо локально потестить код под https?

 , ,

ekzotech
()

Есть специалисты по телефонии?

Приношу извинения, что в Talks, но не знаю, куда постить.

Хотим интегрировать телефонию с 1с (СофтФон). Как я понял, нам нужна IP ATC (например, Yeastar S20), и для использования имеющихся DECT-телефонов нужны выходные шлюзы (есть б/у Linksys). Но вопрос тут такой: текущий оператор не предоставляет SIP. Вроде как можно воткнуть перед нашей IP ATC некий FXO-шлюз, но вопрос такой: будет ли сохраняться CallerID (номер входящего звонка)?

Кто вообще с таким сталкивался? При переадресации (если оформить другой номер, который с SIP) мы вроде как потеряем CallerID.

Linux тут при том, что Asterisk обычно запускают на нём.

 

ekzotech
()

Непонятки с кодеками в opensuse tumbleweed

Собственно, сабж. Последний обновлённый tumbleweed, kde.

Подключил репозиторий пакман, обновился. mp3 воспроизводится, flac/alac воспроизводятся без звука, при попытке открыть любой фильм vlc падает, Dragon player рисует эквалайзер по звуку и всё, видео нет. До этого, когда в последний раз ставил opensuse - никаких проблем не припомню. Что-то поменялось в opensuse? Как разобраться, в чём проблема и как её устранить?

Снести все репы, сделать zypper dup? А как потом накатить все кодеки?

 , ,

ekzotech
()

Скинуть информацию с зависающего HDD

Всем привет! Дано: умирающий WD Green 2tb, подключённый через USB-адаптер. Посоветуйте, каким софтом или каким образом можно скинуть информацию с него, если я могу скинуть 10-15гб и он виснет? Приходится вырубать его и включать заново.

Есть что-то такое, чтоб умело сохранять состояние (сколько скопировано и что дальше копировать) при отключении харда? Хард под завязку забит важными рабочими данными, в том числе специализированный софт.

 ,

ekzotech
()

Посоветуйте инструментов для решения проблемы

Поскольку я нуб в разработке и имею небольшие познания в разработке, хочу попросить совета.

Собираюсь сделать веб-сервис, по факту - просто дёргать из БД содержимое для страниц. Поскольку в ноябре и декабре я изучал Java, хотелось бы получить реальный опыт разработки на Java. Знаком с сервлетами (с jsp).

Вопрос вот в чём: как это всё реализовать? Писать на Java + Javascript? Perl + Mojo? Node.js? Что будет меньше нагружать сервер в плане ресурсов и что будет работать быстрее? PHP не предлагать.

 ,

ekzotech
()

Посоветуйте софт для поиска дубликатов файлов под Linux

Всех приветствую!

Посоветуйте линуксовый софт для поиска дубликатов файлов. Восстановил кучу данных с диска, часть со структурой папок и именами, часть - без. Просматривая мельком восстановленное уже вижу, что часть данных дублируется, иногда неоднократно. Руками не разобрать - всего порядка 370к файлов.

По типам файлов для поиска дубликатов важнее всего фото, видео, документы.

Есть что-то такое под Линукс?

Если не найду софт под Линукс, буду цеплять нарды и использовать софт под макось, но лучше бы Линукс, потому что есть ещё 3тб хард в btrfs, на котором часть данных также может дублироваться.

 , ,

ekzotech
()

Посоветуйте книжки для детей про космос

Злостный оффтоп, но тут есть весьма образованные люди (если не изменяет память, даже учёные есть).

Посоветуйте детские книжки про космос. Лет 15 назад читал интересные книжки про космос и всё с ним связанное, но названий не помню, книжки найти не могу.

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

Всем добра!

 , ,

ekzotech
()

iTerm2 - не работают клавиши навигации

MacOS 10.12, версия iTerm2 - 3.0.13, zsh в роли шелла. Не работают хоткеи option/cmd + left/right arrow. На iMac версия постарее, там всё ок. Уже погуглил настройки, прописал Send Esc Sequence - всё равно получаю [D и [C при нажатии на option + left/right arrow. Cmd + стрелки двигает каретку на один символ (как обычные стрелки).

Выбрал пресет Natural text editing - эффекта никакого, всё так же. Тип терминала - xterm-256. Кто-то сталкивался?

Поскольку 100% кто-то напишет «причём тут Линукс?» - я уже отвечал на этот вопрос дофига раз, ещё раз отвечать лень.

 , , ,

ekzotech
()

Как сохранить ресурс батареи ноутбука на максимально долгий срок?

Поменял батарею в ноутбуке. В связи с этим вопрос - как можно растянуть максимально срок службы батареи на уровне как можно более высоком? Чтобы через полгода не получить 20% ёмкости батареи, например.

Я знаю, что перезаряд для батареи критичен, как и глубокий разряд. Также я знаю, что у макбуков, например, цикл заряда увеличивается при наборе 100% зарядки (например, зарядить 5 раз с 80% до 100% == 1 цикл).

С другой стороны, периодически батарею вроде как надо тренировать, разряжать до какого-то значения.

Как лучше быть? Заряжать до 100% и отключать от сети? Если держать ноутбук подключённым к сети только во время зарядки и по достижении полного заряда переходить на батарею, разряжать где-нибудь до 50-60% и потом заряжать - как такой вариант? Или лучше заряжать батарею маленькими порциями?

Смартфоны приучают нас к зарядке типа «на ночь на зарядку до 100%, и при уровне 20% и ниже на зарядку», в итоге батареи вполне себе функционируют 2-3 года в режиме ежедневной зарядки.

В общем, советов по батареям тред.

 , , ,

ekzotech
()

Какой уровень знаний необходим для Java middle?

Прошёл курсы Иннополиса в КФУ, 120 часов по Java. Разбирали Java Core, Maven, Observer/Observable, Spring, Hibernate и DAO в целом. Были и домашки и прочее. Некоторые моменты для меня пока не очень понятны, но работаю с этим.

Уже ближе к концу обучения у нас стали проводить собеседования со Сбертехом. Однако учащихся с нетехническим образованием (как и я) завернули, в Сбертех берут только с техническим образованием (пускай по холодильникам, но технарь). Потом новогодние праздники начались со всеми вытекающими. В общем, ждём собеседований с другими фирмами. В свободное время продолжаю ковырять Java, вполне нравится. Может пока, но тем не менее.

Так вот, у меня таки следующий вопрос. Устроиться Java-junior'ом, насколько я знаю, крайне сложно, потому как народу много, вакансий мало, уровень ЗП низкий (в плане понаехать в другой город и снимать ещё жильё - надо же ещё выживать как-то). Но насколько я знаю, в случае с middle ситуация уже обратная, миддлов хорошо набирают, да и зарплаты там куда привлекательнее.

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

Ну и какая в среднем вилка по ЗП для миддла выходит?

Рассчитываю что смогу пройти собеседование и таки устроиться в Иннополис, тогда будет проще. Но мало ли.

 , ,

ekzotech
()

vim - маппинг клавиш с Esc-последовательностями

Мучал гугол, но нужного ответа не нашёл.

Хочу сделать перемещение курсора по atl+hjkl. В моём случае alt+h даёт ввод ^[h. Другие буквы аналогично. Делаю map <Esc>[h - первое же нажатие выводит из режима вставки (что логично, ведь указан <Esc>). Замена на ^ ситуацию не меняет. Как сделать так, чтобы он не выходил из режима вставки?

Можно, конечно воткнуть обратно переход в режим вставки, но это ж какой оверхед будет, на каждое нажатие кнопки скакать между режимами?

 , , ,

ekzotech
()

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