Ace: Совместимость с iOS

Созданный на 11 янв. 2011  ·  160Комментарии  ·  Источник: ajaxorg/ace

Ace мог бы быть идеальным редактором на устройствах IOS (iPad, iPhone), если бы вы просто могли печатать, но, к сожалению, виртуальная клавиатура никогда не отображается с ACE, также я считаю, что у кого-то был патч для беспин, чтобы это работало.
@gissues : {"order": 96.27329192546586, "status": "backlog"}

Самый полезный комментарий

Привет, ребята! Я только что создал запрос на перенос, который исправляет некоторые проблемы в iOS. Это обеспечивает приятный пользовательский интерфейс, если у вас есть внешняя клавиатура.

Если вам это нравится, я могу подумать об исправлении оставшихся проблем :)

Вы можете увидеть это в действии на https://ipad-undo.gomix.me

Наслаждаться!

Все 160 Комментарий

Мы знаем, и скоро об этом позаботятся. Спасибо за предложение!

не могли бы вы найти нам патч?

Еще меня интересует поддержка iOS (и особенно iPad).
Будем рады услышать о ваших успехах в этом направлении.

Вы можете оформить заказ в ветке ipad. Он еще не идеален, но, по крайней мере, набор текста работает. Для прокрутки используйте два пальца.

Отлично, ветку ipad не заметил.
Спасибо, посмотрю!

Клавиатура не отображалась при использовании ветви ipad. Используя главную ветку, он показывает, но есть ошибка с позиционированием курсора. : /

Забудь то, что я сказал! Здорово, что не появилась клавиатура! Вы можете написать свою собственную клавиатуру, более удобную для программистов и занимающую меньше места. : o)

Тестирование на iPad под управлением iOS 4.3; текущий мастер не отображает клавиатуру или точку вставки и не прокручивается по вертикали (я могу прокручивать по горизонтали двумя пальцами, если текст шире доступной области).

Ветка для iPad не обновлялась с 3 февраля ... тестируя, я вижу, что вертикальная прокрутка работает двумя пальцами (ура!), но очень медленная. Я могу переключить фокус на редактор и вызвать экранную клавиатуру, но точка вставки улетает от редактора, когда окно прокручивается вверх, чтобы соответствовать клавиатуре.

Попытка коснуться редактора кажется проблематичной; Я могу сортировать касание внутри редактируемой строки, но нажатие на другие строки выше, кажется, _ закрывает_ фокус и закрывает клавиатуру. Я могу надежно сфокусировать внимание только на конце документа.

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

(В ветке iPad в обычном Firefox 4 также есть проблемы - кажется, что он делает предположения о положении прокрутки окна, и щелчок в редакторе приводит к размещению курсора в неправильном положении, если я прокрутил _window_ вниз, чтобы он соответствовал редактору в видимое пространство.)

какие-нибудь обновления в ветке ipad?

К сожалению нет. Эта ветка в настоящее время не находится в активной разработке. Мы планируем воскресить его, но пока не знаем, когда.

Извините, что воскресил мертвую ветку, но есть ли прогресс в области iOS?

Очевидно, к этому есть огромный интерес. Я посмотрю и посмотрю, смогу ли я помочь

+1

Веб-компонент, который не поддерживает iPad, больше не может по праву называться веб-компонентом, IMO.

Я поддерживаю это. Я пишу на iPad прямо сейчас, желая, чтобы вместо этого я использовал ACE для программирования ...

+1 тоже очень срочно нужно это на iPad

+1 к срочности

Мне тоже нужна поддержка iOS, и очень скоро. Если бы у меня было время, я был бы счастлив сесть и сделать это сам. Поэтому, если есть какие-либо указатели на то, с чего мне следует начать в коде, и подробности о том, как что-то идет не так, я буду признателен.

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

В сб, 7 апреля 2012 г., 14:53, Джо
[email protected]
написал:

Мне тоже нужна поддержка iOS, и очень скоро. Если бы у меня было время, я был бы счастлив сесть и сделать это сам. Поэтому, если есть какие-либо указатели на то, с чего мне следует начать в коде, и подробности о том, как что-то идет не так, я буду признателен.


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5006423

Там нет никакого способа приведения этой чертову клавиатуры с JavaScript, большие пальцев для пользовательской клавиатуры.

Не правда. Назначьте элемент как доступный для редактирования, и они передадут ему фокус, после чего должна появиться клавиатура. Вы также можете проделать трюки с текстовыми областями и вводом текста, чтобы заставить его работать.

Клавиатура также поставляется с версией Ace, которую я использую на своем сайте, ее просто нельзя использовать.

@PlayMyCode Если я не могу назвать что-то вроде ios.showKeyboard() то это правда, что я не могу поднять это с помощью javascript, это то, что вы сказали, все быстрые исправления ...

Это просто так не работает.

Если содержимое не редактируется или это не ввод текста, зачем отображать клавиатуру? Персонажи никуда не денутся, вы не получите ввод с клавиатуры.

Клавиши должны быть куда-то отправлены, чтобы отображалась клавиатура. Если им некуда идти, значит, не появляется. Если им есть куда пойти, оно появится. Это не взлом, это просто принцип работы ввода текста.

@PlayMyCode - символы не обязательно нуждаются в вводе текста, они могли бы просто «перейти» к javascript - если бы у вас был набор слушателей нажатия клавиш, вы могли бы получить символы и поместить их в любом месте. ..

@hjwp ваше право, но опять же не все так просто. Я считаю, что элементы должны иметь возможность получать фокус, иначе браузер не отправит событие элементу, и многие элементы не могут получить фокус. Например, холст будет прослушивать ключевые события только в том случае, если вы добавите индекс вкладки (или, по крайней мере, я нахожу это только сейчас в Chrome). iOS также отображает клавиатуру для холста, только если вы настроили редактируемый контент.

Либо это академический аргумент. Поддержка iOS - это то, что важно, и ее не следует игнорировать просто потому, что решение слишком похоже на взлом (если, конечно, нет лучшей альтернативы).

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

Ага, вот сколько работает WYSIWYG.

9 апреля 2012 г., в 4:56, "Андре Фидлер"
[email protected]
написал:

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


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5024068

Разве старые версии Ace изначально не позиционировали текстовое поле или элемент ввода под записью? При таком подходе появится клавиатура.

Изначально старые версии Ace не позиционировали текстовое поле или элемент ввода под записью.

