Плагин CommandLine для jOSM (окружности, дуги и т.п. + свои команды)

Хорошая штука. Именно такой возможности частенько не хватало.

Можно подцепить сей скрипт к exttools, тогда точно можно вешать хоткей.

А как подцепить? CommandLine же выбранные объекты и зависимости отправляет на stdin, а exttools, насколько я вижу, только ожидает выход от внешней проги.

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

Отлично, спасибо! Работает.
Configure toolbar, добавить пункт меню, потом Edit shortcut.

Да, стандартный Q в JOSM это просто омерзительно после iD.

Можно скриншоты залить на https://wiki.openstreetmap.org/wiki/Special:Upload?
https://wiki.openstreetmap.org/wiki/Category:RU:Техническое_руководство - описание своих скриптов можно спокойно сюда складывать:
https://wiki.openstreetmap.org/wiki/RU:JOSM/Скрипты_OverQuantum

Написал скриптик для коммандлайна, который утягивает в JOSM геометрию и адрес с портала открытых данных Москвы: https://yadi.sk/d/bxPSm-0vmkURP
Устанавливается как обычно, требует OsmData.py и projections.py (идут в комплекте со стандартными командами).

О качестве данных хорошо написал BushmanK.

Что-то у меня перестал работать скриптик.
11-го числа работал, а больше не хочет.

Я добавил tData.write(sys.stdout) в ветке “Not found” и стал получать этот “Not found”, а то вообще ничего не писал.
Если вывести URL запроса в отладку и скормить его в браузер получаю {“results”:}

Рабочий address2 http://speedcam.osm.rambler.ru/address2.zip

RiG’s, спасибо

Ни у кого не наблюдается проблем с работой плагина? У меня JOSM 10966 просто валится при попытке выполнить любую команду плагина. Сначала JOSM не мог почему-то увидеть Питон, хотя в консоли вызов питона работал, а когда увидел - начал валиться. Сообщения типа:


 STACK TRACE ===
Thread: AWT-EventQueue-0 (18) of main
java.lang.IllegalArgumentException: Listener CommandLine.PointAction@f6c71 (instance of CommandLine.PointAction) was not registered before or already removed.
	at org.openstreetmap.josm.tools.ListenerList.failRemove(ListenerList.java:129)
	at org.openstreetmap.josm.tools.ListenerList$TracingListenerList.failRemove(ListenerList.java:206)
	at org.openstreetmap.josm.tools.ListenerList.removeListener(ListenerList.java:123)
	at org.openstreetmap.josm.tools.ListenerList$TracingListenerList.removeListener(ListenerList.java:190)
	at org.openstreetmap.josm.data.Preferences.removePreferenceChangeListener(Preferences.java:238)
	at org.openstreetmap.josm.actions.mapmode.MapMode.exitMode(MapMode.java:78)
	at CommandLine.PointAction.exitMode(PointAction.java:63)
	at CommandLine.PointAction.mousePressed(PointAction.java:94)
...

Система Win8.1 x64
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:19:22) [MSC v.1500 32 bit (Intel)] on win32

Сломалось в каком-то из обновлений. Баг давно заведен. Но чинить времени нет, увы.

Очень печально. Может кто-то подскажет, в какой версии все работает?

Я просто игнорирую всплывающие ошибки, в целом все работает.

У плагина есть репозиторий на github?

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

Есть, но первичен SVN-репозиторий.

Сделал изменения.
Надеюсь патч примут.

Пока прикладываю jar файл.

На винде кинуть с заменой в %APPDATA%\JOSM\plugins

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

Патч приняли :smiley: , ждите обновление плагина или качайте готовый jar.

У меня не работают команды, которым надо несколько аргументов передать ткнув мышкой. Например, Fillet, если я её запущу предварительно ничего не выбирая, то она сначала спросит way, потом набор точек и дальше дело не пойдёт. А если я way выбрал перед запуском команды, то она спросит набор точек, потом радиус (число) и количество сегментов (тоже число) и после этого сработает как надо. Но так не со всеми командами выйдет.

“Зеркало” с предварительным (и без него) выделением не идёт далее указания первой точки оси.