18

For some reason Firefox's vimperator :tabopen command suddenly doesn't work. :open still works. Does anyone know how to fix this?

8

Update #2: fix released

  • reinstall Vimperator

Update: fix done

Fix was done and contributed to Vimperator, new version was built with it, but it needs Mozilla's verification before publishing so it will take time.

If you wish to have it, follow this issue comment. I have not done that myself yet, so will not republish under my name (yet).

Reason why it doesn't work

Firefox changed how their rendering engine treats JS and Vimperator needs to adjust (e.g. legacy generator functions - those with yield - are now dropped).

Source: https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/Firefox_JavaScript_changelog#Firefox_51

Tab opening workaround

  1. Open your .vimperatorrc file (GNU/Linux: /home/username/.vimperatorrc)
  2. Add this (strange format due to - I think - << resulting in SO thinking I'm trying to do nasty work here and NOT displaying part of the code):

" Example keybinding: xt

nmap xt :extraTab<SPACE>

command! extraTab -nargs=1 -description "Open an extra tab" :js extraTab("<args>");

:js <<EOF

function extraTab(args) {

liberator.open(args, liberator.NEW_TAB)

}

EOF

Real solution

Needs to make tabs defined again, as now it ain't thus making it hard to do lots of tab-related things.

It requires Vimperator code re-work and an update, so go and upvote (don't comment, just upvote original post) an issue:

https://github.com/vimperator/vimperator-labs/issues/568

| improve this answer | |
3

It's broken for many people. If you can't wait for the fix to be released, there is a workaround method available (that works for me at least) https://github.com/vimperator/vimperator-labs/issues/568#issuecomment-275755483

| improve this answer | |
  • Please include the diff for an even better answer so in case of a rotting link or deleted comment it's still useful. – Patrick R. Jan 30 '17 at 19:31
2

I mapped t to Control+t + open in .vimperatorrc like so:

nnoremap t <C-t> o
nnoremap T y <C-t> o <C-v>

This mimics the old tabopen command.

You can also do this for the other commands like Jack Doe shows.

| improve this answer | |
2

The solution is to downgrade Firefox back to 50.1.*

EDIT: Vimperator is working in version 54.0.1

Just tried out qutebrowser which is a browser written for vim users. It looks awesome but it doesn't have dev tools (correct me if I'm wrong). I'm now using cVim in Chrome and I'm pretty satisfied with it, recommend it.

| improve this answer | |
1

Add this line in the file ".vimperatorrc" or "_vimperatorrc":

nnoremap t <C-t>

So when you press "t", rather than using ":tabopen " it opens a new tab in Firefox and lets you type in the url bar.

I'm a Windows user so I created my "_vimperatorrc" file in the folder titled my name (the same folder which has My Documents in it).

PS: If you have set gui=nonavigation in your vimperatorrc, this will not work, you instead use

nnoremap t <C-t>:open with a space after open.

Also, for me "r" also stopped refreshing, and "d" also stopped closing tabs, so the lines below fixed it.

nnoremap r <C-r>

nnoremap d <C-w>

| improve this answer | |
0

Define a command like newtabright to use it like this:

newtabright www.example.com

Take a look at HERE answer on how to do this.

| improve this answer | |
  • unfortunately still not a vimperator command – Brian Zhang Jan 24 '17 at 23:32
0

Had the same issue, and looks like it is a FF51.0 thingie, so made a bug report: https://github.com/vimperator/vimperator-labs/issues/671

HTH

| improve this answer | |
0

LIttle Ancient Forest Kami pretty much had the right workaround but was missing a few lines (since stack overflow seems to remove it since its a command). With this in your .vimperatorrc you can open new tabs with the command :extraTab (url)

" Example keybinding: xt nmap xt :extraTab

command! extraTab -nargs=1 -description "Open an extra tab" :js extraTab("");

:js << EOF

function extraTab(args) { liberator.open(args, liberator.NEW_TAB) } EOF

| improve this answer | |
0

I use this workaround in Windows, Firefox version 51.0.1.

In _vimperatorrc:

nnoremap t <C-t> <ESC> o

This will open a new tab, then switches back to normal mode to run :open command.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.