mirror of
https://github.com/amix/vimrc
synced 2025-02-28 14:12:51 +08:00
modificaciones varias
This commit is contained in:
parent
13b6c38e2d
commit
d599bacbe9
@ -10,22 +10,89 @@
|
|||||||
"
|
"
|
||||||
" The API is documented inline below.
|
" The API is documented inline below.
|
||||||
|
|
||||||
|
" si ya se cargó este archivo o la compatibilidad con Vi está activada
|
||||||
if exists("g:loaded_pathogen") || &cp
|
if exists("g:loaded_pathogen") || &cp
|
||||||
|
|
||||||
|
" termina la carga acá
|
||||||
finish
|
finish
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let g:loaded_pathogen = 1
|
let g:loaded_pathogen = 1
|
||||||
|
|
||||||
" Point of entry for basic default usage. Give a relative path to invoke
|
" Point of entry for basic default usage. Give a relative path to invoke pathogen#interpose()
|
||||||
" pathogen#interpose() (defaults to "bundle/{}"), or an absolute path to invoke
|
" (defaults to "bundle/{}"), or an absolute path to invoke pathogen#surround(). Curly braces are
|
||||||
" pathogen#surround(). Curly braces are expanded with pathogen#expand():
|
" expanded with pathogen#expand(): "bundle/{}" finds all subdirectories inside "bundle" inside all
|
||||||
" "bundle/{}" finds all subdirectories inside "bundle" inside all directories
|
" directories in the runtime path.
|
||||||
" in the runtime path.
|
|
||||||
|
" !: si hay una función definida con el mismo identificador, la reemplaza
|
||||||
|
" ...: acepta 0 o más argumentos
|
||||||
|
" abort: termina la ejecución de la función al primer error
|
||||||
function! pathogen#infect(...) abort
|
function! pathogen#infect(...) abort
|
||||||
|
|
||||||
|
" para cada elemento en
|
||||||
|
" si hay argumentos
|
||||||
|
" se realiza una copia de la lista de los argumentos
|
||||||
|
" se invierten los elementos de la lista
|
||||||
|
" se eliminan los argumentos que no sean de tipo string
|
||||||
|
" sino
|
||||||
|
" una lista con un elemento = 'bundle/{}'
|
||||||
for path in a:0 ? filter(reverse(copy(a:000)), 'type(v:val) == type("")') : ['bundle/{}']
|
for path in a:0 ? filter(reverse(copy(a:000)), 'type(v:val) == type("")') : ['bundle/{}']
|
||||||
|
|
||||||
|
" si el elemento es igual (case sensitive) a
|
||||||
|
" 1. ^: principio de línea
|
||||||
|
" 2. \%(: comienzo de grupo
|
||||||
|
" 3. "{"
|
||||||
|
" 4. \=: encuentra 0 o 1 vez el elemento anterior
|
||||||
|
" 5. [: comienzo de colección
|
||||||
|
" 6. "$"
|
||||||
|
" 7. "~"
|
||||||
|
" 8. \\: "\"
|
||||||
|
" 9. "/"
|
||||||
|
" 10. ]: fin de la colección que comenzó en (5.)
|
||||||
|
" 11. \|: OR
|
||||||
|
" 12. "{"
|
||||||
|
" 13. \=: encuentra 0 o 1 vez el elemento anterior
|
||||||
|
" 14. \w: igual a [0-9A-Za-z_]
|
||||||
|
" 15. ":"
|
||||||
|
" 16. [: comienzo de colección
|
||||||
|
" 17. \\: "\"
|
||||||
|
" 18. "/"
|
||||||
|
" 19. ]: fin de colección (16.)
|
||||||
|
" 20. \): fin de grupo (2.)
|
||||||
|
" 21. .: cualquier carácter menos fin de línea
|
||||||
|
" 22. *: encuentra 0 o más veces el elemento anterior
|
||||||
|
" 23. [: comienzo de colección
|
||||||
|
" 24. "{"
|
||||||
|
" 25. "}"
|
||||||
|
" 26. "*"
|
||||||
|
" 27. ]: fin de colección (23.)
|
||||||
if path =~# '^\%({\=[$~\\/]\|{\=\w:[\\/]\).*[{}*]'
|
if path =~# '^\%({\=[$~\\/]\|{\=\w:[\\/]\).*[{}*]'
|
||||||
|
|
||||||
call pathogen#surround(path)
|
call pathogen#surround(path)
|
||||||
|
|
||||||
|
" si el elemento es igual (case sensitive) a
|
||||||
|
" 1. ^: comienzo de línea
|
||||||
|
" 2. \%(: inicio de grupo
|
||||||
|
" 3. [: inicio de colección
|
||||||
|
" 4. "$"
|
||||||
|
" 5. "~"
|
||||||
|
" 6. \\: "\"
|
||||||
|
" 7. "/"
|
||||||
|
" 8. ]: fin de colección
|
||||||
|
" 9. \|: OR
|
||||||
|
" 10. \w: igual a [0-9A-Za-z_]
|
||||||
|
" 11. ":"
|
||||||
|
" 12. [: inicio de colección
|
||||||
|
" 13. \\: "\"
|
||||||
|
" 14. "/"
|
||||||
|
" 15. ]: fin de colección
|
||||||
|
" 16. \): fin de grupo
|
||||||
elseif path =~# '^\%([$~\\/]\|\w:[\\/]\)'
|
elseif path =~# '^\%([$~\\/]\|\w:[\\/]\)'
|
||||||
|
|
||||||
|
" parámetro: un texto que avisa que al parámetro de pathogen#infect se le agrega '/{}'
|
||||||
call s:warn('Change pathogen#infect('.string(path).') to pathogen#infect('.string(path.'/{}').')')
|
call s:warn('Change pathogen#infect('.string(path).') to pathogen#infect('.string(path.'/{}').')')
|
||||||
|
|
||||||
call pathogen#surround(path . '/{}')
|
call pathogen#surround(path . '/{}')
|
||||||
elseif path =~# '[{}*]'
|
elseif path =~# '[{}*]'
|
||||||
call pathogen#interpose(path)
|
call pathogen#interpose(path)
|
||||||
@ -43,8 +110,15 @@ endfunction
|
|||||||
|
|
||||||
" Split a path into a list.
|
" Split a path into a list.
|
||||||
function! pathogen#split(path) abort
|
function! pathogen#split(path) abort
|
||||||
|
|
||||||
|
" |: se utiliza para separar comandos en una misma línea
|
||||||
|
" si path es una lista, entonces devuelve path
|
||||||
if type(a:path) == type([]) | return a:path | endif
|
if type(a:path) == type([]) | return a:path | endif
|
||||||
|
|
||||||
|
" si path no contiene elementos, devuelve una lista vacía
|
||||||
if empty(a:path) | return [] | endif
|
if empty(a:path) | return [] | endif
|
||||||
|
|
||||||
|
" la variable 'split' =
|
||||||
let split = split(a:path,'\\\@<!\%(\\\\\)*\zs,')
|
let split = split(a:path,'\\\@<!\%(\\\\\)*\zs,')
|
||||||
return map(split,'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")')
|
return map(split,'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")')
|
||||||
endfunction
|
endfunction
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
- en algunas ocaciones, 'end' queda una indentación atrás cuando se tipea '$b' en modo VISUAL
|
||||||
|
- cuando se reconozca que los archivos a editar son de lenguajes de programación, debería configurar 'set tw=0'
|
||||||
|
- modificar el mapeo <space>p<space> de manera que se pueda usar con cualquier registro, y no sólo con el registro "
|
@ -43,7 +43,10 @@ let g:mapleader = ","
|
|||||||
nmap <leader>w :w!<cr>
|
nmap <leader>w :w!<cr>
|
||||||
|
|
||||||
" sale de todas las ventanas
|
" sale de todas las ventanas
|
||||||
map <leader>q :qa<cr>
|
map <leader><space>q :qa<cr>
|
||||||
|
|
||||||
|
" sale de la ventana actual
|
||||||
|
map <leader>q :q<cr>
|
||||||
|
|
||||||
" volver al modo normal sin tener que retirar los dedos de la posición normal en el teclado
|
" volver al modo normal sin tener que retirar los dedos de la posición normal en el teclado
|
||||||
ino ñjaf <esc>
|
ino ñjaf <esc>
|
||||||
@ -269,6 +272,9 @@ set statusline=\ %{HasPaste()}%F%m%r%h\ %w\ \ CWD:\ %r%{getcwd()}%h\ \ \ Line:\
|
|||||||
" remapea '0' para que posicione el cursor en el primer carácter no blanco
|
" remapea '0' para que posicione el cursor en el primer carácter no blanco
|
||||||
map 0 ^
|
map 0 ^
|
||||||
|
|
||||||
|
" en vez de copiar toda la línea, copia desde el cursor hasta el final de la línea
|
||||||
|
map Y y$
|
||||||
|
|
||||||
" colocación de espacios sin tener que entrar en modo INSERT
|
" colocación de espacios sin tener que entrar en modo INSERT
|
||||||
nn <space>k<space> O<esc>j
|
nn <space>k<space> O<esc>j
|
||||||
nn <space>kk O<esc>
|
nn <space>kk O<esc>
|
||||||
|
@ -80,25 +80,39 @@ imap ½ $
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
" => Parenthesis/bracket
|
" => Parenthesis/bracket
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
" autocompletado de (, ", ', [, [[[, {{{}}} en modo VISUAL
|
|
||||||
|
" autocompletado en modo VISUAL
|
||||||
vnoremap $1 <esc>`>a)<esc>`<i(<esc>
|
vnoremap $1 <esc>`>a)<esc>`<i(<esc>
|
||||||
vnoremap $2 <esc>`>a]<esc>`<i[<esc>
|
vnoremap $2 <esc>`>a]<esc>`<i[<esc>
|
||||||
vnoremap $3 <esc>`>a}<esc>`<i{<esc>
|
vnoremap $3 <esc>`>a}<esc>`<i{<esc>
|
||||||
vnoremap $$ <esc>`>a"<esc>`<i"<esc>
|
vnoremap $' <esc>`>a'<esc>`<i'<esc>
|
||||||
vnoremap $q <esc>`>a'<esc>`<i'<esc>
|
vnoremap $" <esc>`>a"<esc>`<i"<esc>
|
||||||
vnoremap $e <esc>`>a"<esc>`<i"<esc>
|
vnoremap $* <esc>`>a*<esc>`<i*<esc>
|
||||||
vnoremap $f <esc>`<a<space>{{{<esc>`>i}}}<esc>
|
vnoremap $> <esc>`>a><esc>`<i<<esc>
|
||||||
|
vnoremap $? <esc>`>a?<esc>`<i¿<esc>
|
||||||
|
vnoremap $= <esc>`>o=<esc>yl99p`<O=<esc>yl99p
|
||||||
vnoremap $b <esc>`<Obegin<esc>`>oend<esc>`<V`>>
|
vnoremap $b <esc>`<Obegin<esc>`>oend<esc>`<V`>>
|
||||||
|
vnoremap $f <esc>`<A<space>{{{<esc>`>i}}}<esc>zxza
|
||||||
|
|
||||||
" autocompletado de (, ", ', [, {{{}}} en modo INSERT
|
" autocompletado en modo INSERT
|
||||||
inoremap $1 ()<esc>i
|
inoremap $1 ()<esc>i
|
||||||
inoremap $2 []<esc>i
|
inoremap $2 []<esc>i
|
||||||
inoremap $3 {}<esc>i
|
inoremap $3 {}<esc>i
|
||||||
inoremap $4 {<esc>o}<esc>O
|
inoremap $4 {<esc>o}<esc>O
|
||||||
inoremap $q ''<esc>i
|
inoremap $' ''<esc>i
|
||||||
inoremap $e ""<esc>i
|
inoremap $" ""<esc>i
|
||||||
inoremap $f {{{<esc>o}}}<esc>O<esc>i
|
inoremap $* **<esc>i
|
||||||
|
inoremap $> <><esc>i
|
||||||
|
inoremap $? ¿?<esc>i
|
||||||
|
inoremap $= =<esc>yl99pYpO
|
||||||
inoremap $b begin<cr><bs>end<esc>O
|
inoremap $b begin<cr><bs>end<esc>O
|
||||||
|
inoremap $f <space>{{{<esc>o}}}<esc>O<esc>zxi
|
||||||
|
inoremap $<space>f <esc>?*<cr>v`>$f
|
||||||
|
|
||||||
|
" autocompletado en modo NORMAL
|
||||||
|
nmap $* I*<esc>A*<esc>
|
||||||
|
nmap $f $a<space>{{{<esc>o}}}<esc>O<esc>zxi
|
||||||
|
nmap $<space>f v?*<cr><esc>`<a<space>{{{<esc>`>i}}}<esc>zxza
|
||||||
|
|
||||||
" saltarse del paréntesis final sin tener que salir del modo INSERT
|
" saltarse del paréntesis final sin tener que salir del modo INSERT
|
||||||
inoremap $$ <esc>la
|
inoremap $$ <esc>la
|
||||||
|
Loading…
Reference in New Issue
Block a user