новые версии ace делают то же самое.
textarea не синхронизируется с курсором при прокрутке, но это легко исправить
Я не видел туза на ipad, но на Android работает набор текста и перемещение курсора, только нет возможности выбрать текст.
но что более важно

  • ace в браузере Android работает очень медленно, fennec немного лучше, но все еще непригоден (возможно, использование setTimeout здесь с более длинным интервалом может помочь, но не уверен)
  • Клавиатура по умолчанию и предложения автозаполнения совершенно бесполезны для программирования (поэтому создание настраиваемой клавиатуры вместо попытки показать клавиатуру по умолчанию кажется хорошей идеей).
    в целом, я не думаю, что ace может быть полезен на планшетах.

кастомная клавиатура звучит приятно!

Я скептически отношусь к кастомной клавиатуре. Создать хорошую отполированную клавиатуру - нетривиальная задача, и она сама по себе достойна стать большим проектом. Я также ожидал, что чистая HTML-клавиатура будет медленнее, чем встроенная.

Он также должен хорошо работать на экранах разных размеров и ориентации макета. Например, я бы не хотел использовать клавиатуру iPad на iPhone, и это неприятно использовать клавиатуру iPhone на iPad. У них разные клавиатуры не зря. Прежде всего, это означает, что все на iPad и iPhone использует одну клавиатуру, кроме Ace. Короче говоря, у пользователей уже есть клавиатура, которую они ожидают, и во многих случаях она настраивается (например, настраивается как разделенная клавиатура).

Я бы порекомендовал просто заставить работать клавиатуру, так как я ожидал, что это будет меньше работы, чем создание собственной клавиатуры. Тогда беспокойтесь о создании собственной клавиатуры в будущем как отдельную проблему. Это также позволит вам при желании вернуться к клавиатуре ОС в качестве альтернативы настраиваемой, например, если она не работает на определенном устройстве.

На этом сайте также говорится, что вы можете отключить автозаполнение и автоматическое использование заглавных букв для определенных входных данных: http://davidbcalhoun.com/tag/javascript

Пользовательская клавиатура также не сможет использовать всю ширину экрана, если Ace помещается в iframe.

Это может показаться крайним случаем, но как JSFiddle, так и JS.do.it позволяют встраивать редакторы в iframe на других сайтах, и я бы хотел сделать это сам.

@PlayMyCode -

@PlayMyCode - Согласен, нестандартная клавиатура звучит опасно. Я также подозреваю, что те, кто предлагал это, практически не имеют опыта работы с API iOS. Но я мог ошибаться, я просто следую тому, что ios.showKeyboard() , нативные API не имеют ничего эквивалентного этому ... Ближайшим будет вызов becomeFirstResponder на UITextInput контроль ... но я отвлекся.

Это должно быть вполне выполнимо, вероятно, с небольшими усилиями. Я предполагаю, что это похоже на предоставление фокуса элементу, для которого установлено значение contenteditable . Начиная с iOS 5.0, поддерживается contenteditable , см. Самый конец раздела "Создание совместимого веб-контента".

Существует JavaScript для редактирования кода внутри браузера, который запускает клавиатуру на iOS: CodeMirror, см., Например, http://codemirror.net/mode/r/index.html для демонстрации (работает на iPhone) и codemirror.net для общего. Так, может быть, в их коде есть что-то, что может помочь в поддержке iOS в ace?

@bertoltmeyer , CodeMirror основан на

@cranic на самом деле Codemirror2 очень похож на ace и использует тот же textareas
если Codemirror2 работает на ipad, починить ace, работать так же не должно быть сложно

Я пишу с точки зрения специалиста по статистике R, который, как и тысячи других, использует RStudio для кодирования. RStudio - самая популярная IDE для R, построенная на ace. Если бы ace поддерживал iOS, то и RStudio Server. В этом идеальном мире я мог бы просто получить доступ к нашему серверу RStudio со своего iPad и делать все кодирование оттуда. Мне (и тысячам других ребят из R) больше не пришлось бы использовать свой ноутбук. Если серьезно, то отсутствие поддержки iOS у ace - единственная причина, по которой я все еще ношу с собой ноутбук, и я уверен, что есть множество других людей, подобных мне. Так что, если бы я говорил на javaScript, а я не говорю, я бы работал над этим с наивысшим приоритетом. Но поскольку я не могу писать код на js, все, что я могу сказать, это пожалуйста, пожалуйста, пожалуйста, пожалуйста, кто-нибудь может попытаться это исправить. Вздох. Я (и другие) действительно поддержу кикстартер в этом вопросе, если это необходимо.

Привет, я бегло просмотрел код, но все, что я вижу, это div s; где canvas ?

ace никогда не использовал canvas , это было беспин

с 2f6a6ce7e0992a2eccbb8a517aa2d6f4954f1214 не будет прокручиваться из поля зрения.

Кстати. еще одна причина сделать виртуальную клавиатуру

Я повторяю @bertoltmeyer в отношении энтузиазма по поводу установки ace на iOS, чтобы можно было использовать RStudio на iPad.

Мне бы хотелось, чтобы это работало и на iPad - это обеспечило бы _lot_ функций в последующих приложениях (я тоже пришел сюда через RStudio, но только что понял, что ACE используется в некоторых других веб-инструментах, которые я использую. время от времени, поэтому для меня это решило бы множество различных проблем).

Как поднять для этого кикстартер аналогичного проекта? Я готов
положите 100 долларов в банк прямо сейчас
На стороне интерфейсов - Prompt на iOS (ssh-клиент) имеет отличную клавиатуру
который лучше подходит для системного администратора / программирования, чем стандартный макет iOS.

Чт, 10 мая 2012 г., 5:34, Руи Кармо <
[email protected]

написал:

Мне бы очень хотелось, чтобы это работало и на iPad - это позволило бы _lot_
функциональности в последующих приложениях (я тоже пришел сюда
RStudio, но только что понял, что ACE используется в некоторых других веб-инструментах.
использовать время от времени, поэтому для меня это решило бы множество различных проблем).


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5612400

@velniukas Хорошая идея с кикстартером, я не удивлюсь, если немало людей (вроде меня) сделают пожертвования на такой проект.

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

10 мая 2012 г. в 8:01 Майк Лоуренс <
[email protected]

написал:

@velniukas Хорошая идея с кикстартером, не удивлюсь, если
мало кто (как и я) пожертвовал бы на такой проект.


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5615069

