Echo :: Forum :: Blog :: RSS
Pages: 1 2
Уведомления для IDEC Mobile [1]
Re: Уведомления для IDEC Mobile
vit01(mira, 1) — vit01
2016-10-09 09:39:51


Итак, за что проголосует народ? Может быть, есть, что предложить получше?

Re: Android клиент [10]
Re: Android клиент
vit01(mira, 1) — btimofeev
2016-10-05 07:16:55


btimofeev> Я исправил тот самый баг с удалением свайпом в черновиках (сделай пулл) и добавил поясняющую иконку на фон при удалении. Можно еще и undo реализовать будет.

Ура! Это очень круто, спасибо! Пересобрал только что и очень доволен.

Undo, наверное, будет лишним.

Вопрос программистам [0]
Вопрос программистам
vit01(tavern,10) — All
2016-09-13 08:27:08


Среди вас кто-нибудь использует на работе или в собственных проектах технологии или наработки на основе нейронных сетей?

Если да, то какие именно? Что интересного можете припомнить в этой практике?

С этим надо бы в ru.humor.14, да тольно оно не на русском языке [1]
Re: С этим надо бы в ru.humor.14, да тольно оно не на русском языке
vit01(mira, 1) — Andrew Lobanov
2016-09-05 14:24:36


Как раз читал недавно новый холивар на Хабре на эту тему.

Мой главный аргумент, почему табы рулят - это то, что когда хочешь нажать Backspace/Delete для удаления пустого места, то надо сделать это всего 1 раз, а не 4.

В Emacs мне удалось частично побороть эту проблему на пробел-конфигурациях, но только лишь частично.
Просто некоторые major-modes для языков могут насильно сбивать настройки написанных костылей.

В Android-studio (хоть и не на 100%) возню с пробелами компенсирует функция "code beautifier'а".

Re: Android клиент [0]
Re: Android клиент
vit01(mira, 1) — btimofeev
2016-08-31 01:54:57


Так, перейдём сюда, чтобы людей не смущать. Как раз эхотаг.

btimofeev> А в чем проблема с SharedPreferences (я с ними никогда не работал)?

1. Чтобы хранить вложенные значения, нужны костыли. Например, люди предлагают всё тот же JSON
2. PreferenceActivity, который работает в связке с этим делом, имеет скудный набор виджетов (например, те же кастомные списки для эхолиста не сделать вообще)
3. Надо реализовывать всё через PreferenceFragment; это довольно небыстро (для кодинга в том числе) и заставляет пользователя дольше кликать, чтобы добраться до нужной настройки

btimofeev> А с json просто работать через библиотеку https://github.com/google/gson

Да, уже слышал про гсон: люди на том же Stackoverflow его постоянно советуют. Но, во-первых, хочется обойтись без внешних библиотек на нижнем уровне (для GUI ещё можно), во-вторых, когда я мельком взглянул на исходники этого чуда, сразу поплохело :)

Несетевые проекты [47]
Re: cmus
vit01(mira, 1) — btimofeev
2016-06-13 19:02:57


btimofeev> Можешь еще посмотреть код deadbeef'а, у него внутри плагина доступна функция для добавления нескольких треков.

deadbeef как раз на разные сомнительные штуки имеет функцию плагиноинициализации. Здесь я сделал подобную вещь и тем самым завершил перенос функций добавления плейлиста внутрь плагинов.

Посмотрим, что разработчик ответит: https://github.com/cmus/cmus/pull/460

PM [2]
Re: PM
vit01(mira, 1) — Difrex
2016-05-09 12:32:26


Difrex> Есть только проблема с отображением, если uri в ресурсе очень длинный - табличку корежит

Difrex> Я, в принципе, знаю как это поправить.

Там таблица строится очень просто - обычным дополнением пробелов справа.

Если получится починить, то очень хорошо. Сам просто не придумал, как такие случаи обрабатывать. Только если обрезать строку, но это не очень правильно.

idec.el [3]
Re: idec.el
vit01(mira, 1) — Difrex
2016-04-28 03:13:59


Difrex> Читаем сообщения в эхе

А вот здесь прошу объяснить. Насчёт получения и отправки всё понятно (просто открывается новый буфер, туда льётся текст, а потом press Enter to continue).

Но как именно будет происходить процесс чтения? "Стеной текста" или каким-нибудь хитрым переключением, как в Цезии?

Упрощение написания скриптов для GIMP [4]
Re: Упрощение написания скриптов для GIMP
vit01(mira, 1) — Andrew Lobanov
2016-03-30 07:49:30


