2016-11-20 96 views
3

根據vim用戶手冊04.7(http://vimdoc.sourceforge.net/htmldoc/usr_04.html#04.7),你可以從vim跳到剪貼板"*y並從剪貼板放入vim中"*p。可以成功地使用"*p命令,但"*y命令現在不適用於我,問題已經持續了幾個星期,我知道你可以使用gvim解決這個問題,但是我在運行時遇到了一個解決方案VIM從終端。我怎樣才能讓vim跳轉到剪貼板(「* y)工作?

任何人都不會有什麼問題可能是想法?我包括我的.vimrc文件下,如你所見,這或多或少是提供預包裝用vim的默認文件。

我在Windows 10上運行Ubuntu 16.04作爲VM。預先感謝您提供的任何幫助。

" An example for a vimrc file. 
" 
" Maintainer: Bram Moolenaar <[email protected]> 
" Last change: 2016 Mar 25 
" 
" To use it, copy it to 
"  for Unix and OS/2: ~/.vimrc 
"   for Amiga: s:.vimrc 
" for MS-DOS and Win32: $VIM\_vimrc 
"  for OpenVMS: sys$login:.vimrc 

" When started as "evim", evim.vim will already have done these settings. 
if v:progname =~? "evim" 
    finish 
endif 

" Use Vim settings, rather than Vi settings (much better!). 
" This must be first, because it changes other options as a side effect. 
set nocompatible 

" Activate pathogen file manager 
execute pathogen#infect() 

" allow backspacing over everything in insert mode 
set backspace=indent,eol,start 

"if has("vms") 
" set nobackup  " do not keep a backup file, use versions instead 
"else 
" set backup  " keep a backup file (restore to previous version) 
" set undofile  " keep an undo file (undo changes after closing) 
"endif 
set history=50  " keep 50 lines of command line history 
set ruler  " show the cursor position all the time 
set showcmd  " display incomplete commands 
set incsearch  " do incremental searching 

" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries 
" let &guioptions = substitute(&guioptions, "t", "", "g") 

" Don't use Ex mode, use Q for formatting 
map Q gq 

" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo, 
" so that you can undo CTRL-U after inserting a line break. 
inoremap <C-U> <C-G>u<C-U> 

" In many terminal emulators the mouse works just fine, thus enable it. 
if has('mouse') 
    set mouse=a 
endif 

" Switch syntax highlighting on, when the terminal has colors 
" Also switch on highlighting the last used search pattern. 
if &t_Co > 2 || has("gui_running") 
    syntax on 
    set hlsearch 
endif 

" Only do this part when compiled with support for autocommands. 
if has("autocmd") 

    " Enable file type detection. 
    " Use the default filetype settings, so that mail gets 'tw' set to 72, 
    " 'cindent' is on in C files, etc. 
    " Also load indent files, to automatically do language-dependent indenting. 
    filetype plugin indent on 

    " Put these in an autocmd group, so that we can delete them easily. 
    augroup vimrcEx 
    au! 

    " For all text files set 'textwidth' to 78 characters. 
    autocmd FileType text setlocal textwidth=78 

    " When editing a file, always jump to the last known cursor position. 
    " Don't do it when the position is invalid or when inside an event handler 
    " (happens when dropping a file on gvim). 
    autocmd BufReadPost * 
    \ if line("'\"") >= 1 && line("'\"") <= line("$") | 
    \ exe "normal! g`\"" | 
    \ endif 

    augroup END 

else 

    set autoindent  " always set autoindenting on 
    set sts=4   " 3 options to halve displayed indent 
    set shiftwidth=4  " (without altering true tabstop) 
    set noexpandtab 

endif " has("autocmd") 

" Convenient command to see the difference between the current buffer and the 
" file it was loaded from, thus the changes you made. 
" Only define it when not defined already. 
if !exists(":DiffOrig") 
    command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis 
      \ | wincmd p | diffthis 
endif 

if has('langmap') && exists('+langnoremap') 
    " Prevent that the langmap option applies to characters that result from a 
    " mapping. If unset (default), this may break plugins (but it's backward 
    " compatible). 
    set langnoremap 
endif 


" Add optional packages. 
" 
" The matchit plugin makes the % command work better, but it is not backwards 
" compatible. 
packadd matchit 
+0

你在使用什麼虛擬機?您可以在這裏找到幫助:http://askubuntu.com/questions/533071/virtualbox-4-12-shared-clipboard-not-working-in-ubuntu14-04。無論哪種方式,這個問題更適合於[Ask Ubuntu](http://askubuntu.com),除非您的剪貼板共享在Vim之外正常工作。 –

+0

嗨吉姆,這個問題本地化爲vim,除了我的ubuntu剪貼板工作正常。我使用的是Virtualbox,但是您建議的主題涉及在窗口和我的虛擬機之間進行復制和粘貼的操作,該虛擬機已經在運行(除了vim)。 – adc17

回答

2

在Linux上,桌面剪貼板是+(quoteplus)註冊表。 *(quotestar)改爲指X11視覺選擇,如here所述。所以,請試着用"+y來放大文本,然後用"+p放置文本。

+0

使用+代替*解決了問題。謝謝。 – adc17

1

您必須使用支持X的vim版本。例如,Ubuntu提供包含gvim的包vim-gtk和一個支持X的vim版本。

+0

'vim-gnome'呢? – vabada