LINUX.ORG.RU

3
Всего сообщений: 76

Создаю QBS плагин для VS Code

Народ, всем не хворать.

Тут недавно решил попытать счастья в Node.js и создать плагин для всеми любимго VS Code с поддержкой QBS.

И вуаля, что уже можно:

  • Открыть папочку с файлом проекта QBS (пока что отображается структура текущего открытого каталога со всеми файликами в нем «как есть» на ФС) .
  • Выбрать нужный проект для сборки (если в папочке несколько файлов).
  • Выбрать профиль для сборки (по рабоче-крестьянскому - комплект с компиляторами).
  • Выбрать конфигурацию сборки (по рабоче-крестьянскому - дебаг/релиз).
  • Выбрать продукт для сборки (или все продукты).
  • Выбрать продукт для запуска.
  • Выбрать продукт для отладки.

Работает автоматическая «интеллектуальная» подсветка хидеров компилятора и прочее.

Я пока еще не релизил ничего в маркет VS Code, т.к. пока все еще в процессе тестирования/разработки.

Вот сам исходный код плагина (делал на основе плагина CMake):

Вот сам бинарь плагина, который достаточно только установить в VS Code:

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

Баг-репорты слать сюда:

PS: По крайней мере я смог собрать QtCreator и сам QBS при помощи этого плагина на Windows && MSVC. Также тестил и на Linux - вроде работает.

 , , ,

kuzulis ()

firefox как смотреть видео в mpv?

Какой есть плагин, который реализует просмотр видео(ютуб и всё остальное) в mpv? Т.е чтобы была возможность прописать external command

 , ,

bryak ()

Как установить VLC plugin в Firefox'е?

В Ubunt’е 18.04 хотел поставить VLC plugin в Firefox’е, но не смог. Поставил browser-plugin-vlc, в /usr/lib/mozilla/plugins появился libvlcplugin.so, но в Firefox’е плагин не появился. Как его поставить-то? Связано ли это с тем, что в Firefox’е перешли с НПАПИ на ШНАПИ или как там это произошло? Бечь-то куда? Если в свежем Firefox’е VLC plugin нельзя, то где можно? Epiphany и Chromium тоже не помогли.

 , , ,

Camel ()

Траблы с vim-instant-markdown

Привет. Установил, значит, плагин vim-instant-markdown. Когда открываю пустой или мало заполненный файл, получаю такую ошибку при каждой попытке ввода.

"hello.md" [New File]
Error detected while processing function <SNR>38_pushMarkdown[4]..<SNR>38_bufGetLines:
line    6:
E684: list index out of range: -3
E116: Invalid arguments for function join([lines[row_num], '<a name="#marker" id="marker"></a>'], ' ')
Error detected while processing function <SNR>38_refreshView[2]..<SNR>38_bufGetLines:
line    6:
E684: list index out of range: -3
E116: Invalid arguments for function join([lines[row_num], '<a name="#marker" id="marker"></a>'], ' ')

Интересно то, что если в файле много контента, то ошибки нет. Отображение в браузере в любом случае работает правильно. Кто-нибудь пользуется этим плагином? Есть проблема?

PS Баг появляется, если в файле меньше 3-х строк. Забавно

 , ,

Rot1 ()

Живой поиск в Vim

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

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

function! s:SearchFinderDialog(query)
    silent! execute "botright pedit ls"
    noautocmd wincmd P
    set buftype=nofile

    for filepath in s:GetMatchedFiles(a:query)
        silent! execute "r! echo " . filepath
    endfor
    silent! execute "redraw!"

    let search_query = input('>>> ')
    call s:SearchFinderDialog(search_query)
endfunc

Это решение выводит список файлов в буффер и показывает строку ввода

А подскажите как реализовать как в CtrlP? Стрелки (вверх, вниз) управляют буфером (выделением файла), а набор текста ведется в строку поиска

Ссылка на gif

 , ,

shotInLeg ()

Browser and antivirus

Hi all !

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

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

Почему нужно ставить целый антивирус в систему который якобы проверяет трафик по 80 порту или хз там оно пашет. Почему просто не поставить такой плагин в брузер, чтобы проверял всякие файлы, ЖС и прочее ?

Спасибо.

 , ,

mx__ ()

Установка плагина для GCC в Gentoo — нужно исправить ebuild или CMakeLists.txt?

Во время установки ebuild получаю предупреждение:

>>> Install odb-9999 into /var/tmp/portage/dev-util/odb-9999/image category dev-util
>>> Working in BUILD_DIR: "/var/tmp/portage/dev-util/odb-9999/work/odb-9999_build"
[0/1] Install the project...
-- Install configuration: "Gentoo"
-- Installing: /var/tmp/portage/dev-util/odb-9999/image/usr/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/plugin/libodb.so
-- Installing: /var/tmp/portage/dev-util/odb-9999/image/usr/bin/odb
>>> Completed installing odb-9999 into /var/tmp/portage/dev-util/odb-9999/image

 * Final size of build directory: 21196 KiB (20.6 MiB)
 * Final size of installed tree:   4632 KiB ( 4.5 MiB)

 * The ebuild is installing to one or more unexpected paths:
 * 
 *   /usr/usr
 * 
 * Please fix the ebuild to use correct FHS/Gentoo policy paths.

Вот в этом файле дважды встречается каталог usr:

/var/tmp/portage/dev-util/odb-9999/image/usr/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/plugin/libodb.so

В CMakeLists.txt определяется каталог с плагинами для GCC таким образом:

execute_process (COMMAND ${CMAKE_CXX_COMPILER} "-print-file-name=plugin"
    OUTPUT_VARIABLE GCC_PLUGIN_DIR
    OUTPUT_STRIP_TRAILING_WHITESPACE
)
Пример значения переменной CMAKE_CXX_COMPILER:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/plugin

И вот так идёт установка плагина в CMakeLists.txt:

install (TARGETS odb
    LIBRARY
        DESTINATION ${CMAKE_INSTALL_PREFIX}/${GCC_PLUGIN_DIR}
)
Так как нет других идей как определить путь к плагинам GCC, то в результате получаю абсолютный путь с /usr в начале. И добавляю ${CMAKE_INSTALL_PREFIX}, чтобы не использовать жестко закодированный абсолютный путь.

Теперь возникает вопрос: для того, чтобы исправить установку с помощью portage, мне нужно обработать эту ситуацию в ebuild или поменять логику в CMakeLists.txt?

 , , , ,

Pravorskyi ()

Как создать страницу с формой из wordpress pluginа?

Требуется создать plugin для wordpress где пользователь может кликнуть по дате в календаре и ввести booking детали, затем оплатить через paypal. Как создать календарь я понял: создать класс extends WP_Widget и в методе этого класса widget вывести html. Но как создать страницу с формой куда юзер должен попадать после клика в этом календаре? Желательно что бы она содержала стандартный заголовок и прочее как на других страницах.

 , , ,

iluha16 ()

Оптимизация куска кода

Доброе утро, ЛОР.

Задача: Плагин авторизации для Moodle. Плагин проверяет на внешней системе идентификационные данные пользователя. Если результат true, авторизует пользователя, иначе отклоняет авторизацию.

Особенность: Moodle работает только с локальными профилями. Если авторизация разрешена, а локальный профиль отсутствует, пользователя потребуется создать.

В начале был такой код:

public function user_login($username, $password) {
    if (!auth_billing::check_user($username, $password)) {
        return false;
    }

    if (!$user = get_complete_user_data('email', $username)) {
        if (!auth_billing::create_user($username)) {
            return false;
        }

        $user = get_complete_user_data('email', $username);
    }

    complete_user_login($user);
    self::redirect();
}

Авторизация происходит по адресу электронной почты и паролю пользователя. На версии Moodle 3.5+ код работает, как и ожидается. На старых версиях Moodle всплыл нюанс: В функцию передаётся адрес эл. почты только тогда, когда локальный профиль отсутствует. В остальных случаях, передаётся логин существующего пользователя.

Функция была переписана таким образом:

public function user_login($username, $password) {
    if (!validate_email($username)) {
        if (!$user = get_complete_user_data('username', $username)) {
            return false;
        }

        if (!auth_billing::check_user($user->email, $password)) {
            return false;
        }
    } else {
        if (!auth_billing::check_user($username, $password)) {
            return false;
        }

        if (!$user = get_complete_user_data('email', $username)) {
            if (!auth_billing::create_user($username)) {
                return false;
            }

            $user = get_complete_user_data('email', $username);
        }
    }

    complete_user_login($user);
    self::redirect();
}

Вопрос: Это работает и выполняет возложенную задачу. Не устраивает количество условий и уровень вложенности. Существуют способы оптимизации этого кода?

 , ,