Я бы также вложил не менее 200 долларов в проект кикстартера за совместимость с ace iOS. Я уверен, что мы сможем собрать для этого немало денег от сообщества R. Я не могу участвовать в кодировании, потому что я недостаточно владею js, но я готов помочь со сбором средств в сообществе R, если кто-то запустит кикстартер. @velniukas , не могли бы вы определить потенциальных соавторов и связаться с ними по поводу создания такого проекта?

Подойдет - всем, кто заинтересован в помощи в настройке кикстартера - напишите мне в личку

Ваше здоровье
Стив
10xEngineer.me

В чт, 10 мая 2012 г., в 14:59, Бертольт Майер <
[email protected]

написал:

Я бы также вложил не менее 200 долларов в проект кикстартера для ace iOS.
совместимость. Я уверен, что мы сможем собрать немало
деньги за это от сообщества R. Я не могу внести свой вклад в
кодирования, потому что я недостаточно владею js, но я готов помочь с
сбор средств в сообществе R, если кто-то запустит кикстартер.
@velniukas , не могли бы вы определить потенциальных соавторов и
связаться с ними по поводу создания такого проекта?


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5619266

Дело не в деньгах, а в наличии для этого достаточных возможностей разработчика.

Я знаю, но иногда деньги могут помочь людям получить новые возможности. ;-)

Дело в том, что это тяжелая работа, и у каждого есть приоритеты. Сделайте это должным образом, наняв талантливых специалистов. Это небольшая цена для всех нас.

отправлено из моего Айфона

10 мая 2012 г. в 22:18 Ян [email protected] написал:

Дело не в деньгах, а в наличии для этого достаточных возможностей разработчика.


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -5626268

Один из вариантов - опубликовать описание того, что необходимо сделать, на vWorker.com и запросить ставки, чтобы мы могли понять, сколько разработчиков будет доступно для этого и по какой цене.

Боже мой, как бы мне хотелось отказаться от подписки на обновления в этой ветке ...

@Gozala, думаю, вы ищете антенну внизу страницы

может у кого есть тест ipad http://c9.io/nightwing/ace/workspace/kitchen-sink.html
это просто улучшение ime, но оно также должно улучшить набор текста на ipad

@nightwing Keyboard не

@nightwing О, спасибо: D Ты сделал мой день!

@nightwing Возможно, я @fjakobs, когда он приедет в Сан-Франциско на этой неделе. Заставить отображать клавиатуру на iOS 5 очень просто: http://c9.io/gjtorikian/ace/workspace/build/kitchen-sink.html Просто добавьте contenteditable к телу, бум, готово. .

Однако навигация не работает, что, очевидно, сложнее. Он просто сидит на {row: 0, column: 0} . Я предполагаю, что он должен что-то делать с <textarea> , первым дочерним элементом ace_editor который, кажется, действует как своего рода курсор.

+1 для совместимости с iOS

Обратите внимание на фиксацию 15 января 2011 г. на сработает ?
https://github.com/javruben/ace/commit/master

@Gozala Вы можете отказаться от подписки на уведомления в конце этой страницы со ссылкой «отключить уведомления для этой проблемы»

Ссылаясь на предыдущие комментарии членов сообщества R, я установил сервер R-Studio версии 0.96.228 на Ubuntu и использовал Wireshark для проверки входящего сетевого трафика. Я успешно зашел на сервер R-Studio на iPad, используя Safari. Клавиатура теперь появляется нормально, как в текстовых полях (например, для поиска), так и в панели браузера, содержащей R-console. Проблема возникает при нажатии клавиши Return при вводе текста на панели, содержащей консоль R: браузер iPad отправляет FIN, ACK, что заставляет серверное приложение R-Studio сбрасывать сеанс. Есть идеи, что вызывает это?

Любые обновления по этому поводу - я предлагаю вознаграждение за эту функцию - если мы сможем найти подходящих разработчиков, которые понимают проблему.

Вы можете добавить другое имя в список людей, которые хотели бы, чтобы ACE работал с мобильными браузерами, в частности с планшетами. Тем не менее, я уверен, что это нетривиальная задача. Что могут сделать те из нас, кто заинтересован в том, чтобы это произошло, но у кого нет навыков JavaScript, чтобы это сделать? Я готов вложить деньги в проект на Kickstarter, если он поможет.

/ cc @javruben

В последний раз, когда я работал над этим (правда, год (а?) Назад), я тестировал на iphone, и у меня появилась клавиатура. Ввод сработал, но курсор был смещен, и я считаю, что вставка \ n приведет к вставке двух.

Необходимо решить следующие проблемы:

  1. Клавиатура, чтобы появиться
  2. Любое взаимодействие с набором текста должно быть проверено
  3. Выбор с сенсорными событиями
  4. Чтобы прокрутка была быстрой, необходимо реализовать новое средство визуализации без виртуального окна просмотра.
  5. Возможно добавление поддельной клавиатуры для более быстрого доступа к клавишам, используемым в языковом режиме (динамический)

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

Рубен,

У меня нет под рукой разработчика iOS, но один из моих веб-разработчиков должен быть
способны помочь в ближайшем будущем, как только мы выпустим следующий выпуск в
около 2-3 недель.

С Уважением
Стив

В среду, 1 августа 2012 г., в 1:09, Рубен Дэниелс <
[email protected]

написал:

В последний раз, когда я работал над этим (правда, год (а?) Назад), я тестировал
iphone и я получили клавиатуру, чтобы появиться. Ввод сработал, но курсор был
со смещением, и я считаю, что вставка \ n вставит два.

Необходимо решить следующие проблемы:

  1. Клавиатура, чтобы появиться
  2. Любое взаимодействие с набором текста должно быть проверено
  3. Выбор с сенсорными событиями
  4. Чтобы прокрутка была быстрой, новый рендерер должен быть реализован без
    виртуальное окно просмотра
  5. Возможно, добавьте поддельную клавиатуру для более быстрого доступа к клавишам, используемым
    языковой режим (динамический)

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


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -7404954

Отличные новости! Я просто хочу сказать, что мы все еще смотрим и с нетерпением ждем
это. Я вижу невероятные возможности для поддержки iPad. Я действительно не
есть потребность разрабатывать код в облаке, когда у меня есть Mac
кончики пальцев. Я слишком привязан к своему набору инструментов. Но способность развиваться
использование моего iPad меняет все. Спасибо, что остаетесь в курсе этого и
делает что-то невероятное! Дай мне знать, если я смогу помочь.

Вт, 31 июля 2012 г., 20:02, велнюкас <
[email protected]

написал:

Рубен,