AL> Тут какое дело. Лиспокод не по скобочкам читают на самом деле. Я скобочки не замечаю даже особо. Блоки отделяются отступом, а синтаксис на скобочки не так уж и завязан при чтении человеком, как бы это странно не звучало.

Дело скорее не именно в чтении (мы же всё-таки буквы читаем, а не скобочки, верно?), а в написании кода. Когда он уже написан, скобки можно перенести на предыдущие строки и не обращать на них внимания. Но во время кодинга привык отделять. Ладно, спишу это на свои привычки.

AL> Было бы прикольно подключиться SLIME к гимпу.

Не поверишь, но такой плагин уже существует: https://github.com/pft/gimpmode

Вдохновляющий текст: Write Code Every Day [3]
Re: Вдохновляющий текст: Write Code Every Day
Andrew Lobanov(station13, 1) — Difrex
2016-03-10 04:43:45


>> The code must be Open Source and up on Github.

> Я вот, кстати, не считаю, что надо сразу тащить все на гитхаб.

Мне кажется, это надо читать, как "доступность кода с историей изменений". Хоть hg, хоть git, хоть svn с bazar. Во всяком случае именно это мне кажется хорошим тоном для Open Source проекта. В конце концов, хороший код с историей изменений и хорошими комментариями к коммитам может играть роль некоего учебного пособия помимо прочего.

Обнаружил проблему 2038 года в ii-php [0]
Обнаружил проблему 2038 года в ii-php
vit01(mira, 1) — All
2016-02-22 09:05:27


Сабж
Проявится, если использовать движок MySQL.
Надо будет поменять там структуру.

"Транспорты" для базы и PHP [0]
"Транспорты" для базы и PHP
vit01(mira, 1) — All
2016-02-21 11:36:10


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

Поэтому решил реализовать абстрактный интерфейс, через который бы можно было делать любые вещи с любой базой.

Сейчас в ноде до сих пор нельзя просто взять и удалить эху. Создать - на раз два, а удалить - через одно место. В некоторых местах стоят разные условия для разных баз.

В планах стоит сделать некую сисоп-панель, через которую можно править/удалять содержимое эх, чистить дубли и.т.д.

Пятая сборка клиента [0]
Пятая сборка клиента
vit01(mira, 1) — All
2016-02-11 06:47:20


Список изменений:
ii://kg020clPuRsXz6UjrJIu
( эха ii://ii.14 )

Виндузятникам рекомендуется сначала удалить предыдущую версию.

Пожалуйста, протестируйте по юзабилити.

Четвёртая сборка клиента [0]
Четвёртая сборка клиента
vit01(mira, 1) — All
2016-02-10 04:53:53


Исправления и улучшения можно почитать здесь:
ii://ii.14

ii://ek0DKrdqVsZwu4VhQcAf
ii://WrBS7WxjodCn0y2Q2cGv

Установщик находится всё по тому же адресу.
Пакет для дебиана: http://ii-net.tk/files/iicli-modular-0.6.0.deb

[NEW] Portable-версия для винды.
Теперь можно носить клиент вместе с базой на флешке!
http://ii-net.tk/files/ii-portable.zip

Третья сборка клиента [4]
Re: Третья сборка клиента
vit01(mira, 1) — btimofeev
2016-02-07 13:46:08


> Еще при вводе неправильного пароля при отправке сообщения не выводит ошибки. Пишет просто отправлено 0 сообщений. А, к примеру, при помытке скачать список файлов ноды выводит Error: no auth.

А это из-за модульного строения клиента (морда и мейлер отдельно). Можно соорудить костыль для такого, конечно.
То, что при попытке скачивания списка файлов выводит ошибку, связано с тем, что это всё парсится, и если парсинг не удался, то выкидывается Exception.

Теперь есть, с чем ещё поработать =)

Вторая сборка клиента [3]
Re: Вторая сборка клиента
vit01(mira, 1) — vit01
2016-02-06 15:45:09


В общем, у меня проблемы теперь. Решил пересобрать exe-шники, и питон всё время падает.

