Pull to refresh

Comments 46

UFO just landed and posted this here
UFO just landed and posted this here
Да, не спорю. Просто реклама акцентирует внимание. Да, люди зарабатывают этим деньги и это их полное право. Мне же было интересно решить свою задачу и изучить что-то новое :)
Это сложно, мне потребуется куча времени, чтобы понять теорию, приступить к практике и, скорее всего, ничего хорошего не выйдет. А вообще я frontend-разработчик и привык к HTML, CSS и JS.
Людям, для которых изучение нового стека является проблемой, не место в индустрии.
И уж тем более не повод тащить любимый набор говна и палок в натив.
Читая статью вспоминал, как ковырял свое первое приложение на электроне чуть больше года назад (документация тогда была на порядок запутаннее, чем сейчас). Вроде бы и выглядит как пересказ основных моментов из документации, но сделано это качественно и доступным языком, за что хочу Вас поблагодарить.
Думаю было бы полезно в подобном же стиле расписать работу со следующими стандартными библиотеками электрона:
web-view-tag
clipboard
Особенно интересует webview так как позволяет запустить отдельный render процесс в том же рабочем окне

Спасибо! С clipboard у меня как раз и идёт работа, когда при сохранении скриншота возвращается ссылка. Заключается она ровно в двух строчках:


const {clipboard} = require('electron')
clipboard.writeText('Example String')

Поэтому я и опустил этот момент :)

Насчет clipboard написал, так как в свое время долго мучился, как организовать копирование файлов в файловом менеджере (например nautilus в ubuntu) и вставку их в моем приложении, при абсолютной уверенности, что это возможно, так как Atom и VSCode написанные на электроне это умеют, пока методом тыка не ввел в консольке clipboard.readText() и получил строку с абсолютными путями до файлов
http://makescreen.ru
Отсутствие десктопного приложения, никакой рекламы и полный минимализм.

Это по сути сайт с


input[type="file". 

Открыть сайт, сделать самому скрин и закинуть скрин — слишком много действий для того, чтобы просто перейти к редактированию. И неизвестно как он себя поведёт в оффлайне, т.к. мне этот сайт каждый раз говорит, что я вставляю не изображение. Хотя действую по его инструкции.

PrintScreen и CTRL + V — куда проще?

image а ещё вот такая вот беда его настигает.

Напоминает историю с вк аудио плеерами. Каждый пишет свой. Хотя, как обучалка для начинающих знакомство с Electron сойдет.

UFO just landed and posted this here

И об Atom не стоит забывать. Тут смотря под какие цели оно надо. Писать убийцу Sketch, к примеру, точно не стоит вместе с Electron. Что-то более-менее простое — почему бы и нет. И опять же вопрос выгоды для бизнеса. Есть у меня предположение, что простенькие вещи таким способом написать дешевле.

И Slack… Течет и память жрет мама-не-горюй(((((

У меня Slack открыт постоянно. В работе использую Atom и Hyperterm. Если бы что-то критично утекало, то заметил бы :(

Может быть у вас винда или линукс, но у меня на маке слэк временами по гигу оперативы отжирает (((

Вы правы, у меня Linux 16.04 с Mate-окружением.

UFO just landed and posted this here

Так глубоко не смотрел. У меня сохранение скриншота — просто AJAX-запрос, далее PHP и, при необходимости, сэйв в базу в виде


fulename: user

(очень условно так).


Но если учесть, что приложение по сути — chrome спереди, а nodejs сзади, то, наверное, да.
Опять же повторюсь, вопрос этот особо не рассматривал.

все что можно сделать в node.js — можно и в electron, в том числе и работать с БД
А как реагирует приложение электрона если:
— кликнут <a target="_blank"…
— кликнут внешнюю ссылку
?

Если кликнуть просто по <a>, то он откроет эту ссылку в этой же вкладке.


Если у <a> стоит target="_blank", то будет открыто новое окно (скриншот ниже)


Что покажет электрон по внешней ссылке

Спасибо, попробую!

А после сборки всё так же много весит? 50? 60? Мб

shots-1.0.0-amd64.deb занимает 32.9 метра. Достаточно много, но не 50-60. shots.Setup.1.0.0.exe — 32.5 метра.
В настройках сборщика можно указать степень сжатия. Возможно, 50-60 появляются там, где установлено не правильно.

На тему мотивации: всё, кроме сохранения скриншота на сервере умеет Shutter. На линуксе ставится из репозитория двумя командами (сначала надо установить сам Shutter, потом поставить необязательные зависимости, чтобы заработало редактирование).


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

В случае с тем же Shutter, картинку можно скопировать в буфер обмена и вставить сразу куда надо, многие сервисы это поддерживают (точно поддерживают: slack, telegram, vk).


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

всё, кроме сохранения скриншота на сервере

В том-то и суть.


картинку можно скопировать в буфер обмена

--shots даёт такую же возможность. Копируй как хочешь, куда хочешь или локально сохраняй.


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

Ну само-то оно не будет. В моём случае пользователь должен пойти и скачать самостоятельно. А так — Slack приходит вместе в паком обновлений. Захотел — не обновил. Всё на усмотрение пользователя.


А вообще статья не про --shots :)

UFO just landed and posted this here
Ну так написали бы отправку на сервер как консольное приложение

И при переходе на другую ось мне пришлось бы снова писать его.


А про то, что скриншотер в 30 Мб это нынче нормально.

Если учесть что сам его код занимает 2 Мб, а остальное прилетает после сборки(из за Хрома на борту), то да. Более того, мы живём в 2016 и 30 метров это явно не проблема.

Консольное приложение как правило это небольшой скрипт. Под mac/linux будет почти одно и то же. А под винду переписать уж всяком проще, чем делать целое приложение.

Это если говорить о просто консольном приложении. С каким-нибудь Visual Studio Code всё уже не так просто.

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
На протяжении года я периодически занимался поиском, но в итоге так и не нашёл приложение, удовлетворяющее моим требованиям.

А что насчёт онлайн сервисов? Есть, например, http://pastenow.ru/ и ещё несколько подобных.

Как-то он, прямо скажем, не очень. Опять же, чтобы сделать скриншот и получить возможность редактирования необходимо заскринить всю область, потом загрузить его, затем нажать на кнопку редактирования и только потом выбрать нужный инструмент. Слишком много действий. Да и не хочу вкладкой или окном держать этот сервис. Уж лучше у меня в трее приложение будет висеть. И работает тормознуто :(

Раньше для этого использовали дельфи. Или Tcl/Tk.
Для написания кроссплатформенных приложений?
Что не так с Tcl/Tk в плане кросс-платформенности и приложений?
Ну дельфи кроссплатформенный лазарус заменил.
Sign up to leave a comment.

Articles