Emacs на планшете?

28

В: можно ли установить / использовать Emacs на планшете с минимальным количеством разрывов?

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

У меня нет планшета, так что моя терминология, вероятно, будет на уровне бабушки. Мое ограниченное понимание состоит в том, что Apple не пускает Emacs в Appstore, но, возможно , в эфире существует взломанная версия . Было время, когда его можно было найти в магазине Google Play для Android, но он старый, сломанный и требует каких-то нетривиальных игр . Мне трудно поверить, что единственно возможный вариант - использовать Emacs на планшете с Windows , возможно, потому, что ирония слишком велика.

В основном меня интересует, можем ли мы сделать это на планшете Apple или Android, не из-за восторженной любви к какой-либо из платформ, а просто потому, что они настолько вездесущи и, тем не менее, кажутся неподдерживаемыми. Так:

  • Можем ли мы получить полностью (или даже в основном) работающий Emacs, желательно, который не является разовым предложением, а скорее обновлен новыми выпусками?
  • установить его с минимальным разрывом, то есть без джейлбрейка устройства или тратить слишком много времени на установку Rube Goldberg-esque ?
Дэн
источник
1
Кстати, «вездесущий» сильно зависит от того, где вы живете. Здесь, в Польше, многие люди владеют Android-устройствами (телефонами и планшетами) и совсем немного - iOS.
mbork
2
«Мне трудно поверить, что единственно возможный вариант - использовать Emacs на планшете Windows, возможно, потому что ирония слишком велика». Для меня ирония только делает это более правдоподобным. :-)
Малабарба
Конечно, если у вас есть удаленный доступ к машине, вы можете использовать SSH-клиент для удаленного запуска Emacs. Если вы запустите tmux на удаленной машине, вы также будете защищены от временных выпадений.
Lindydancer
Я знаю, что вы спрашиваете конкретно о планшетах Android и iPad, но есть и другие ОС для планшетов: Emacs 25.2 отлично работает на моем планшете с Windows 10. (Я определенно рекомендую также иметь клавиатуру с синими зубами: использование экранной клавиатуры для Emacs очень расстраивает.)
Омар

Ответы:

14

Я использую Linux Deploy для запуска Debian в chrootсреде на своем планшете Nexus 7. С этим я могу делать все, что захочу, включая запуск Emacs. Это полностью функционально, в комплекте со всеми последними обновлениями и пакетами.

Если вы решили использовать устройство Android и не использовать клавиатуру Bluetooth, я бы порекомендовал заглянуть в клавиатуру хакера .

Если вы абсолютно не хотите рутировать свое устройство (что тривиально для большинства устройств), вы можете попробовать GNURoot , хотя я сам не проверял это.

Я думаю, чтобы сделать мой процесс немного более понятным, вот оно:

  1. Установите Linux Deploy на планшет
  2. Используйте Linux Deploy для установки среды Debian, Arch или Ubuntu.
  3. Запустите среду в Linux Deploy
  4. SSH в среду, используя приложение SSH по вашему выбору (у меня JuiceSSH )
  5. Теперь вы в основном используете устройство Linux. Используйте любой менеджер пакетов, который вы выберете, чтобы установить любые пакеты, которые вы выберете.
Райан
источник
9

Заметка про iOS.

Apple, безусловно, никогда не выпустит Emacs в App Store, поскольку он работает против всего, что отстаивает Apple. Вот несколько причин:

  1. Apple не позволяет пользователям запускать загруженный код (см. Это ).

Это убило бы любое использование, package.elкоторое было бы довольно плохо, ИМХО. Учитывая, что Emacs - это, по сути, виртуальная машина LISP, вероятность того, что вы загрузите загруженный код, практически равна 100%.

  1. Apple не позволяет приложениям изменять произвольные файлы.

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

  1. Apple не хватает среды для запуска Emacs.

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