У меня нет под рукой разработчика iOS, но один из моих веб-разработчиков должен быть
способны помочь в ближайшем будущем, как только мы выпустим следующий выпуск в
около 2-3 недель.

С Уважением
Стив

В среду, 1 августа 2012 г., в 1:09, Рубен Дэниелс <
[email protected]

написал:

В последний раз, когда я работал над этим (правда, год (а?) Назад), я тестировал
iphone и я получили клавиатуру, чтобы появиться. Набор сработал, но курсор
был
со смещением, и я считаю, что вставка \ n вставит два.

Необходимо решить следующие проблемы:

  1. Клавиатура, чтобы появиться
  2. Любое взаимодействие с набором текста должно быть проверено
  3. Выбор с сенсорными событиями
  4. Чтобы прокрутка была быстрой, новый рендерер должен быть реализован без
    а
    виртуальное окно просмотра
  5. Возможно, добавьте поддельную клавиатуру для более быстрого доступа к клавишам, используемым
    языковой режим (динамический)

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


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -7404954


Ответьте на это письмо напрямую или просмотрите его на GitHub:
https://github.com/ajaxorg/ace/issues/37#issuecomment -7414813

Расти Зарсе
http://LeVo.us
[email protected]
м: 404-510-1134

Я тоже этого жду. Создание приложения, требующего редактирования кода в Интернете. Это почти единственное, что мешает мне отправить его в реальный мир.

@velniukas есть ли обновления по этому

@tzikis +1

Это должно быть обязательной функцией номер один. Почему? Потому что без совместимости с iPad доверие к ACE полностью подорвано, и это будет зависеть от конкурирующих проектов, которые могут и предлагают такой уровень поддержки. Как компания, мы уже думаем о переходе. В конце концов, этот вопрос был впервые поднят более двух лет назад и не подал никаких признаков исчезновения.

@emeraldspy Я ценю

https://c9.io/site/blog/2012/09/the-ace-editor-hits-v1-0/

и список проблем, упомянутых в блоге:

https://github.com/ajaxorg/ace/issues?milestone=2&state=open

Ответ? Пшик. Пока мы в Cloud9 руководим проектом, мы не можем посвятить себя этим усилиям все время. Мы можем делать только постепенные улучшения. Так что мы можем сделать? Что бы вы сделали в такой ситуации? Мы надеялись, что, создав более открытую лицензию, она получит больше вкладов в поддержку мобильных устройств, но этого еще не произошло.

Мы считаем, что ACE - это действительно особенный проект, и мы хотим, чтобы еще больше разработчиков в будущем извлекли выгоду из его исключительной производительности и сложного набора функций. Но мы не можем _принуждать_ других просто оказывать поддержку с мобильных устройств. Итак, мы придумали несколько идей, которые могут сработать:

  • Проведите хакатон выходного дня, посвященный реализации этих функций.
  • Работайте напрямую с другой компанией, которая использует ACE и может выделить ресурсы для разработчиков.
  • Измените наши рекламные материалы (например, ace.ajax.org), чтобы привлечь к этой задаче больше внимания.

Этот проект может страдать от "эффекта свидетеля". То есть интерес к ACE настолько высок, что кто-то может предположить, что другие будут реализовывать запрос новой функции. Реальность такова: вносят свой вклад всего несколько человек. Конечно, нам нравятся эти дополнения и исправления ошибок! Но эти вклады не повлияли на полную поддержку мобильных устройств. На данный момент хорошо работает только Android.

Если у всех, кто это читает, есть идеи, поделитесь ими здесь. Мы не хотим, чтобы эта миссия умерла в безмолвном хныканье «кто-то другой позаботится об этом». Мы мотивированы, просто у нас нет ресурсов, чтобы делать все самостоятельно. Так что нам нужна ваша поддержка !

Так что давайте уже предпримем какие-то действия! И если вы хотите напрямую написать мне по электронной почте о том, чтобы посвятить своих разработчиков этим усилиям, тогда, пожалуйста, сделайте это: мой адрес электронной почты -

Мэтт

Мы провели некоторый анализ необходимой работы и пришли к нескольким
выводы, которые позже включат это в нашу дорожную карту:

  1. Навигация будет сложной
  2. Работа с DOM на мобильных устройствах сложная и медленная.
  3. Экранная клавиатура планшета плохо настроена для задач программирования
  4. Мобильные устройства были не так нужны, как раньше - с Mac Air и ультрабуками
    гораздо больше людей носят с собой целые компьютеры, а не планшеты, и
    клавиатура, для задач программирования

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

С Уважением
Стив
http://10xEngineer.me
скайп: steve_messina

В среду, 3 октября 2012 г., в 3:48 Мэтт [email protected] написал:

@emeraldspy https://github.com/emeraldspy Я ценю мертвую честность
вы принимаете эту ситуацию. Реальность такова: вы правы! Мобильный
поддержка в ACE обязательна. Фактически мы звонили сообществу 2 недели
назад, чтобы поддержать это усилие:

https://c9.io/site/blog/2012/09/the-ace-editor-hits-v1-0/

и список проблем, упомянутых в блоге:

https://github.com/ajaxorg/ace/issues?milestone=2&state=open

Ответ? Пшик. Пока мы в Cloud9 руководим проектом, мы не можем
посвятить себя этому все свое время. Мы можем только постепенно
улучшения. Так что мы можем сделать? Что бы вы сделали в такой ситуации?
Мы надеялись, что, создав более открытую лицензию, мы получим больше
вклады в мобильную поддержку, но этого еще не произошло.

Мы считаем, что ACE - действительно особенный проект, и нам нужно больше разработчиков.
в будущем, чтобы воспользоваться его исключительной производительностью и сложным
набор функций. Но мы не можем _принуждать_ других просто вносить свой мобильный
служба поддержки. Итак, мы придумали несколько идей, которые могут сработать:

  • Проведите хакатон выходного дня, посвященный реализации этих функций.
  • Работайте напрямую с другой компанией, которая использует ACE и может посвятить себя разработке.
    Ресурсы
  • Измените наши рекламные материалы (например, ace.ajax.org), чтобы
    задача для большего количества глаз

Этот проект может страдать от "эффекта свидетеля". То есть там
интерес к ACE настолько высок, что кто-то может предположить, что другие
реализует новый запрос функции. Реальность такова: всего несколько человек
способствовать. Конечно, нам нравятся эти дополнения и исправления ошибок! Но те
взносы не добавили к сквозной мобильной поддержке. В настоящее время
только Андроид работает хорошо.