Adeptus-Mechanicus ()

Vim, NerdTree не открывает катаоги

На «o» не открывает. Может только выходить из каталогов. Также в путях знаки вопроса https://i.imgur.com/u5EF7s8.png

 ,

Sorax_Grand ()

OpenMW fxd S.T.E.P guide plugin pack

Ну во первых для чего это всё?

Это небольшое руководство по прокачке исключительно графической составляющей восемнадцатилетней игры до уровня если не 21го века то по крайней мере местами не хуже чем в Oblivion! Особенно если железо вам позволяет выжать максимум из не оптимизированной игры. В этом руководстве нет плагинов затрагивающих оригинальный: сюжет, квесты, NPC. Здесь нет новых игровых расс. Здесь нет читерского хлама и прочих вещей изменяющих игровой баланс либо добавляющих необходимость: есть, спать, готовить и т.п.

А как насчёт русификации?

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

Ну так и где этот твой мануал?

Оригинал мануала S.T.E.P. Guide: A modern Morrowind был под ванильный MorrowinD и вендас но что гораздо важнее в дальнейшем он был исправлен An OpenMW-friendly guide to installing S.T.E.P. Для тех кому трудно думать и понимать сравнивая сразу два разных источника в уже отредактированном виде всё тот же мануал можно прочитать тут.

Да там-же хренова гора плагинов… Делать это всё руками? Сложна, скучно, неудобна, не хочу… не буду…

По отдельности плагины можно найти по их url-ам в интернете найденным в мануале.

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

В сборке при прочих возможных использованы русифицированные 2K версии плагинов!

Всем кого это заинтерисует могу дать доступ в директорию на rw просто попросите об этом.

Почему выложил туда а не сюда… надо было вообще делать не так.

Ну так возьми и сделай сам. И да необходимый объём был только на меге а лично я тоже за то чтобы упаковать всё это добро в bsa и выложить на более дружелюбный git-хосинг с поддержкой large file storage либо вообще скормить список программе которая автоматизирует закачку и распаковку.

Надо было запаковать в bsa!

Да надо… Бери exe-шнег bsapack.exe под вендаз и запаковывай либо вот тебе его исходники от самого автора bsapack.exe развлекайся. Да и упаковка текстур особо не повлияет на общий объём.

Как устанавливать этот твой OpenMW?

Вот так Installation Instructions

А где iso/data files от оригинального Morrowind-а?

Ищите и добывайте их сами где хотите потому как их здесь нет. Весь представленный контент в основном с https://www.nexusmods.com и разработан энтузиастами не имеющими отношения к bethesda либо !С. Большинство плагинов заменяет текстуры и модели поэтом им безразлично английский или русский вариант игры вы используете. Да на steam-овскую gog-овскую версии оно тоже встанет без проблем.

Ладно а как устанавливать плагины в этом твоём OpenMW?

Вот так Mod installation

А официальные bethesda-вские плагины?

Их здесь нет. Совсем. Если вам надо вы знаете где их найти и как подключить.

Как настраивать это добро?

Я настраивал вот так.

А как выглядит всё это добро? Даёшь графоний! Скринов в студию!

Галерея оригинальных картинок находится там STEP for OpenMW.

Галерея моих скриншотов собственно вот И да это моё максимальное разрешение а внешний вид это компромисс между красотой и приемлемой скоростью на встроенной в проц затычке от штеуд-а вместо видеокарточки. Если вас интересуют другие места, npc могу понаделать сколько угодно только давайте заказы сразу списком так сказать.

По поводу самих скриншотов и специально для эстетов - да они выглядят так странно потому что включён distant terrain и вместе с тем small feature culling и мелкие объекты на достаточно удалённом расстоянии движок попросту не рисует ради ускорения.

Без вмешательства в настройки внешний вид OpenMW напоминает ванильный MorrowinD однако топикстартеру это стало не интересно и он углубился в настройки и новые фичи. Если вас это не устраивает не вносите необдуманных изменений в settings.cfg.

А что по поводу самой игры? Можно пройти квесты MorrowinD-а в этом твоём OpenMW?

Да официальный квест MorrowinD-а, TribunaL-а и BloodmooN-а и официальные bethesda-вские плагины а так же их переведённые на понятный варианты можно пройти причём уже довольно давно! Статус сторонних плагинов можно узнать на wiki Mod status. В моих скринах любопытный мог разгладеть уже освобождённый от проклятий мир Морровинда, столицу всей империи Морнхолд и тот самый оригинальный остров на севере.

