zielmicha / emacs-android Goto Github PK
View Code? Open in Web Editor NEWEmacs port to Android.
Emacs port to Android.
During install, after lisp download, terminal window shows:
Fatal Error (11)Segmentation fault.
After reboot if i reopen the app to see if the installation may continue, the same error appears.
ICS on HTC G2.
I'm using the fiplr plugin to do fuzzy searches. This works on my PC, but when I try to use the same plugin in Emacs, it throws an error, failing to execute shell commands due to thinking the shell is /bin/sh
, when it's really /system/bin/sh
.
See more information:
We want to add the app to the FOSS-Market F-Droid. One thing we worry about is the busybox binary in the assets/ directory.
http://f-droid.org/forums/topic/emacs-port-to-android/
Please get in touch with us to come to a solution.
Emacs can be added to Android Terminal's PATH by inserting two lines in /system/etc/mkshrc
:
export PRIVATE=/data/data/com.zielm.emacs
export PATH=$PATH:$PRIVATE
Can future versions of Emacs for Android please do this as part of installation? It would rock to have emacs
available from anywhere in an Android Terminal
I'm trying emacs with a Nexus7 using the Hacker keyboard as input method, this takes almost half of the space of the landscape screen
being able to use emacs in portrait mode on a tablet like that could help
How do I do a complete uninstall?
-Daniel
If I wanted a wide & skinny screen, I'd just use my laptop! Is there any way of running Emacs in portrait mode?
When I choose Goolge's Gboard from my list of installed keyboards, sometimes the real Gboard pops up (that includes swipe to type and suggested word completions) and sometimes a barebones keyboard pops up with neither of these features that I never see in any other application.
On the other hand, when I choose the Hacker's Keyboard or the Samsung keyboard, each of them always pops up consistently.
Any thoughts?
Update: from some additional testing, it looks like the barebones keyboard is only popping up when the buffer is in fundamental mode. Can anyone else verify this and/or explain why?
Great app, however I'm unable to effectively use it on my Droid 3 due to Ctrl not being sent from its hardware keyboard. I've used the preferences setting to send Ctrl as @ or Vol Up / Vol Down and it does not seem to work. Ideally I'd like to use this setting with @ as the Ctrl key. Should this work?
When Emacs launches everything is displayed correctly. But after opening the keyboard Emacs is completely messed up. Due to the display size change the size of emacs changes too. So i.e. the menu panel is at another location but not drawn there. The display is only updated if the cursor moves there (or i.e. the line number changes). It is a big rag rug.
Same for the Terminal IDE bash. I opened emacs in the terminal ide bash and it worked fine until I used the soft keyboard. By the way: I logged in via ssh from terminal ide to my gentoo and opened my "gentoo emacs" there and everything worked just fine with the soft keyboard!?!? Emacs resized with the keyboard.
Additional information:
In the Terminal Emulator the ctrl key does not work and I get a seg fault when not using 4x8 font size. In Terminal IDE Emacs works with all font sizes and all keys like ctrl, alt, esc work just fine. AND Emacs works great in portrait mode!
So why don't you use the terminal ide bash? There seems to be much less problems with keys, etc.?
Screenshots:
Emacs in Terminal Emulator after start:
Emacs in Terminal Emulator after closing keyboard:
Emacs in Terminal IDE after start:
Emacs in Terminal IDE after closing keyboard:
Gentoo Emacs via ssh in Terminal IDE:
Gentoo Emacs via ssh in Terminal IDE after closing the keyboard:
Edit: Added portrait screenshots
Please fix this. Screen real estate is paramount on mobile phones, so I hate having to take up almost half of my screen with a keyboard.
emacs -nw
mitigates segfaulting for fonts, but does not prevent Emacs from crashing on startup when the keyboard is wide and short.
On KitKat
Fatal error (6)Aborted
/data/data/com.zielm.emacs $
The installer tries to write to /mnt/sdcard
and does not give any opportunity to change the path.
On my Archos G9, the directory exists but is not writeable, so the emacs download fails instantly. I managed to workaround it by su
ing to root and bind-mounting /mnt/storage
(the HDD mountpoint) to /mnt/sdcard
, but I think it would be better if the installer detected this and asked the user to choose another location.
Fatal error (11)Segmentation fault (core dumped)
/data/data/com.zielm.emacs $ emacs -nw
emacs: Screen size 128x1 is too small
/data/data/com.zielm.emacs $
Hi,
I just installed your emacs port for android on an asus tf101 with CM9 (ics), thanks for that. The transformer comes with a hardware keyboard, mine is Belgian. The regular android terminal works fine for all characters.
emacs starts fine and seems to work fine, but the terminal somehow borks my hardware keyboard.
Regular ascii letters work fine, ctrl and alt also, but that's about it...
The number keys directly produce numbers, whereas they should need shift in the Belgian layout. With shift, they produce special non ascii characters: !@#$%^&*() in that order.
Most other punctuation signs on the keyboard do not work: keys on the right of numbers and letters (all rows) do not produce any output.
Don't hesitate to ask for more info, I would definitely like to see this work :-)
After downloading the files as it requests when first run, it just gives the error "Fatal error (6)Aborted" when trying to start emacs, then drops to a command prompt in the /data/data/com.zielm.emacs directory.
Running Cyanogenmod 11.
In emacs org-mode the alt-enter should createnew heading based on the old one
when pressing (using either hackers keyboard, or kensington bluetooth and external keyboard helper pro), the 'alt' is not registered and only simple 'enter' is issued
this is quite annoying as one has to do all the headings then by hand.
any idea how to change this behaviour?
Hello,
I use it with a Transformer Prime, wich have a physical keyboard. Sadly, many characters does not work. Some keys can't be used at all (special characters keys like ,;/!) and the keymap is kinda weird : I have an azerty keyboard, letters are correctly mapped but the "number line" has a qwerty behaviour.
I'd love to open my .md Markdown files with Emacs by tapping them in file managers (Astro, Root File Browser, etc). But Emacs doesn't register any filetypes, so Android doesn't list it as an option. :(
It's possible to cut and paste between Android apps and emacs with a long press - great.
It would be even better if we could use the emacs kill ring - more keyboard less screen presses.
it doesn't let me enter spec chars ~./ to access files to edit
and i'd like to install .emacs to point to my work directory.
reinstalled sev times. machine is craig 2012 cpl281x. trying to access from term emu seems reasonable if i can set up an sh or bash proc
After installing from Google Play on a stock Nexus 7 (no root) Emacs shows the error message quoted in the subject line. After that, nothing works except opening and closing windows. No key bindings are active, not even M-x.
I can't find loadup.el anywhere in the file system.
Where is it supposed to be? It should not be a keyboard issue, since I tried it with hacker's keyboard and with an external bluetooth keyboard.
After it downloads and installs emacs, it just shows aterminal window in /data,c+. Running emacs or emacs.bin gives a permission denied error.
Using a Samsung Galaxy Tab 3.
Hi.
All i can see when i start emacs is "terminal session is running", which i cannot switch to in the task manager while running.
busyboxrc.sh: cd: line 44
happens at install time after downloading terminfo.tar.lzma
this is on a Nexus7 with Android 4.2
It appears that emacs silently discards control-g characters after the first one.
control-g works fine in the terminal, for example,
echo ^g^g^g^g | busybox od -x
displays the expected output including the four hex 07 characters.
But after starting up emacs, only the first control-g typed is actually seen by emacs. In other words, I can abort the first partially typed command, but subsequently, control-g does nothing. Only the first one is shown by the view-losage command as well.
BTW, Thanks for doing this port! Native emacs has been missing from android for far too long.
Hello! I have installed Terminal IDE and Emacs via the Google Play store, however I have encountered an issue with the downloading of /sdcard/emacs/busybox.rc
and I cannot start Emacs via the app launcher.
Reviewing the Readme file, here at Github, it seems that the issue with busyboxrc.sh
is because http://emacs.zielm.com/data/busyboxrc.sh is no longer available. Correspondingly, I see a HTML file installed at /sdcard/emacs/busybox.rc
Might there be an approporiate busyboxrc.sh availble here in the source tree, or perhaps via GitHub Pages?
Personally, I look forward to testing out an Emacs interface to Common Lisp, SLIME, on Android . Possibly, SBCL or CCL for ARM might work out as a Common Lisp implementation for this individual study. I might favor CCL, if CL+J can be extended for creating a GUI via Java, in CCL - assuming Android is not running an X.org server, by default.
Perhaps an X.org server app could be useful with this prototype, also - there is a native xlib interface in Common Lisp, CLX.
Of course, those may be applied without Emacs+SLIME as the IDE, but if the latter is available, that would simplify the development of a prototype for this platform -- those, all of free/open source software components portaboe to Linux+ARM.
I'll search for busyboxrc.sh, here and in the web archive, towards a workaround for the present item.
this directory is in /mnt/sdcard/emacs
it was installed there by the play store installer,
but for some reason emacs now wants it in /sdcard/emacs
when i copy
cp -a /mnt/sdcard/emacs /sdcard/.
it works
but i don't have enough disk space there
is it possible to configure the location of data dir ?
i ;) emacs !
Hi,
nice work -glad to see emacs native on my phone now!
One thing does not work for me yet. I can't use german umlauts (ü,ö,ä etc.) in emacs.
Is emacs compiled with utf-8 support or do you have any suggestions how I could get the umlauts to work?
Regards Marc
Hello,
I would like if there's any available documentation for this Emacs version ? Indeed, I still don't know how to use this Emacs. When I launch it, there's only an sh terminal and I don't know how to open a file.
Thanks,
Hai
Used to work before I updated to android 4.2.2, with external usb wired keyboard.
galaxy tab 2 10.1
when I type characters in the minibuffer or in a buffer, they are inserted twice. In the minibuffer, if I type a letter inthe minibuffer inlower case, it appears as a pair of lth same letter, both upper and lower case.
when I use the delete key, it is aleo sent twice.
Toss me a clue and I'll try to fix it myself!
how am I supposed to understand this message when I ask to open home directory:
"listing directory failed but 'access file' worked.
btw which I assume the home directory corresponds to /data/data/com.zielm.emacs but it's nowhere to be found in my device.
I build and install following README.md, but there is a error as following:
W/PGApi_client( 3584): recv actoionId = 10000, action = com.huawei.pgmng.PGAction@3796db36 actionId =10000 pkg =com.zielm.emacs extend1 =447 extend2 = flag =3 type =1
W/PGMiddleWare jhh( 3584): in handleAction, invoke client = com.huawei.pgmng.middleware.AudioEffectLowPowerImpl@18aaaaa9, action = com.huawei.pgmng.PGAction@3796db36 actionId =10000 pkg =com.zielm.emacs extend1 =447 extend2 = flag =3 type =1
I/AudioEffectLowPowerImpl jhh( 3584): jhh handle default mActionId = 10000, action = com.huawei.pgmng.PGAction@3796db36 actionId =10000 pkg =com.zielm.emacs extend1 =447 extend2 = flag =3 type =1
E/AndroidRuntime( 2538): Process: com.zielm.emacs, PID: 2538
E/AndroidRuntime( 2538): java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.zielm.emacs-1/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]] couldn't find "libjackpal-androidterm4.so"
I/logserver( 2328): extract_appname, forward search, appname=com.zielm.emacs
I/logserver( 2328): get_fault_appname, appname=com.zielm.emacs
I/logserver( 2328): handle_notify_event, send msg [submit:trigger=0,bugtype=2,modulename=com.zielm.emacs,level=1,testtype=NORMAL,path=/data/log/unzip/CHE-TL00H_CHE-TL00HC00B230_0000000000_20160108100244_crash,mode=1;]
E/SubmitMessage( 4176): Submit string: submit:trigger=0,bugtype=2,modulename=com.zielm.emacs,level=1,testtype=NORMAL,path=/data/log/unzip/CHE-TL00H_CHE-TL00HC00B230_0000000000_20160108100244_crash,mode=1
I/PhoneStatusBar( 3281): notification pkg =com.zielm.emacs
W/InputDispatcher( 2935): channel '16f79788 com.zielm.emacs/jackpal.androidterm.Term (server)' ~ Consumer closed input channel or an error occurred. events=0x9
E/InputDispatcher( 2935): channel '16f79788 com.zielm.emacs/jackpal.androidterm.Term (server)' ~ Channel is unrecoverably broken and will be disposed!
W/InputDispatcher( 2935): Attempted to unregister already unregistered input channel '16f79788 com.zielm.emacs/jackpal.androidterm.Term (server)'
I/PhoneStatusBar( 3281): notification pkg =com.zielm.emacs
I/PhoneStatusBar( 3281): notification pkg =com.zielm.emacs
Last function identified by addr2line is bidi_initialize. Looks like Bionic bug.
Virtually all the punctuation keys (even period and comma) don't work on my Stowaway Universal Bluetooth Keyboard XTBT01, It identifies as a Broadcom Bluetooth HID keyboard in the Language & Input settings menu. The keys work fine in ConnectBot.
Nexus 7, Android 4.2.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.