Turn on Ack in MacVIm - search

I'm new to MacVim and have installed Janus. I can't figure out how to search my project using Ack.vim.
For janus it says "Customizations: Janus rebinds command-shift-f () to bring up :Ack." But when I do command-shift-f I get this message:
The plugin ack is disabled for the following reason: The ack program is not installed
How do I use ack? If I have to install it, how do I do so? (guessing it has something to do with .vimrc or .vimrc.after but am not sure)
Thanks

You have to install ack first - it is an external program:
Instructions for Mac OS can be found on the ack-website and require MacPorts or homebrew.

Ack is an external program and Ack.vim is only an interface to Ack. You want that interface to Ack if you already use Ack: if you don't already have it on your machine you probably don't need it.
If you really need/want to use Ack, just install it.

Actually getting the same thing here with MacVim combined with Janus.
if you open macvim via command-line 'mvim .' then ack is available. if you open via "open new macvim buffer here" ack is not available.
guessing path problems.

Related

What should g:slimv_swank_cmd be to run SLIMV for SBCL on Windows 10?

I'm trying to use Steel Bank Common Lisp with GVim.
I installed Steel Bank Common Lisp (AMD64) into 'C:\Program Files\Steel Bank Common Lisp'.
I unzipped SLIMV into 'C:\vimfiles'
I installed Python3 and put it in Windows PATH.
I installed Python 2.7 and put it in Windows PATH.
I installed 64-bit GVim and finally got Python recognized.
I ran ':helptags C:/vimfiles/doc' in Vim to generate help tags for SLIMV
I have a 'Slimv' menu at the top of the Vim window but no Repl menu.
g:slimv_lisp = sbcl
g:slimv_impl = sbcl
g:slimv_preferred not set
g:slimv_lisp not set
g:slimv_swank_cmd not set
Per webpages and manual, I put this in my vimrc file
let g:slimv_swank_cmd = '!start "c:\Program Files\Steel Bank Common Lisp\sbcl.exe" -l "c:\Users\epic\vimfiles\slime\start-swank.lisp"'
I don't know if that's supposed to be 'set' instead of 'let'.
(start_swank) doesn't do anything inside SBCL.
I assume '!start' is a Vim command, the first thing passed is the location of SBCL on my computer, don't know what the '-l' does, and the third parameter is where SLIMV put 'start-swank.lisp'.
At this point, the Vim command ',c' will open a command window running SBCL and wait. Typing '(exit)' in SBCL will take me back to Vim with a red error message saying 'SWANK server is not running, Press ENTER to continue."
Any other documentation I can find is for SLIME, not SLIMV.
How can I get SLIMV running so I can use Vim for SBCL?
EDIT:
Thank you for the help as to what I'm telling to do what, romaini. Thanks for the slimv help, Tamas.
I have removed the g:slimv_swank_cmd entry in .vimrc, as I believe it does the same thing by itself that it would if I had the command right.
Now, I think I'm back to the problem I was trying to fix with that command, and that might be that SBCL is not working for me (?). Without the g:slimv_swank_cmd setting in .vimrc, Vim starts SBCL which then fails because COMPILE-FILE returns NIL when evaluating line 16 of start-swank.lisp. Vim will then report "SWANK server not running" while SBCL is at a debug screen asking whether to RETRY, CONTINUE, ABORT,,,, or EXIT.
Could it be that slimv is working well but SBCL is not working? I'm still trying in Vim to either compile a program (* 3.0 4.0), evaluate the line, or just connect-server ',C'.
EDIT2:
Trying to install a newer version of slimv from GitHub, I'm afraid we've hit the end of my capabilities. The Readme says to install the zip, reading the whole thing says see internal docs for more, and the internal docs say unzip the zip file in the vimfiles directory. There are lots of files on Github but I don't see a zip.
EDIT3:
With slimv-master.zip from github extracted to .vimfiles, I get the same error that "COMPILE-FILE returned NIL" while evaluating line 16 of ./slime/start-swank.lisp.
EDIT4:
Apparently, the SBCL download went from v2.2.0 to V2.2.1 since 01-26-22. I'm on a 64-bit Windows 10 machine and my SBCL download is automatic from SourceForge after clicking Windows-AMD64 here. I have the same issue, ./slime/swank/sbcl.lisp returns NIL from line 16 where COMPILE-FILE returns NIL. It is starting SBCL v2.2.1 now.
EDIT5:
Both my versions of slimv were extracted to ./vimfiles/. My ./vimfiles/slime/slime.el is Version 2.19. Did the newer slimv version not overwrite files when extracting to ./vimfiles/? Is there an uninstall when we're just extracting zips to ./vimfiles/?
EDIT6:
I don't have a check mark next to comments to mark the last of Tamas Kovacs' responses as the answer (as was the rest of his help through the comments). I now have a REPL window in Vim and Tamas solved my issue.
I summarize the results of our investigation (see comments above):
No need to set slimv option g:slimv_swank_cmd, because slimv should autodetect sbcl and build the correct start command for the swank server.
If autodetection fails or you want to make your own start command for any other reason, then you should use the --load switch (instead of -l) for loading a script into sbcl (the switch depends on the lisp implementation). On Windows machines I also suggest adding /MIN to the !start command, that would start the swank server minimized. This is an example start command for starting sbcl on Windows:
'!start /MIN "c:\Program Files\Steel Bank Common Lisp\sbcl.exe" --load "c:\Users\epic\vimfiles\slime\start-swank.lisp"'
Unfortunately vim.org has an outdated version of slimv, and recent changes in sbcl broke compatibility with the swank server contained in that slimv version. Therefore I strongly recommend that you download or checkout slimv directly from the github repository: https://github.com/kovisoft/slimv
When downloading the slimv-master.zip file from github and manually installing it, make sure that you extract the files from the zip to the proper subdirectories of the vimfiles folder of vim. This means that the contents of slimv-master\ftplugin should go into vimfiles\ftplugin, slimv-master\slime should go into vimfiles\slime, etc. In other words the slimv-master directory in the zip represents the vimfiles directory on your system. Of course this also holds when you install slimv by checking it out from github.

