Greetings. I've been using vim for years, and I've recently started toying with XCode. One of the things I really like about XCode is that it will auto complete words without me hitting <TAB>.
For instance, in this image below I only need to type NSSObj and the rest is filled in automatically, no special keystroke required.
I'd like to reproduce this effect in vim.
To be clear, this question is not about how to get tab/omni-completion working in vim. I've already got tab/omni completion working just fine and that's not a problem. The question is: does anyone know how to get vim to autocomplete as I am typing ?
vimscripts has a plugin called autocomplpop.vim that does what you want.
Another option is a vim script called neocomplcache made by Shougo.
Related
It's very annoying for me that when I write the script, 3 dots appear and I can't continue to write my code because it jumps here and there.... does anyone know a solution for this? I would like to remove auto-completion from the code
I tried with the settings and keyboard commands, but unfortunately it didn't work!
Maybe using script editor is a better way. It‘s a built-in app, also supports syntax highlight and code running.
I'm trying to setup the terminal on my new Mac to match the behavior of my old Mac, however I have run into an issue with my multiline prompt that has me stumped. I remember having this issue when I setup my old Mac several years ago, however I don't remember how I solved it.
My prompt (without color) looks like this:
╭─username ~ 130 ↵
╰─
When I press ⌘commandK in iTerm2 on my old Mac it clears the terminal window so that both lines of the prompt are shown at the top.
When I press ⌘commandK in iTerm2 on my new Mac it clears the terminal window so that only the second line of the prompt is shown at the top.
I have tried checking everything I could think of, I have checked:
Every dot file/directory in my home directory (copied them to the new Mac).
iTerm2 settings.
System settings (primarily keyboard shortcuts).
Various websites with instructions about setting up multi-line prompts.
Interestingly I have discovered that if I type clear iTerm2 will clear the screen and leave the top line showing on both Macs. However it first clears the entire screen, including the prompt, before bringing the prompt back (looks bad imo). However since it works differently ⌘commandK does I don't think that's what my old Mac is doing.
It's possible that I installed some program/script that somehow does this, but if so I'm not finding it locally or referenced online.
Does anyone know how I can get ⌘commandK working to clear the screen while keeping the top line of my prompt? I still have the old Mac so I can check/compare anything on it to the new Mac if there are any guesses about what settings I changed.
Edit:
I was able to find something that worked, however if anyone has any other suggestions I'll be happy to try them and accept any that I can make work that are less hacky than this (e.g. don't require another 3rd party app).
Edit: This doesn't work while a command is running, nor does it clear the scrollable history. So it's better than nothing but still doesn't behave like I want it to.
After coming back to my question SO associated a new question with an answer I was able to make work, although it feels extra hacky and wasn't what I had working before.
I found this answer which suggests using ⌃controlL to clear the screen. That does exactly what I want it to do (leaves the top prompt visible and doesn't flash) but with the wrong keybinding. Fortunately I was able to use an app I already have installed (BTT) to make ⌘commandK map to ⌃controlL only in iTerm2.
I am trying to use the open command to open a link in Chrome from my terminal.
It works fine in plain Terminal.app or iTerm2, but doesn't work properly from tmux. What happens is: it opens a new instance of Chrome (rather than opening a new tab) and doesn't actually go to the URL.
Is there any fix for this? The reason I need this functionality is for running Mutt with urlview to open the links from emails.
Thanks.
This sounds like a problem that could be solved by installing reattach-to-user-namespace.
If you don't wanna get deep into manually solving this problem you can use one of the tmux plugins:
tmux-urlview looks like exactly what you're looking for
another solution is to use tmux-copycat + tmux-open
I recently got a mac. I was previously working on a laptop with ubuntu and I was using vim.
I now will discuss about vim in console (iTerm2 or the default terminal) and macvim.
The problem is that some binding don't work under mac. For example I had CTRL left/right for navigating between splits, CTRL up/down to move lines or blocks of code up and down, etc. They don't work anymore.
I had a bunch of plugins (nerdtree, powerline, etc.) that now look weird. Powerline doesn't display special characters in macvim and in terminal they are question marks.
In console, nerdtree looks weird and it doesn't display the special triangle character. If I hit return to open a file selected from nerdtree, it doesn't do anything. In macvim, it works ok.
Is there any guide on how to use vim on mac? Or what is the recommended way?
Nerdtree : let g:NERDTreeDirArrows=0
Powerline : Take a look at the part of strange characters in the document https://github.com/Lokaltog/vim-powerline
Navigating within splits with Ctrl + arrows work on mine. Can you post your vimrc, or try running vim without any configuration.
Ctrl+arrows to move lines and block doesn't work on mine.
Did you check which key was sent by your terminal to vim ?
Did you tried to set it manually ?
I had similar problems with emacs, including one keybinding I'm still not able to reproduce :(
I have the exact same config on my Mac and a Windows box at work, my Ubuntu box at home and a couple of VPSes. It works exactly the same on every platform in GVim/MacVim or in plain Vim.
Unfortunately I don't use either NERDTree nor Powerline but Vdt's answer seems to have all the info needed.
Some of the behaviors you describe are custom mappings. You should show us your ~/.vimrc (the old one on linux and the new one on the Mac, if there are differences) so that we can help you make it more portable.
Also, "looks weird" means nothing: please add a screenshot or two.
This isn't really a big issue, but annoying nonetheless; when I'm typing in GVim on my Windows box, the word I'm editing will sometimes flash as I type.
This does not happen for Vim sessions in Putty, and I've never noticed this behaviour when running GVim in Linux, but I've seen it on several other Windows setups.
I'm thinking the problem is GVim won't render the word until it has figured out what syntax highlighting to use, because the flashing disappears if I disable highlighting. But not using syntax highlighting is not something I would consider a solution ;)
Has anyone else experienced the same problem? Thanks in advance! :)
I had the same problem actually. Copy out all the items in ~_vimrc and put them in ~_gvimrc, this should work. Not sure why though.
I would say Change your colorscheme.
If that doesn't work try the command line, open up command prompt and type vim then see if you have the same problem