neovim
                Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| neovim [2024/04/01 22:24] – dblume | neovim [2025/10/17 17:07] (current) – [Updating Copilot and Copilot Chat] dblume | ||
|---|---|---|---|
| Line 9: | Line 9: | ||
| The regular '' | The regular '' | ||
| - | I could use snap on my work (Ubuntu) and personal frame.work laptop computers to get 0.9.5. (However,  | + | [[https:// | 
| - | + | ||
| - | sudo snap install nvim --classic | + | |
| - |   ln -s / | + | |
| - | + | ||
| - | But in WSL2, although I had '' | + | |
| + | uname -m # x86_64 | ||
|   cd ~/ |   cd ~/ | ||
| - |   wget https:// | + |   wget https:// | 
| - | tar -xvf nvim-linux64.tar.gz | + | tar -xvf nvim-linux64.tar.gz.1 | 
|   ln -s nvim-linux64/ |   ln -s nvim-linux64/ | ||
| Line 29: | Line 25: | ||
|   - [[https:// |   - [[https:// | ||
|     - '' |     - '' | ||
| + | - Assure you're logged in to GitHub with the profile you want to connect. The next step's setup will launch the browser. | ||
| + |   - Start nvim and run '': | ||
|   - read [[https:// |   - read [[https:// | ||
| - |    | + | |
| + | ===== Copilot Chat ===== | ||
| + | |||
| + | See [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | mkdir -p ~/ | ||
| + | cd ~/ | ||
| + | # (Done as part of CoPilot installation) git clone --filter=blob: | ||
| + | git clone --filter=blob: | ||
| + | git clone --filter=blob: | ||
| + | </ | ||
| + | |||
| + | ===== Updating Copilot and Copilot Chat ===== | ||
| + | |||
| + | This is a manual process because I only want to do it when I'm ready to handle backwards incompatibilities. | ||
| + | |||
| + | Update Copilot autosuggest: | ||
| + | <code bash> | ||
| + | mkdir ~/backup | ||
| + | mv ~/ | ||
| + | git clone --filter=blob: | ||
| + | # Test auto suggest. If it works, delete the backup and the /.git dir... | ||
| + | rm -rf ~/ | ||
| + | rm -rf ~/ | ||
| + | </ | ||
| + | |||
| + | Update Copilot Chat: | ||
| + | <code bash> | ||
| + | mv ~/ | ||
| + | mkdir -p ~/ | ||
| + | cd ~/ | ||
| + | git clone --filter=blob: | ||
| + | git clone --filter=blob: | ||
| + | # If WSL, see if you have to fix XDG_RUNTIME_DIR. | ||
| + | # Test : | ||
| + | rm -rf ~/ | ||
| + | rm -rf ~/ | ||
| + | rm -rf ~/ | ||
| + | rmdir ~/backup | ||
| + | </ | ||
| + | |||
| + | ==== macOS tweak ==== | ||
| + | |||
| + | On macOS, I initially had trouble with diffs of the form '' | ||
| + | |||
| + | <code bash> | ||
| + | sed -i ' | ||
| + | </ | ||
| + | |||
| + | ==== WSL tweak ==== | ||
| + | |||
| + | WSL sets '' | ||
| + | |||
| + |   - '' | ||
| + |   - or modify plenary' | ||
| + |   - or '' | ||
| + | |||
| + | <code bash> | ||
| + | sed -i ' | ||
| + | </ | ||
| + | |||
| + | ==== Optional Settings ==== | ||
| + | |||
| + | Optional, [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | git clone --filter=blob: | ||
| + |           ~/ | ||
| + | </ | ||
| + | |||
| + | Add '' | ||
| + | |||
| + | See what you think of this first. (Rainbow parentheses may be gone. Might have to add something like [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | git clone --filter=blob: | ||
| + |           ~/ | ||
| + | </ | ||
| ===== taglist ===== | ===== taglist ===== | ||
| - | The old taglist I have isn't working as expected in tmux. Try getting the latest release (since head auto runs tests). | + | The old taglist I have isn't working as expected in tmux. Opening the window would wrap neovim windows. The fix is to disable auto-resizing the winwidth. | 
| + | |||
| + | let Tlist_Inc_Winwidth = 0 | ||
| + | |||
| + | Along the way, I tried getting the latest release (since head auto runs tests). Maybe I should keep it. | ||
|   git clone --filter=blob: |   git clone --filter=blob: | ||
| + | |||
| + | ===== cscope ===== | ||
| + | |||
| + | Cscope has been removed from neovim. If you want it back, install [[https:// | ||
| + | |||
| + | Your hierarchy would look something like: | ||
| + | < | ||
| + | ~/ | ||
| + | └── start | ||
| + | └── cscope_maps.nvim | ||
| + | └── lua | ||
| + | ├── cscope | ||
| + | │ └── pickers | ||
| + | └── utils | ||
| + | </ | ||
| + | |||
| + | Run the following commands: | ||
| + | |||
| + |   mkdir -p ~/ | ||
| + |   cd ~/ | ||
| + |   git clone --filter=blob: | ||
| + | |||
| + | Then in your init.vim, add the following snippet: | ||
| + | |||
| + | <file lua init.vim> | ||
| + | lua << EOF | ||
| + |   require(' | ||
| + |     disable_maps = true, -- Mapping C-] to :Cstag < | ||
| + | -- Alternatively, | ||
| + | -- skip_input_prompt = true, | ||
| + | -- cscope = { skip_picker_for_single_result = true }, | ||
| + | }) | ||
| + | EOF | ||
| + | </ | ||
| + | |||
| + | ===== Mappings ===== | ||
| + | |||
| + | The easiest way to find out where a mapping came from is to run this command: | ||
| + | |||
| + |     :verbose imap <key sequence> | ||
neovim.1712035451.txt.gz · Last modified: 2024/04/01 22:24 by dblume