Правда в том, что Emacs слишком силен для Apple, чтобы мириться с этим. Для этого было бы пойти против их философии.

Все это меняется с корнем. Jailbroken, нам больше не нужно слушать, что говорит Apple, и неудивительно, что Cydia Emacs существует (хотя я могу сказать немного больше об этом).


На Android пункт 3. все еще стоит, но не очень хорошо, потому что рут легко получить. Лучший способ это просто установить Linux в изолированном окружении (это очень легко, и подробно в другой ответ) и продолжайте свой веселый путь. Тем не менее, нет технической причины, по которой умный разработчик не может просто собрать Emacs для Android снова и поместить его в магазин приложений, просто его никто не имеет.

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

PythonNut
источник
Неправильный путь - авторы Emacs - те, кто не допустит этого, так как лицензионные требования Apple не соответствуют GPL - теперь то, что делает emacs, будет означать, что Apple не допустит этого.
user151019
6

Пакет Termux из магазина Play включает в себя пакеты apt, включая последние emacs. Это символьный режим, а не графический интерфейс, но он достаточно функциональный.

Кальман Рети
источник
4

Краткие инструкции по доступу с root также можно найти здесь http://www.reddit.com/r/emacs/comments/2adkvc/how_to_get_emacs_to_run_on_android_painlessly/ . Обратите внимание, что ссылка http://emacs.zielm.com/data/ кажется неработающей. Однако я попытался найти способ сделать это без рута, и вот некоторые результаты.