Если у всех, кто это читает, есть идеи, поделитесь ими.
здесь. Мы не хотим, чтобы эта миссия умерла в молчании, "кто-то еще
позаботьтесь об этом "хныканье. Мы мотивированы, у нас просто нет
ресурсы, чтобы сделать все это самостоятельно. Итак, нам нужна ваша поддержка!

Так что давайте уже предпримем какие-то действия! И если вы хотите написать мне напрямую
о том, чтобы посвятить этих усилий своих разработчиков, тогда, пожалуйста, сделайте: мой
электронная почта: [email protected]. И я почти всегда нахожусь в #ace на irc.freenode.net.
Пойдем!

-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/ajaxorg/ace/issues/37#issuecomment -9084281.

Спасибо, Стив! Я добавил тебя в скайп. Для всех, кто заинтересован в результатах нашего разговора (и любых будущих разговоров, которые мы ведем с другими, желающими внести свой вклад), мы будем публиковать обновления на общедоступном форуме (возможно, GitHub).

@mattpardee, пожалуйста, не забудьте публиковать обновления. От имени команды codebender мы были заинтересованы в участии в хакатоне, как вы предложили в своем ответе на @emeraldspy

Давай, черт возьми, сделаем это

@tzikis Потрясающе. Мы обсуждаем варианты со Стивом, но межнациональный хакатон Google Hangout на выходных звучит как идеальный способ осуществить это. Мы ищем варианты. Быть в курсе!

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

Если мы проведем хакатон в этот уик-энд, я буду вынужден выковать его в течение следующих двух недель, пока железо горячее. В идеале мы будем координировать свои действия с @nightwing и @fjakobs, чтобы дать некоторые рекомендации по передовой практике. Ожидайте увидеть больше об этом в ближайшее время.

Я использую ACE как средство выделения синтаксиса XML-файлов (только для чтения, без редактирования).
Все работает нормально но скролл в мобильных устройствах.

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

Я также открыт для сотрудничества в хакатоне. Давай сделаем это!

Просто предупреждаю. Хакатон будет нетривиальным мероприятием. Будет
неделю или три, по крайней мере, в зависимости от того, кого мы сможем взять на борт.
Вопросы для обсуждения:

  • Упрощение структуры div для повышения производительности
  • Воспроизведение клавиатуры / настраиваемой клавиатуры
  • Навигация

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

4 октября 2012 г. в 21:30 avillegasn [email protected] написал:

Я использую ACE как средство выделения синтаксиса XML-файлов (только для чтения, нет
редактирование).
Все работает нормально но скролл в мобильных устройствах.

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

Я также открыт для сотрудничества в хакатоне. Давай сделаем это!

-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/ajaxorg/ace/issues/37#issuecomment -9141191.

Привет @velniukas.

Мы находимся в процессе выбора места в Сан-Франциско для координации хакатона; мы оцениваем это примерно через 4 недели. Я собираю руководящие материалы от @fjakobs и разрабатываю сайт для их продвижения. Мы планируем подержать его на пару дней. Первый день посвящен охвату как можно большего количества функций, а второй - объединению этих изменений в единое целое.

Пока что у нас есть заинтересованные разработчики из Гонконга, Амстердама, Греции, Армении и Сан-Франциско. Итак, мы продвигаем эту идею как международный хакатон (возможно, первый в своем роде?).

У @nightwing есть идеи о том, как мы можем получить более производительную мобильную реализацию, которая будет отличаться от того, как настольные браузеры обрабатывают виртуальный рендерер. Мы будем держать всех в курсе его наставлений и очень скоро выберем выходные.

Моя команда из 5-7 разработчиков находится в: Сан-Франциско, Праге, Украине, России, Индии, Москве, Гонконге. 4
через несколько недель идеально для нас. Плюс я собираюсь найти местного стартап-разработчика
сообщества здесь, в Гонконге, если мы сможем составить повестку дня и поставить грубые задачи
минимум за 2 недели до этого. Возможно, сможет спонсировать одно из коворкинг-пространств.
для этого.

Стив
http://10xEngineer.me

В пятницу, 5 октября 2012 г., в 00:35 Мэтт [email protected] написал:

Привет, @velniukas https://github.com/velniukas.

Мы находимся в процессе выбора места встречи в Сан-Франциско, чтобы координировать
хакатон; мы оцениваем это примерно через 4 недели. Я собираю
руководящие материалы от @nightwing https://github.com/nightwing и
@fjakobs https://github.com/fjakobs и разработка сайта для продвижения
Это. Мы планируем подержать его на пару дней. Первое
день, посвященный охвату как можно большего количества функций, а второй - обеспечению
все вместе они превращаются в единое целое.

Пока у нас есть разработчики из Гонконга, Амстердама, Греции, Армении и
SF заинтересован. Поэтому мы продвигаем эту идею как международный хакатон.
(возможно, первый в своем роде?).

@nightwing https://github.com/nightwing предлагает идеи, как получить
более производительная мобильная реализация, которая будет отличаться от
способ обработки документов настольными браузерами. Мы будем держать всех в курсе
его руководства и прибить выходные очень скоро.

-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/ajaxorg/ace/issues/37#issuecomment -9147909.

Потрясающе, Стив! Это могло превратиться в знаковое событие. Учитывая часовые пояса, я бы предпочел начать очень поздно в пятницу, рано в субботу по тихоокеанскому стандартному времени и продолжить работу в течение 24 часов. Сайт, над которым я работаю, будет управлять командами, чтобы выбирать конкретные задачи, поэтому никто не дублирует работу. Если кто-то делал это раньше или у вас есть идеи, как это сделать _Best_, дайте мне знать.

К вашему сведению, я все еще собираю детали этого события. Фиксация дат, объединение площадок, рассылка сообщений потенциальным командам и создание веб-сайта. Когда у меня будет больше интересной информации, я опубликую здесь. С нетерпением жду этого!

Это было бы здорово. В настоящее время мне приходится использовать codemirror для мобильных устройств. Хотел бы использовать ace для всех нужд.

ОК, все, кто следит за этим выпуском. У нас есть первый шаг в правильном направлении - поддержка _scrolling_ в iOS. Перед тестированием приведенной ниже ссылки следует помнить о нескольких порядках работы и предостережениях:

  1. Подождите, пока загрузится весь файл
  2. После загрузки файла установите флажок "Мобильный режим" в самом нижнем левом углу.
  3. Не меняйте ориентацию.
  4. Начать прокрутку
  5. Я тестировал это на iPad v1 и iPhone 5. iPhone работал блестяще, но iPad 1 был довольно ужасен. Подробнее об этом через секунду.