22033 INFO: Processing pre-find module path hook   PyQt5.uic.port_v3
22094 INFO: Processing pre-find module path hook   PyQt5.uic.port_v2
23074 INFO: Looking for import hooks ...
23140 INFO: Processing hook   hook-PyQt5.uic.py
23214 INFO: Processing hook   hook-PyQt5.QtGui.py
wine: Unhandled page fault on read access to 0x44874150 at address 0xb74a8b66 (thread 0027), starting debugger...
Traceback (most recent call last):
  File "C:\Python34\lib\runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Python34\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Python34\lib\site-packages\PyInstaller\__main__.py", line 97, in <module>
    run()
  File "C:\Python34\lib\site-packages\PyInstaller\__main__.py", line 90, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "C:\Python34\lib\site-packages\PyInstaller\__main__.py", line 46, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "C:\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 755, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "C:\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 701, in build
    exec(text, spec_namespace)
  File "<string>", line 16, in <module>
  File "C:\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 212, in __init__
    self.__postinit__()
  File "C:\Python34\lib\site-packages\PyInstaller\building\datastruct.py", line 183, in __postinit__
    self.assemble()
  File "C:\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 432, in assemble
    imphook_object = ImportHook(imported_name, hook_file)
  File "C:\Python34\lib\site-packages\PyInstaller\building\imphook.py", line 182, in __init__
    self._module = importlib_load_source(hook_modname, self._filename)
... [>>>]

Черновая сборка для Qt-клиента на винду [10]
Re: Черновая сборка для Qt-клиента на винду
vit01(mira, 1) — btimofeev
2016-02-05 08:39:08


tossedit.exe - это и есть тот самый внутренний редактор. Насчёт точки, видимо, специфично для винды; попробую починить, спасибо.

Попробуй вместо leafpad поставить notepad и снять галку

Wine и Python [5]
Re: Wine и Python
vit01(mira, 1) — btimofeev
2016-02-04 00:48:06


Спасибо, попробую на выходных сделать готовую сборку и отчитаюсь.

Bash и Python развращают мозг [3]
Re: Bash и Python развращают мозг
vit01(mira, 1) — vit01
2016-01-14 12:26:13


Всё, решено, буду делать велосипеды в большом количестве =)
Обнаружил пробелы в знаниях в области параллельного программирования и асинхронных запросов в вебе.

split-sequence [4]
Re: split-sequence
vit01(mira, 1) — Andrew Lobanov
2016-01-02 04:28:07


Так или иначе, попробовал набросать подобную функцию сам.
Скорее всего, это г...код, но всё же:

(defun split (str delimiter &key (save-empty nil))
	(setq delimiter (coerce delimiter 'character))
	(let ((result nil) (len (length str)) (j 0) (toappend ""))
		(dotimes (i len)
			(if (char= (char str i) delimiter)
				(progn
					(setq toappend (subseq str j i))
					(setq result (append result (list toappend)))
					(setq j (1+ i))
					; если разделитель в конце, добавляем пустоту
					(if (= i (1- len)) (setq result (append result (list "")))))
				(if (= i (1- len))
					(setq result (append result (list (subseq str j len)))))))
	
		(if (equal save-empty nil) ; убираем пустые строки, если они не нужны
			(setq result (loop for s in result when (not (string= s "")) collect s)))
		result))

(defun dotest (vals)
	(dolist (s vals) (print (apply #'split (eval s)))))

(dotest '((list "/x/features/" "/") ; проверяем, что всё верно работает
			(list "/ffggg/kikj//kjjj///" "/" :save-empty t)
			(list "x/features" "/")))

// укажите кто-нибудь на недочёты, пожалуйста

Читаю тут PCL [0]
Читаю тут PCL
vit01(mira, 1) — All
2015-12-19 15:47:37


Сабж вполне подробный и нескучный.

Как прочитал "историю про макросы" отсюда https://github.com/pcl-ru/pcl-ru/blob/master/chapter-08.tex , впервые за день искренне улыбнулся =)

А функциональный подход лиспа всё-таки ломает неокрепшие мозги.
Кстати, а почему в Common Lisp есть общие макросы and, or, not, но при этом xor доступен только через logxor и подобные ему?

node.js [0]
node.js
Difrex(mira, 14) — All
2015-12-10 09:51:02


Кто пишет под это?

Может кто объяснить, как мне собрать метрики с процесса? Ну, там Garbage Collector вот это все.

LISP [12]
Re: LISP
vit01(mira, 1) — Andrew Lobanov
2015-12-03 16:10:47


> PS: Я рекомендую почитать первую главу PCL (Practical Common Lisp).

Спасибо за направление. Взял PDF в другом месте, буду читать теперь.

develop.16 [0]
develop.16
Difrex(mira, 14) — All
2015-12-01 09:55:28


Обсуждение вопросов программирования.

Pages: 1 2