Я попытался использовать опцию GNURoot, предложенную в нескольких местах (в дополнение к текущему ответу, http://www.linuxuser.co.uk/features/run-linux-on-android-part-1 , http: // www.emacswiki.org/emacs/EmacsOnAndroid ), и поскольку для поиска человека с небольшим опытом работы в Linux потребовалось умеренное время, это может быть полезно для других.

GNURoot позволяет создавать сборку Linux внутри вашего Android. По умолчанию он предлагает «wheezy» - «debian». Вы можете выбрать другую сборку, если хотите ее создать. После того, как вы его создали, запустите его, отметив опцию fakeroot, и вы увидите консоль вашего суперпользователя.

Руководство по установке Emacs для различных сборок находится здесь: http://wikemacs.org/wiki/Install_Emacs_on_GNU/Linux

Emacs 23

Запуск Emacs 23 оказался довольно легким. Вы просто apt-get install emacsнабираете в консоли, отвечаете да на проверках, и вы можете запустить emacs, набрав emacs.

Emacs 24

Я не смог запустить Emacs 24, но, возможно, кто-то сможет воспользоваться этим и найти способ быстрее. Если кто-то может заставить его работать, возможно, вы можете следить за ним или обновлять этот пост.

Emacs 24 кажется гораздо более хитрым, так как он не очень хорошо поддерживается на некоторых сборках (возможно, кто-то лучше понимает ситуацию). Это доступно в разделе «emacs-snapshot», который можно найти через серию ссылок http://emacs.naquadah.org/ -> https://launchpad.net/~cassou/+archive/ubuntu/emacs -> https : //launchpad.net/~ubuntu-elisp/+archive/ubuntu/ppa , которая должна быть рабочей версией.

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

Примечание: вам не придется очищаться, если у вас не установлена ​​ни одна версия emacs.

Примечание 2: Чтобы получить эту функцию add-apt-repository, вам нужно заранее установить расширение, как сказано здесь /ubuntu/38021/how-to-add-a-ppa-on-a-server .

For my version this command worked to add 'add-apt-repository'.
$ sudo apt-get install python-software-properties

$ sudo apt-get update
$ sudo apt-get install
$ sudo apt-get purge emacs emacs-snapshot-common emacs-snapshot-bin-common emacs-snapshot emacs-snapshot-el emacs-snapshot-gtk emacs23 emacs23-bin-common emacs23-common emacs23-el emacs23-nox emacs23-lucid auctex apel emacs24 emacs24-bin-common emacs24-common emacs24-common-non-dfsg emacs24-el

To add this PPA:
$ sudo add-apt-repository ppa:cassou/emacs
Or the one he refers to:
$ sudo add-apt-repository ppa:ubuntu-elisp/ppa 
$ sudo apt-get update

Then, you should be able to type for emacs-snapshot:
$ sudo apt-get install emacs-snapshot-el emacs-snapshot-gtk emacs-snapshot

*Or*, for emacs24:
$ sudo apt-get install emacs24 emacs24-el emacs24-common-non-dfsg

К сожалению, ни один из ppa, предлагаемых в этих ссылках, кажется, в настоящее время не работает, или я пропустил шаг в добавлении их. GNURoot не кажется простым вариантом использования. Возможно, кто-то сможет завершить последовательность. Я думаю, что такие инструкции должны в конечном итоге стать частью сообщества вики.

Дополнительную информацию можно найти здесь: http://www.emacswiki.org/emacs/EmacsSnapshotAndDebian .

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

puslet88
источник
0

Я использую Emacs на Android 4.2.2. Начиная с терминала IDE, все загружается нормально. Я не подвергался стресс-тестированию.


источник
1
Как вы это установили?
Жиль "ТАК - перестань быть злым"
Я случайно не помню, это было сразу после того, как я получил планшет (почти год назад) в лихорадке пробовать приложения. Я посмотрю и постараюсь дать достаточно точный ответ чуть позже.
Хорошо, вот он, установил его следующим образом: quoderat.megginson.com/2014/02/17/…
1
Хотя это не практичное решение, а скорее аварийная ситуация / резервное копирование. Бесполезно с сенсорным экраном (почти), а моя внешняя клавиатура Bluetooth ведет себя беспорядочно, надоели ошибки и несоответствия, связанные с ней.
0

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

Я установил приложение zshaolin из Google Play. Это не бесплатно (несколько долларов), но в нем есть Emacs, который кажется полностью пригодным для использования, с ключами, работающими правильно, и всеми командами, которые я пробовал до сих пор. Это более старый Emacs, 24.1, и zshaolin просто перепаковывает множество вещей, таких как Terminal IDE и другие, но, по крайней мере, работает правильно. Есть также много других вещей, таких как vi и Perl и так далее.

Боб Ньюэлл
источник
0

Если мне действительно нужно добраться до Emacs на моем iPad, я делаю это через SSH, используя Serverauditor . Он монохромный, а интерфейс клавиатуры утомителен. Специально разработанный клиент Emacs для iPad может решить эти проблемы. (РЕДАКТИРОВАТЬ: Это предполагает, что у вас есть доступ к серверу с Emacs, конечно.)

РЕДАКТИРОВАТЬ: Я также недавно обнаружил Cloud9 , который позволяет мне получить доступ к Emacs через Safari. Сочетания клавиш остаются самой большой проблемой даже в Windows , и тот факт, что обычная клавиатура iOS не имеет Ctrlили Altделает ее намного хуже.

Брайан З
источник
0

Я запускаю GNU Emacs на iPad в iSH - относительно новом приложении для разработчиков, которое по сути является контейнером Alpine Linux. iSH позволяет вам установить Emacs с помощью менеджера пакетов apk. Вот как это установить:

1. Install [TestFlight] from the App Store.
2. Open a web browser on the iOS device and click here [https://testflight.apple.com/join/97i7KM8O] to review/accept the terms and start testing iSH using TestFlight.
3. Click "Install" to install the iSH Shell application onto the iOS device.
4. You will now have the iSH app on your iOS device. Open this app to run the Alpine Linux shell. 
5. Install Emacs with apk by entering the command "apk add emacs". After Emacs installs, enter the command "emacs" on the command line to run it. 

В качестве альтернативы TestFlight, iSH может быть загружен на iPad напрямую с приложением Xcode на Mac.

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

Chilasta
источник