diff --git a/README.md b/README.md index 09f562d..2e8bad1 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,11 @@ vim-plug[![travis-ci](https://travis-ci.org/junegunn/vim-plug.svg?branch=master)](https://travis-ci.org/junegunn/vim-plug) === +

+ English | + Español +

+ A minimalist Vim plugin manager. diff --git a/lang/spanish/README.md b/lang/spanish/README.md new file mode 100644 index 0000000..105e9a6 --- /dev/null +++ b/lang/spanish/README.md @@ -0,0 +1,321 @@ +vim-plug[![travis-ci](https://travis-ci.org/junegunn/vim-plug.svg?branch=master)](https://travis-ci.org/junegunn/vim-plug) +=== + +

+English | + Español +

+ +Un administrador de plugins minimalista para Vim. + + + +### Pros. + +- Fácil de iniciar: Un único archivo. Sin código repetido. +- Fácil de usar: Conciso, sintaxis intuitiva +- Instalación/actualización en paralelo [Super-rapida][40/4] + (con cualquiera de: `+job`, `+python`, `+python3`, `+ruby`, o [Neovim][nv]) +- Crea clones simples para minimizar uso de disco y tiempo de descarga +- Carga a demanda con [faster startup time][startup-time] +- Puedes revisar y revertir actualizaciones +- Soporte para branch/tag/commit +- Acciones post-actualización +- Soporte para complementos externos + + +[40/4]: https://raw.githubusercontent.com/junegunn/i/master/vim-plug/40-in-4.gif +[nv]: http://neovim.org/ +[startup-time]: https://github.com/junegunn/vim-startuptime-benchmark#result + +### Instalación + +[Descarga plug.vim](https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim) +y péguelo en el directorio "autoload". + +#### Vim + +###### Unix + +```sh +curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim +``` + +Puede automatizar el proceso poniendo el comando en su archivo de configuración +de vim, tal como sugerimos [aquí][auto]. + + +[auto]: https://github.com/junegunn/vim-plug/wiki/tips#automatic-installation + +###### Windows (PowerShell) + +```powershell +iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |` + ni $HOME/vimfiles/autoload/plug.vim -Force +``` + +#### Neovim + +###### Unix, Linux + +```sh +sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +``` + +###### Linux (Flatpak) + +```sh +curl -fLo ~/.var/app/io.neovim.nvim/data/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim +``` + +###### Windows (PowerShell) + +```powershell +iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |` + ni "$(@($env:XDG_DATA_HOME, $env:LOCALAPPDATA)[$null -eq $env:XDG_DATA_HOME])/nvim-data/site/autoload/plug.vim" -Force +``` + +### Obteniendo ayuda + +- Consulte la página [tutorial] para aprender las bases de vim-plug +- Consulte las paginas [tips] y [FAQ] por problemas comunes y preguntas +- Consulte la página [requisitos] para obtener información sobre depuración y configuraciones probadas +- Cree un [issue](https://github.com/junegunn/vim-plug/issues/new) + +[tutorial]: https://github.com/junegunn/vim-plug/wiki/tutorial +[tips]: https://github.com/junegunn/vim-plug/wiki/tips +[FAQ]: https://github.com/junegunn/vim-plug/wiki/faq +[requirements]: https://github.com/junegunn/vim-plug/wiki/requirements + +### Uso + +Añada una sección para vim-plug en su `~/.vimrc` (o `stdpath('config') . '/init.vim'` para Neovim) + +1. Comience la sección con `call plug#begin()` +1. Liste los plugins con el comando `Plug` +1. Finalice la sección con `call plug#end()` para actualizar `&runtimepath` e inicializar el sistema de plugin + - Automáticamente ejecuta `filetype plugin indent on` y `syntax enable`. + Puede revertir estas configuraciones luego del llamado. ej: `filetype indent off`, `syntax off`, etc. + +#### Ejemplo + +```vim +" Especificar un directorio para plugins +"- Para Neovim: stdpath ('data'). '/plugged' +"- Evite el uso de nombres de directorios estándar de Vim como 'plugin' +call plug#begin('~/.vim/plugged') + +" Asegúrese de usar comillas simples + + +" Notación abreviada; busca https://github.com/junegunn/vim-easy-align +Plug 'junegunn/vim-easy-align' + +" Se permite cualquier URL de git válida +Plug 'https://github.com/junegunn/vim-github-dashboard.git' + +" Se pueden escribir varios comandos Plug en una sola línea utilizando separadores | +Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' + +" Carga bajo demanda +Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } +Plug 'tpope/vim-fireplace', { 'for': 'clojure' } + +" Usando una rama no predeterminada +Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' } + +" Usando una versión etiquetada; comodín permitido (requiere git 1.9.2 o superior) +Plug 'fatih/vim-go', { 'tag': '*' } + +" opciones del plugin +Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' } + + +" Plugin fuera de ~/.vim/plugged con una acción post-actualización +Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } + +"Plugin no administrado (instalado y actualizado manualmente) +Plug '~/my-prototype-plugin' + +" Inicializar el sistema de plugins +call plug#end() +``` + +Recargue el .vimrc y ejecute `:PlugInstall` para instalar los plugins + +### Comandos + +| Comando | Descripción | +| ----------------------------------- | ------------------------------------------------------------------ | +| `PlugInstall [name ...] [#threads]` | Instalar plugins | +| `PlugUpdate [name ...] [#threads]` | Instalar o actualizar plugins | +| `PlugClean[!]` | Remover plugins sin listar | +| `PlugUpgrade` | Actualizar vim-plug | +| `PlugStatus` | Verificar el estado de los plugins | +| `PlugDiff` | Examinar cambios entre la última actualización y los cambios pendientes | +| `PlugSnapshot[!] [output path]` | Generar un script para restaurar el snapshot actual de plugins | + +### Opciones `Plug` + +| Opcion | Descripción | +| ----------------------- | ------------------------------------------------ | +| `branch`/`tag`/`commit` | Branch/tag/commit del repositorio a usar | +| `rtp` | Subdirectorio que contiene Vim Plugin | +| `dir` | Directorio personalizado para plugins | +| `as` | Usar un nombre distinto para el plugin | +| `do` | Acciones post-actualización (string o funcref) | +| `on` | Carga bajo demanda: Comandos o asignaciones `` | +| `for` | Carga bajo demanda: Tipos de archivo | +| `frozen` | No se actualizará a menos que se indique explícitamente | + +### Opciones globales + +| Bandera | Por defecto | Descripción | +| ------------------- | --------------------------------- | ------------------------------------------------------ | +| `g:plug_threads` | 16 | Número por defecto de subprocesos a utilizar | +| `g:plug_timeout` | 60 | Tiempo límite de cada tarea en segundos (*Ruby & Python*) | +| `g:plug_retries` | 2 | Número de reintentos en caso de timeout (*Ruby & Python*) | +| `g:plug_shallow` | 1 | Usar clon superficial | +| `g:plug_window` | `vertical topleft new` | Comando para abrir la ventana de `` | +| `g:plug_pwindow` | `above 12new` | Comando para abrir la vista previa de `PlugDiff` | +| `g:plug_url_format` | `https://git::@github.com/%s.git` | `printf` formato para crear la URL del repositorio (solo se aplica a los comandos `Plug` subsiguientes) | + + +### Atajos de teclado + +- `D` - `PlugDiff` +- `S` - `PlugStatus` +- `R` - Reintentar actualizaciones o instalaciones fallidas +- `U` - Actualizar plugins en el rango seleccionado +- `q` - Cerrar ventana +- `:PlugStatus` + - `L` - Cargar plugin +- `:PlugDiff` + - `X` - Revertir la actualización + +### Ejemplo: Una pequeña configuration + +```vim +call plug#begin() +Plug 'tpope/vim-sensible' +call plug#end() +``` + +### Carga bajo demanda de plugins + +```vim +" NERD tree será cargado en la primera invocación del comando NERDTreeToggle +Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } + +" Múltiples comandos +Plug 'junegunn/vim-github-dashboard', { 'on': ['GHDashboard', 'GHActivity'] } + +" Cargado cuando se abre un archivo clojure +Plug 'tpope/vim-fireplace', { 'for': 'clojure' } + +" Múltiples tipos de archivos +Plug 'kovisoft/paredit', { 'for': ['clojure', 'scheme'] } + +"Carga bajo demanda con ambas condiciones +Plug 'junegunn/vader.vim', { 'on': 'Vader', 'for': 'vader' } + +"Código para ejecutar cuando el plugin se carga de forma diferida a pedido +Plug 'junegunn/goyo.vim', { 'for': 'markdown' } +autocmd! User goyo.vim echom 'Goyo is now loaded!' +``` + +La opción `for` generalmente no es necesaria ya que la mayoría +de los plugins para tipos de archivos específicos no suelen +tener demasiado código en el directorio `plugin`. +Es posible que desee examinar la salida de `vim --startuptime` +antes de aplicar la opción. + + +### Acciónes post-actualizacion + +Hay algunos plugins que requieren pasos extra luego de la instalación +o actualización. En esos casos, use la opción do para describir la +tarea a ser ejecutada + +```vim +Plug 'Shougo/vimproc.vim', { 'do': 'make' } +Plug 'ycm-core/YouCompleteMe', { 'do': './install.py' } +``` + + +Si el valor comienza con `:`, sera considerado como un comando de Vim + +```vim +Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' } +``` + +Si usted necesita un mayor control, puede pasarle una referencia +a una función Vim que tome un solo argumento + +```vim +function! BuildYCM(info) + " info es un diccionario con 3 campos + " - name: nombre del plugin + " - status: 'installed', 'updated', o 'unchanged' + " - force: configurado en PlugInstall! o PlugUpdate! + if a:info.status == 'installed' || a:info.force + !./install.py + endif +endfunction + +Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') } +``` + +Ambas acciones post-actualización se ejecutan dentro del +directorio del plugin y solo se ejecutan cuando el +repositorio haya cambiado, pero puede obligarlo a ejecutarse +incondicionalmente con los comandos: `PlugInstall!` Y `PlugUpdate!`. + +Asegúrese de evitar las barras y las comillas dobles cuando +escriba la opción `do` en línea, ya que se reconocen erróneamente +como separadores de comandos o como el comienzo del comentario +final. + +```vim +Plug 'junegunn/fzf', { 'do': 'yes \| ./install' } +``` + +Pero puede evitar el escape si extrae la especificación en línea usando una +variable (o cualquier expresión de Vimscript) de la siguiente manera: + +```vim +let g:fzf_install = 'yes | ./install' +Plug 'junegunn/fzf', { 'do': g:fzf_install } +``` + +### `PlugInstall!` y `PlugUpdate!` + +El instalador toma los siguientes pasos cuando se instala o actualiza un plugin + +1. `git clone` o `git fetch` desde el origen +2. Verifica ramas, tags o commits y opcionalmente `git merge` ramas remotas +3. Si el plugin fue actualizado (o instalado por primera vez) + 1. actualiza submódulos + 2. Ejecuta acciones post-actualización + +Los comandos con el sufijo `!` se aseguran que todos los pasos son ejecutados incondicionalmente + + +### Artículos + +- [Escribiendo mi propio administrador de plugins para vim](http://junegunn.kr/2013/09/writing-my-own-vim-plugin-manager) +- [Plugins de vim y tiempo de inicio](http://junegunn.kr/2014/07/vim-plugins-and-startup-time) +- ~~[Pensamientos sobre la dependencia en los plugins de Vim](http://junegunn.kr/2013/09/thoughts-on-vim-plugin-dependency)~~ + - *El soporte para Plugfile se ha eliminado desde 0.5.0* + +### Colaboradores + +- [Jan Edmund Lazo](https://github.com/janlazo) - Soporte de ventanas +- [Jeremy Pallats](https://github.com/starcraftman) - Instalador de Python + +### Licencia + +MIT \ No newline at end of file