ack-grep: command not found in gvim after upgrade to Ubuntu 18.04

Running :Ack anything in gvim now gives
|| /bin/bash: ack-grep: command not found
ack-grep is already the newest version (2.22-1)
It was working fine in Ubuntu 16.04. I have the ack.vim plugin in ~/.vim/bundle/ack.vim/
Assuming you are using this ack.vim plugin. Then you shouldn't have to do anything.
Ack.vim will search for executables in the following order: ack-grep, ack. You can override this with g:ackprg. If you have set g:g:ackprg then you will need to adjust g:ackprg to be set to where the ack executable path.
let g:ackprg = '/usr/local/bin/ack'
Personally, I would avoid setting the g:ackprg variable unless you really need to.
You may also want to look into faster grep program's than ack. e.g. The Silver Searcher or ripgrep. I also haven't really found a need for a plugin like ack.vim, I just set 'grepprg' and 'grepformat' and search with :grep.

How do I get rid of this message in Vim when I'm working with golang files with Janus vim?

I use Vim to open up a hello.go file (using the nerdTree plugin included with janus vim distro) and get "vim-go: could not find 'gotags'. Run :GoInstallBinaries to fix it.". I'm using gvm. I can get golang to run with gvm. How do I install GoInstallBinaries with gvm to get rid of this message? I'm pretty new to golang, so I'm just trying to get up and running.
Do what sberry says. In command-mode, hit : and type GoInstallBinaries, and hit enter. That should install everything.

Adding/Installing vim plugins

I am trying to add Ack grep plugin .After downloading the file I unzipped the file and copied ack.vim from the plugin directory to .vim/bundle
However when I launch a gvim and do something like this
:Ack foo
I get Ack is not an editor command
Any suggestions on how I can install this plugin ?
Use a plugin manager like Vundle. After following the instructions on the Vundle webpage to install it you can add Plugin 'mileszs/ack.vim' in the list of plugins in your .vimrc. after simply :BundleInstall and it will automatically install.
I already have pathogen thats why i am dumping the .vim in bundle
What's the point of installing a tool like pathogen if you don't bother learning how to use it?
You are supposed to put the whole directory in ~/.vim/bundle/:
~/.vim/bundle/
~/.vim/bundle/ack.vim-master/autoload/
~/.vim/bundle/ack.vim-master/autoload/ack.vim
~/.vim/bundle/ack.vim-master/doc/
~/.vim/bundle/ack.vim-master/doc/ack_quick_help.txt
~/.vim/bundle/ack.vim-master/doc/ack.txt
~/.vim/bundle/ack.vim-master/ftplugin/
~/.vim/bundle/ack.vim-master/ftplugin/qf.vim
~/.vim/bundle/ack.vim-master/plugin/
~/.vim/bundle/ack.vim-master/plugin/ack.vim
You need to install Ack on your system first.
For example, on Ubuntu:
sudo apt-get install Ack

Vim74: E149 Sorry no help for help.txt

I just downloaded and installed vim74 on to my linux box. I'm only installing locally, for the user. When I go into vim, and do :help, I get the error.
I tried adding:
let $VIM='home/myuser/vim74'
let $VIMRUNTIME='home/myuser/vim74/runtime'
to my .vimrc but it didn't help. How can I fix this?
When building vim yourself and installing locally it seems that you need to generate the helptags manually from within vim since the build process doesn't seem to do it. I ran into this very same issue when building the latest vim version 8.0.311. I followed the link in Ben Klein's comment above, but both my &helpfile and &runtimepath were correct, yet I still received the E149 error when doing :help which I assume is your situation as well postelrich.
I found the helptags solution here:
https://github.com/Homebrew/homebrew-core/issues/1087
Even though I was installing vim locally on a centos system and not a mac, the issue seems to be universal. I just replaced $VIMRUNTIME with the path to the local vim runtime installed from make install, which in your case may be something like /home/myuser/vim74/runtime
Specifically I ran this from within vim:
:helptags ~/share/vim/vim80/doc
In your case you will probably run something like:
:helptags ~/vim74/runtime/doc
Once done, :help should immediately start working again without having to restart vim.
You can get the same “E149 Sorry no help for help.txt” error if you have a long-running Vim session and the Vim program files were upgraded in the meantime.
This happened to me: I had started an editing session in a GNU screen window on my Debian testing system using Vim 8.1. Some time later, unattenttended-upgrades upgraded Vim 8.1 to 8.2 with the result that the run-time paths were now no longer valid. I could have saved the session and restarted Vim, but it was simpler/easier to run the following command (specific to 8.2):
:set helpfile=/usr/share/vim/vim82/doc/help.txt

Resources