www sportsline sport scores picks nfl ncaab ncaa nba covers cbs basketball macos unix path fish

macos - sportsline - Ruta completa de Fish Interactive Shell



www cbs sportsline com ncaa (4)

¿Hay alguna forma en el shell interactivo de Fish para que se muestre la ruta completa? Actualmente cuando navego a un directorio obtengo el siguiente shell.

millermj@Dodore ~/o/workspace

pero prefiero ver

millermj@Dodore ~/o-town/workspace


Aquí está mi versión de prompt_pwd que debería mostrar lo que estás buscando:

function prompt_pwd --description ''Print the current working directory, NOT shortened to fit the prompt'' if test "$PWD" != "$HOME" printf "%s" (echo $PWD|sed -e ''s|/private||'' -e "s|^$HOME|~|") else echo ''~'' end end

Esto mostrará la tilde para el directorio de inicio, como de costumbre, pero elimina el comando sed que solo extrae la primera letra de cada directorio cuando tiene unos pocos directorios de profundidad.

Para editar prompt_pwd utilizar funced . Te permitirá alterar interactivamente la función. Desde la línea de comando escriba funced prompt_pwd . Una vez que el indicador se muestre a su gusto, use funcsave prompt_pwd para hacer que el comportamiento persista en futuras sesiones.


Con el nuevo fishshell (v2.3) puedes hacer set -U fish_prompt_pwd_dir_length 0 . Y usará el camino completo. También uso dartfish para mi tema. Vea el ejemplo a continuación:


La función prompt_pwd determina la función que se mostrará. Debería poder escribir su propia versión para obtener lo que desea.


Personalmente no me gusta tocar los valores compartidos / predeterminados. El pescado tiene un gran diseño de funciones, así que aproveche eso.

Cree ~/.config/fish/functions/prompt_long_pwd.fish con el contenido:

function prompt_long_pwd --description ''Print the current working directory'' echo $PWD | sed -e "s|^$HOME|~|" -e ''s|^/private||'' end

Luego simplemente edite su ~/.config/fish/functions/fish_prompt.fish para usar prompt_long_pwd . Aquí está el mensaje personalizado que uso:

~ / .config / fish / config.fish :

set -g __fish_git_prompt_show_informative_status 1 set -g __fish_git_prompt_hide_untrackedfiles 1 set -g __fish_git_prompt_color_branch magenta bold set -g __fish_git_prompt_showupstream "informative" set -g __fish_git_prompt_char_upstream_ahead "↑" set -g __fish_git_prompt_char_upstream_behind "↓" set -g __fish_git_prompt_char_upstream_prefix "" set -g __fish_git_prompt_char_stagedstate "●" set -g __fish_git_prompt_char_dirtystate "✚" set -g __fish_git_prompt_char_untrackedfiles "…" set -g __fish_git_prompt_char_conflictedstate "✖" set -g __fish_git_prompt_char_cleanstate "✔" set -g __fish_git_prompt_color_dirtystate blue set -g __fish_git_prompt_color_stagedstate yellow set -g __fish_git_prompt_color_invalidstate red set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal set -g __fish_git_prompt_color_cleanstate green bold

~ / .config / fish / functions / fish_prompt.fish

function fish_prompt --description ''Write out the prompt'' set -l last_status $status if not set -q __fish_prompt_normal set -g __fish_prompt_normal (set_color normal) end # PWD set_color $fish_color_cwd echo -n (prompt_long_pwd) set_color normal printf ''%s '' (__fish_git_prompt) if not test $last_status -eq 0 set_color $fish_color_error end echo -n ''$ '' end