https://c9.io/c9developer/ace/workspace/kitchen-sink.html

Как это было достигнуто

  • Я создал div, который накладывает на редактор следующий CSS:
#scroll_div {
     -webkit-overflow-scrolling: touch;
     overflow-y: scroll;
     pointer-events: none;
}

Правило 1 требуется для плавной прокрутки на основе касания, а правило 3 позволяет наложению находиться сверху, но не получать никаких событий, которые мы хотим отправить элементам ниже. Это оставляет открытой возможность добавить поддержку точного набора текста в будущем.

  • Создал собственный алгоритм инерции. Это простейший алгоритм, который я мог придумать, который «достаточно близок» к тому, что делает iOS изначально. Он просто выполняет итерацию через интервал 24 мсек и снижает скорость на 94,9% для каждого интервала. Начальная скорость устанавливается на основе расстояния в пикселях между последним касанием и предпоследним касанием (математику этого, вероятно, можно улучшить, включив количество миллисекунд между двумя последними касаниями).
  • Всякий раз, когда изменяется самая новая позиция из интервала, также обновляется прокручиваемый сенсорным экраном оверлей. Это сделано для того, чтобы пользовательский алгоритм имел приоритет над алгоритмом iOS, и блоки div не рассинхронизировались.

Влияния

Джо Хьюитт подробно исследовал эти же идеи во время своей работы с возможностью прокрутки, о чем писал здесь: http://joehewitt.com/2011/10/05/fast-animation-with-ios-webkit

Почему я вообще не использовал прокрутку? Ace зависит от виртуального окна просмотра, и Джо в конечном итоге использовал анимацию webkit. Эти два несовместимы. Мне нужно установить позицию «scrollTop» для Ace, которая затем должна обновить виртуальный рендерер, чтобы изменить позицию. Я мог бы взломать код Джо в прокручиваемом div, а затем применить результаты его трехмерных преобразований к слою Ace, но да - приключение было веселее :-)

Будущее

Как уже отмечалось, это только для прокрутки. Нам все еще нужна точная поддержка набора текста.

Для более современных устройств iOS, которые могут справиться со скоростью, этот подход работает замечательно. Но определенно можно сделать оптимизацию. Мы продолжим изучать варианты как для старого, так и для нового оборудования.

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

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

Привет, Мэтт,

Очень рад сообщить, что сегодня на моем iPad4 он работает намного стабильнее, чем вчера. Хорошо сделано! Я также тестировал его на своем Samsung Galaxy Nexus под управлением Android 4.2, и он неплохо выглядит. (Пожалуйста, не давайте делать решение только для iOS.) Вставка текста также работала безупречно на Android, в то время как у моего iPad была странная проблема с двойным курсором (но я все еще мог печатать.)

@mattpardee Это потрясающе!

К сожалению, мне кажется, что это полностью нарушает поддержку браузера Android (Android v4.1.1) и Chrome Mobile (v18.0, ноябрь 2012 г.). Раньше у этих браузеров были небольшие проблемы, но теперь я просто получаю большой белый div вместо Ace.

Потрясающий!!

@lennartcl какое устройство вы используете? И это происходит только тогда, когда вы выбираете опцию Mobile Mode?

@mattpardee Это было на Galaxy S3 и произошло независимо от мобильного варианта. Но сегодня я попробовал еще раз, и теперь, похоже, он работает по-прежнему в обоих браузерах.

Здорово! Теперь я могу продолжить мировое господство.

Я просто пробовал кухонную раковину от мастера на iOS Simulator с ipad iOS v5, и, похоже, она не начинает редактирование.

Когда я ударил по кухонной раковине живого сайта с моим ipad 3 iOS 5.1, он действительно отредактировал, но всегда пытается сделать буквы заглавными. Похоже, он постоянно находится в режиме выбора с синими кнопками запуска и остановки копирования.

Находится ли этот последний код в мастере, или мы должны искать ответвление или запрос на перенос?

Привет, Джефф,

Ознакомьтесь с веткой feature / ioscroll.

https://github.com/ajaxorg/ace/tree/feature/ioscroll

Это должно как минимум включить прокрутку в редакторе (и вам не нужно выбирать какие-либо параметры, чтобы включить ее).

@mattpardee Да, это

Да, все еще в разработке, хотя, по общему признанию, я не знаю, смогу ли я заставить это работать самостоятельно. Некоторые из них связаны с событиями касания для вызова фокуса или размытия основного текстового поля, но большая часть тяжелой работы будет связана с обновлением обработчика курсора. Расстояние смещения курсора от его истинной позиции редактирования накапливается к концу строки, поэтому в математике, которую он выполняет, есть что-то базовое.

Надеюсь, что кто-то справится с этой задачей!

в порядке. Спасибо за обновления.

Есть ли способ, по крайней мере, я могу определить, есть ли у браузера минимальные требования для запуска ACE браузера, чтобы я мог вернуться в текстовое поле?

@jfromaniello, вы можете использовать Modernizr

Modernizr is a JavaScript library that detects HTML5 and CSS3 features in the user’s browser.

@faceleg да, но какие функции нужны ACE .. Например, iOS имеет много функций, но экранная клавиатура не отображается.

Что-нибудь обновляется о позиции курсора? Прокрутка выглядит неплохо.

Кто-нибудь еще активно над этим работает?

@MarkMurphy Если честно, думаю, нет. См. Комментарий @mattpardee выше для последнего состояния.

Что касается прокрутки, а как быть наоборот?
Например, создать достаточно большой div, такой как height: 10000px; и прокрутить его внутри другого, меньшего размера. Это не идеально, хотя естественная прокрутка предпочтительнее использования дополнительных ресурсов для ее эмуляции. См. Сообщение в блоге Дилана «Заставляем Ace Editor заполнять доступное пространство»

По крайней мере, теперь мы знаем, как должна выглядеть и вести себя виртуальная клавиатура: http://www.textasticapp.com/

Просто любопытно: в каком статусе это было? Это все еще нерешенная проблема для iOS?

Если у кого-то есть мотивация поработать над этим, у меня есть подсказка и возможное решение. Проблема, похоже, в том, что клавиатура не появляется, когда текстовое поле ace выбирается касанием. Однако он появляется, когда текстовое поле является частью формы и выбирается с помощью кнопок «Далее» ... «Назад», предоставляемых iOS. Я думаю...