А что по поводу FPS?

Версия игры на данный момент, одну секундочку, 0.4* и работы по оптимизации графики ещё даже и не начинались по сути. К релизу всё должно стать гораздо веселее. А в данный момент FPS, без особых видимых на то причин, местами, на поверхности, может проседать до 5 а то и 2!!! В целом играбельно если смириться с просадками FPS. Если вы получите FPS в районе 20-30 не говоря о 60 радуйтесь.

 , , , ,

init_6 ()

Плагин для управления сессией Firefox?

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

 , ,

fehhner ()

xfce4-indicator-plugin в Open Suse 42.3

Подскажите пожалуйста.

1. Как установить xfce4-indicator-plugin в Open Suse 42.3, так как не смог найти в Yast, может конечно плохо искал.

2. Полторы иконки «телеграм» отображается в системном лотке XFCE, правда при вертикальном расположении панели и довольно большом размере иконок(42). Если сделать меньше, то будет нормальная одна иконка. Хотелось бы оставить этого размера, но «одну целую» иконку.

 ,

geptik ()

Что делать с плагинами в новых лисах?

Вот у меня громптица, раньше стоял плагин fire tray, очень удобно было, щас всё не работает.

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

 , ,

petyanamlt ()

Аналоги Intelij Sense для QtCreator

Кто чем пользуется для проверки кода? Пробовал поставить qtccpphchecker, но чего-то много ошибок выдает, кто справился с ним?

 , ,

gyok ()

Флешокапец в 2020

Ничего не поделаешь - это flash.

Adobe объявила, что flash плагин для браузеров прикроют в 2020 году

https://blogs.adobe.com/conversations/2017/07/adobe-flash-update.html

 , ,

fornlr ()

Redmine отправка писем с 2х разных ящиков

Не могу разобраться, как мне отправлять письма с 2х разных ящиков.

в configuration.yml прописан один ящик, с ним всё работает. email_delivery: delivery_method: :smtp smtp_settings: address: smtp.yandex.com port: 465 ssl: true enable_starttls_auto: true domain: lhost.su authentication: :login user_name: «lk@lhost.su» password: «password»

мне нужно приделать ещё один help@lhost.su Плагин позволяет выбрать sender-email.

Подскажите, в каком направлении думать, кто с таким сталкивался? Если прописать ещё один в конфигурации - редмайн падает.

может как-то через sendmail?

 , , ,

leonmoor ()

магический IID в Qt

Доброго времени суток. При написании собстенного плагина для приложения, с использованием интерфейса, необходимо 2 макроса: Q_DECLARE_INTERFACE(<name> <IID>) и Q_PLUGIN_METADATA(IID <IID> FILE <file.json>) - для интерфейса и плагина соответственно. Причем, если собирать плагин с отличным IID от IID интерфейса, то экспортируется он нормально. НО если писать плагин для Qt, скажем, реализуя QStylePlugin, то объявление кастомного IID для макроса Q_DECLARE_INTERFACE является ошибкой. Плагин начинает работать толкько с IID QFactoryInterface'a. Почему такие различия?

 , , ,

Rot1 ()

Что за плагин для FF?

Может кто-то знает каким плагином для Firefox пользуется докладчик? https://youtu.be/8WPpjPuz9a8?t=2310

 ,

Spinel ()

Нужен ли кому-то Common Lisp в IDEA?

Думаю, для разминки скиллов в Яве может быть интересно сделать связку между IDEA и SLIME. Пока не уверен, что из этого что-нибудь выйдет, но у меня уже есть положительный опыт написания IDE для лиспа «с нуля» на базе SWANK, клиент написан на tcl (URL у меня в профиле). Здесь, видимо, объём работы должен быть гораздо меньше.

Также я не совсем уверен, что это нужно мне самому.

Всё же tcl - это ещё и гуй, который легковесен и по мне так гораздо приятнее Java (не могу смотреть без слёз, как IDEA тормозит). И заодно ещё вопрос: насколько хорош CUSP и насколько тяжело может оказаться перевести CUSP на IDEA.

Хотя уместен и третий вопрос - нафига вообще что-то делать, если CUSP уже есть - его ведь можно просто допилить, если уж так приспичило.

 , , ,

den73 ()