ardagnir / pterosaur

All firefox text fields are vim.
GNU Affero General Public License v3.0
772 stars 30 forks source link

OSX: no text, ttydebug _does_ work #26

Open Jannertje opened 9 years ago

Jannertje commented 9 years ago

So I followed your steps (compile vim with +clientserver, install xpi, point ptero:vimbinary to the right one) and was surprised to see VIM INSERT at the bottom of my Pentadactyl window. WHen I type however, nothing shows up.

So I decided to set ttydebug to the tty I have open in my terminal emulator right now. When I open a text field, I get a regular vim window in this tty and I can actually type as usual, only the text does not show up in the text field inside Firefox.

Using ptero:verbose, I am able to get output in my console. So everything seems to work, however I don't see any text.

If you need some more info, do ask.

EDIT: btw, when I type vim --serverlist, I get nothing; even when my ptero is adding text to the tty. Weird stuff.

ardagnir commented 9 years ago

Are you running XQuartz? Vim's +clientserver fails silently like this if it can't find an X server.

Jannertje commented 9 years ago

I'm not sure if it's enough to just open XQuartz and then use Firefox as normally, but I tried running FF from a terminal spawned within XQuartz, to no avail.

Apparently, there's another guy on SE that did manage to get this working (http://stackoverflow.com/questions/10231223/compile-vim-7-3-with-clientserver-feature-on-mac-os-x -- see the last answer). But somehow, it doesn't work for me. Might be my jumbled setup (using both MacPorts and Homebrew).

Idunno. I'll report when things look up.

Thanks!

jikkujose commented 9 years ago

How do you test if Mac has XQuartz?

ardagnir commented 9 years ago

XQuartz will show up in the doc when it is running. It doesn't come with OSX, you have to install it seperately.

ScoreUnder commented 9 years ago

I have the same problem on Arch Linux. Disabling pterosaur also broke my space key until I restarted the browser.

I can see vim when I set the debug TTY, and I can use that vim instance by typing in a textbox. However, nothing appears in the textbox itself, and vim --serverlist shows nothing.

Finding the vim command in the process list and running a similar command works, and does appear in vim --serverlist.

For some strange reason, the pterosaur vim instance has the extra environment variable XAUTHORITY, which has been set to the empty string! I will close firefox, launch it with an XAUTHORITY that makes sense, and report whether this fixes it.

ScoreUnder commented 9 years ago

Yes, setting the XAUTHORITY variable fixes it. As far as I know, an unset XAUTHORITY is equivalent to XAUTHORITY=~/.Xauthority, so exporting that might be a usable workaround. If I were to propose a fix, I'd like to request that the plugin doesn't export XAUTHORITY if it's not in firefox's environment.

I don't know if the issue is the same for you, @Jannertje but I hope it is. Test it by closing firefox, and invoking it like this:

XAUTHORITY=~/.Xauthority firefox

Then see if the plugin suddenly works. If so, we are experiencing the same problem.