Я заметил это некоторое время назад, но у меня не было времени проверить это. Итак, YMMV.

у моей страницы есть выбор, чтобы изменить языковой режим редактора.

при первой загрузке страницы ключевое слово soft не срабатывает, когда я касаюсь редактора,
НО, после того, как я вручную изменю язык из выбора, затем коснитесь редактора, чтобы запустить клавиатуру.

надеюсь, это поможет.

Ошибка нижестоящего уровня использования Ace в Википедии для редактирования модулей кода шаблона: https://bugzilla.wikimedia.org/show_bug.cgi?id=55345

В качестве обходного пути мы можем занести Ace в черный список на iOS и пока использовать обычное текстовое поле.

CodeAcademy.com использует Ace, и у них он полностью функционален на iPad, в комплекте с выбором. Я могу разобраться в этом.

Есть новости по этому поводу?

Эта ошибка также нарушает работу Cloud9 IDE на iOS . : +1: чтобы эта проблема привлекла внимание!

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

+1 также есть проблема с редактором на ipad

+1 - Мы используем режим Markdown для редактора, и копирование / вставка - это большая вещь, которой не хватает Ace в iOS.

Не могу использовать c9.io из-за этой ошибки. Демонстрация кухонной мойки тоже не прокручивается (http://ace.c9.io/build/kitchen-sink.html). Бывает на ipad и моем Android Transformer (что отлично подходит для облегченных разработок).

Для своего веб-приложения я использовал CodeMirror. Однако недавно я перешел на ace из-за обилия режимов и функций. Отсутствие мобильной поддержки заставляет меня пересмотреть свой выбор.

Достигнут ли какой-либо прогресс в обеспечении возможности прокрутки на мобильных устройствах? Он не работает ни на одном устройстве iOS или Android, которое я пробовал.

@ mkaminsky11 +1. Я также выбираю между CodeMirror или Ace, и меня сдерживает поддержка iOS.

Как сказал @jakesankey , codeacademy.com использует ace. Я попытался просмотреть код, чтобы увидеть, как они заставили его работать с мобильными устройствами, но безрезультатно. Можно ли было бы связаться с ними и попросить о помощи?

Мы обслуживаем Орион на мобильном телефоне в Codecademy.

Сейчас это исправлено?

Он отлично работает на моем Asus Transformer, если я "запрашиваю настольную версию". Жаль, что браузер не запомнит эти настройки.

+1

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

https://github.com/dai-shi/codeonmobile

Это все еще проблема, которую можно увидеть на http://3v4l.org/

Эта проблема также блокирует PlayCanvas.com (iPad Air iOS 8), что является позором, потому что остальное, если редактор полностью поддерживает iPad, и в целом представляет собой безумную демонстрацию того, чем может быть HTML5!

+1. в настоящее время исследуется обходной путь, связанный с созданием вручную некоторых кнопок прокрутки, чтобы они располагались рядом с редактором, используя scrollBy http://ace.c9.io/#nav = api & api = virtual_renderer

+1 за проблемы с прокруткой.

+1 за проблемы с прокруткой

+1 за проблемы с прокруткой.

+1 за проблемы с прокруткой.

Привет, ребята, я недостаточно хорош / терпелив, чтобы исправить сам редактор, поскольку вся концепция касания и мыши отличается. Но с помощью приведенного ниже сценария вы можете заставить редактор ACE прокручивать на сенсорных устройствах (IOS / Android). Просто поместите его в раздел конфигурации редактора (где объявлен редактор и добавлены параметры).

http://pastebin.com/1Rh7UDea

@ iq77 Что должен делать этот код? Пробую и пока без разницы? Я один из тех, кто действительно хотел бы, чтобы это нормально работало на сенсорных устройствах ...

@tluyben при "touchstart" сохраняет координаты x / y события касания. На «touchmove» вычисляет разницу между началом и концом, затем передает значения x / y в «средство визуализации» ACE. Средство визуализации выполняет прокрутку. Он работает с моим сценарием, но, возможно, вам придется адаптировать некоторые имена классов и т. Д. К вашим собственным потребностям. Также там есть jQuery, возможно, вам придется его заменить.

Это отличная тема, но мне было трудно сказать (а) какова природа «проблемы с прокруткой», (б) какие версии устройств / ОС затронуты и (в) какие обходные пути доступны. Если кто-то захочет резюмировать, где они находятся, это было бы превосходно.

Я только что протестировал кухонную раковину на [iPad Air 2 под управлением iOS 8 и Safari 8] и [Nexus 10 под управлением Android 5.1 и Chrome 40] и смог прокручивать как по горизонтали, так и по вертикали (в альбомной ориентации; я не тестировал устройства в портретная ориентация). Шаги к воспроизведению:
1) Перейдите на http://ace.c9.io/build/kitchen-sink.html.
2) Добавьте кучу строк (пустые строки работают нормально) в панели редактора до тех пор, пока количество строк не окажется больше, чем поместится на экране.
3) При необходимости уменьшите масштаб, чтобы просмотреть весь браузер. (Редактирование содержимого панели редактора может автоматически увеличить масштаб, что затрудняет определение того, прокручиваете ли вы панель или просто перемещаете увеличенный вид.)
4) Проведите пальцем вверх / вниз по самому правому краю панели редактора. Полоса прокрутки не появится, но содержимое панели редактора должно прокручиваться должным образом.
5) Чтобы проверить hscroll, создайте длинную строку символов, которая шире, чем умещается на экране; при необходимости уменьшите масштаб; проведите пальцем влево / вправо по самому нижнему краю панели редактора. Я вижу исчезающую полосу прокрутки на Android, но на iOS нет полосы прокрутки ... но прокрутка работает в обоих случаях.

Я искал проблемы, и из того, что я могу понять, это окончательная ветка «все, что связано с прикосновениями». Поправьте меня, если я ошибаюсь, и я буду копать / записывать новую проблему.

iOS Touch, похоже, не может вызвать контекстное меню в контексте Ace (что важно, это позволяет вырезать + вставить). Обычно это может быть вызвано касанием курсора, но Ace отменяет это поведение, вместо этого перемещая курсор вперед на один символ.

@barneycarroll ,

