2 votos

Configuración de la pestaña de Terminal nombres en OS X y el uso de vim

Regularmente me ssh en Linux cluster de un OS X (El Capitan) de la Terminal, a veces con Terminales múltiples pestañas. Yo uso bash y vim.

Me gustaría hacer lo siguiente:

  • mientras ssh d, que establece la Terminal de título de la ficha para el directorio de trabajo actual usando PROMPT_COMMAND='printf "\e]1;"`basename $PWD`"\a"'
  • mientras que el uso de vim, configurar la pestaña de Terminal el título de "vim - nombre de archivo"

Aquí están mis problemas:

  • Si hago let &titlestring = "vim - " . expand("%:t") y set title .vimrc, los cambios de la Terminal de la ventana de título, no el título de la ficha. Si no me ajustar por separado el título de la ficha (parámetro 1), el título de la ficha refleja el título de la ventana (parámetro 2), pero tan pronto como me puse el título de la ficha, se "separa" del título de la ventana.
  • Si puedo ejecutar un comando externo en .vimrc con :!, me sale un "Pulse ENTER" cuadro de diálogo que se molesto.
  • Si utilizo :silent ! en .vimrc, mi indicador de la Terminal termina en la parte inferior de la pantalla después de salir de vim. Yo realmente no quiero muck alrededor de salvar el símbolo de posición y reiniciarlo cada vez que quiero usar vim.
  • Si defino en mi .bashrc la siguiente función:

    function vim
    {
        printf "\e]1;"`basename "$1"`"\a"
        vim "$1"
    }
    

    entonces mi terminal se bloquea tras llamar a vim desde la línea de comandos. Llamando a la función en vvim en lugar de eso funciona, pero no quiero escribir vvim para siempre. Quiero alias vim.

Así que me parece atascado. Cualquier consejo sería muy apreciada. Gracias de antemano!

2voto

Riju Dasgupta Puntos 36

Bueno, he solucionado mi problema. No puedo programación 101.

Mediante la definición de vim como una función y, a continuación, llamar a vim, he configurado un infinito bucle recursivo. No es de extrañar que mi terminal se estrelló. Necesito llamar a la "real" vim, el ejecutable real. Esto hizo que el truco:

function vim
{
    printf "\e]1;"`basename "$1"`"\a"
    /usr/bin/vim "$1"
}

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X