Я думаю, что я кое-что нахожу с реализацией некоторой сенсорной поддержки, я работаю над симулятором iOS. Обратите внимание на форк (https://github.com/AStoker/ace), в настоящее время вам нужно построить его для компиляции (поскольку это исходный код), но если вы будете следовать инструкциям по сборке в области, это торт. Мне бы очень хотелось помочь с любыми улучшениями, так как сейчас не кажется, что сенсорная поддержка является приоритетной (но это преимущество открытого исходного кода, мы можем исправить это сами). Если все в порядке, я сделаю запрос на перенос, чтобы все было реализовано.

+1 для копирования / вставки в iOS. Проблема в пользовательской обработке курсора? Каков был бы план атаки, чтобы решить эту проблему?

Публичная бета-версия iPhone 6 plus ios 9.2, похоже, теперь хорошо работает с ace. Прокрутка и редактирование работают как на компьютере.

Просто нужны доработки в копировании и вставке.

Вставлять и копировать можно, но сделать это очень сложно.

Http://www.apus.com
19 ноября 2015 г., 10:52, «paladox» [email protected] написал:

Публичная бета-версия iPhone 6 plus ios 9.2, похоже, теперь хорошо работает с ace.
Прокрутка и редактирование работают как на компьютере.

Просто нужны доработки в копировании и вставке.

Вставлять и копировать можно, но сделать это очень сложно.

-
Ответьте на это письмо напрямую или просмотрите его на GitHub.

У меня проблемы с клавишами со стрелками на клавиатуре IPad. Клавиатура отлично работает в любой среде, но если я подключаюсь к своему облачному серверу 9 и начинаю программировать, клавиши со стрелками игнорируются. Могу я их куда-нибудь добавить или как это исправить? Мне очень часто стрелка нужна при кодировании.

<div id="editor" class="page-content" contenteditable="true"></div>

Делает трюк в iOS. Просто не могу заставить работать подсветку синтаксиса Assembly_x86.

Где я должен включить этот код? Я думал, что это должно быть в user.settings, но там нет HTML-частей

HTML внутри WebView.

Не могу заставить его работать внутри UIWebView 👎 Он запускается нормально, но как только я пытаюсь переместить курсор, все терпит неудачу. Я не могу писать, или с решением @ jcss-org-il ( <div id="editor" class="page-content" contenteditable="true"></div> ) курсор перемещается за пределы редактора.

Может ли кто-нибудь помочь мне разгадать загадку? Онлайн-редактор кода GitHub, якобы основанный на Ace (https://github.com/blog/905-edit-like-an-ace), просто потрясающий. Он безупречно работает на iPad, в том числе с клавиатурой Bluetooth, работают клавиши со стрелками (включая Ctrl-стрелка влево, Alt-стрелка влево и т. Д.), Отличная производительность и т. Д.

Вот скриншот сеанса редактирования iPad файла README.md этого репо: (https://github.com/ajaxorg/ace/edit/master/Readme.md)

img_0819

И все же, все участники этой ветки (включая меня) не могут без проблем запустить Ace на iPad (например, не работают клавиши со стрелками). (У меня те же проблемы, что и здесь: https://github.com/ajaxorg/ace/issues/37#issuecomment-195258878)

Есть ли на GitHub пользовательская версия Ace? Эта версия общедоступна? Я бы хотел запустить то, что они запускают! (Снимок экрана инспектора DOM, подтверждающий, что внизу, похоже, запущен Ace.)

Большое спасибо!
г

editing_ace_readme_md_at_master_ _ajaxorg_ace

@realgenekim из скриншота похоже, что github использует текстовое поле на ipad

@nightwing Захватывающая теория! Но если вы посмотрите на элемент управления редактором, там есть номера строк, возможности Ace, которые кажутся не просто стандартным текстовым полем HTML, например, шириной табуляции, переносом текста ...

При ближайшем рассмотрении я почти уверен, что это что-то более экзотическое, чем textarea!

Номера строк

@nightwing Святая корова. Это так интригует - я думаю, вы абсолютно правы. Я постараюсь получить подтверждение этого от кого-нибудь из GitHub ...

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

Это неудовлетворительно, но, по крайней мере, им можно будет пользоваться, пока кто-нибудь не предложит хорошее решение для iPad ...

😦

Просто протестировал это на моем iPad Pro, и он в основном показывает базовую textarea . Может с авторастут.

Это что-то умное, например, текстовое поле с 0 непрозрачностью и экземпляр редактора ace, расположенный сразу за ним? Я полагаю, что с современной производительностью iPad можно было бы сохранять состояние (внутренняя прокрутка и контент) почти мгновенно при каждом событии ввода ...

@barneycarroll Нет, по крайней мере, в моих тестах я редактировал внутри обычной текстовой области без номеров строк и т. д.

Привет, ребята! Я только что создал запрос на перенос, который исправляет некоторые проблемы в iOS. Это обеспечивает приятный пользовательский интерфейс, если у вас есть внешняя клавиатура.

Если вам это нравится, я могу подумать об исправлении оставшихся проблем :)

Вы можете увидеть это в действии на https://ipad-undo.gomix.me

Наслаждаться!

Просто использую вашу демонстрацию, и я вижу проблему с точкой вставки. Создайте пару кавычек, например, поместите курсор между ними и начните печатать. Он случайным образом переходит в конец строки. Я не уверен, вызывает ли это изменение эту проблему или она была изначально.

О, спасибо @IamNaN , об этой ошибке прямо сейчас сообщили в PR :) Думаю, я знаю, как ее исправить ... следите за демо :)

РЕДАКТИРОВАТЬ: демо исправлено :)

@etamponi Ты выглядишь потрясающе! Работает ли он с:

  1. Подключить как vim и emac?
  2. Поддержка IME с CKJ?

В настоящее время похоже, что при включении IME происходит сбой.

@episodeyang Мне очень жаль, что я оставил вас в ожидании этого.

К сожалению, у меня не было времени продолжать работу над PR ... К счастью, кто-то другой взял мою работу на себя и закончил ее, теперь она объединена как # 3310, если я правильно помню :)

vim уже не поддерживался на iOS, и PR не добавляет его поддержки. Я не знаю достаточно об IME, чтобы точно знать, повлиял ли мой PR каким-либо образом на это, извините!

Размещение курсора в середине слова с помощью касания кажется неудачным (iOS 11.2, Safari) в демонстрации, предоставленной @etamponi. Есть ли способ сделать это более надежным?

В настоящее время ace достаточно хорошо работает на IOS, чтобы закрыть этот вопрос о базовой совместимости. Если вы обнаружите какие-либо ошибки или отсутствующие функции, откройте новый выпуск.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги