Advertisement
vagnerfonseeca

cores.defs

Jan 6th, 2023 (edited)
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 6.49 KB | Software | 0 0
  1. #!/bin/bash
  2. # Criado por:
  3. # Gabriel Marques
  4. # Sep 01 2001
  5. # Este arquivo pode ser utilizado para gerenciar as cores da variavel PS1
  6. #
  7. #
  8. # Algumas consideracoes sobre a variavel PS1:
  9. # -------------------------------------------
  10. #  Caracteres Especiais:
  11. # ---------------------
  12. #   \a - Caractere ASCII para o beep (speaker). Voce tambem pode digitar \007
  13. #   \d - Data no formato "Mon Sep 09"
  14. #   \e - Caractere ASCII 'escape'. Voce tambem pode digitar \003
  15. #   \h - Imprime o nome da maquina,  ex: darkstar
  16. #   \H - Imprime o nome completo da maquina, ex: darkstar.tux.net
  17. #   \j - Imprime o numero de processos interrompidos por ^Z no shell atual
  18. #   \l - Imprime o nome do dispositivo que representa o terminal do shell atual, ex: tty1
  19. #   \n - Nova linha
  20. #   \r - Retorno de carro (carriage return)
  21. #   \s - Imprime o nome do executavel do shell atual, ex: bash
  22. #   \t - Imprime a hora no formato 24h
  23. #   \T - Imprime a hora no formato 12h
  24. #   \@ - Imprime a hora no formato 12h com am/pm
  25. #   \u - Imprime o username do usuario logado no shell atual
  26. #   \v - Imprime a versao do shell, ex: 2.04
  27. #   \V - Imprime a versao do shell, incluindo patches
  28. #   \w - Imprime o diretorio atual no formato PWD, ex: "/home/damien/scripts"
  29. #   \W - Imprime o nome do diretorio atual, ex: "scripts"
  30. #   \! - Imprime a posicao dos comandos no history
  31. #   \# - Imprime o numero de comandos digitados
  32. #   \$ - Se voce for o root, imprime '#', caso contrario imprime '$'
  33. #   \XXX - Imprime o caractere ASCII representado pelo valor que substituir XXX, ex: 007, 003
  34. #   \\ - Imprime uma contra-barra
  35. #   \[ - Estes caracteres devem aparecer antes de caracteres que nao movam o curor
  36. #            ou nao ecoem na tela (ex: os caractere de cores), isto permite que o shell
  37. #        gerencie corretamente as quebras de linha, caso estas ultrapassem o numero de
  38. #        colunas disponiveis na tela
  39. #   \] - Estes caracteres devem aparecer depois de caracteres que nao ecoem na tela
  40. #        Estes dois ultimos grupos de caracteres sao importantes quando precisamos informar
  41. #        ao shell que determinados caracteres nao ocuparao lugar na linha
  42. #        de comando em que estiverem aparecendo.
  43. #
  44. # OBS: As sequencias de caracteres de cor aplicadas a variavel PS1 devem estar representadas
  45. # entre dois marcadores e separadas por ';'
  46. #       Marcador inicial: \e[       (contrabarra + 'e' + colchete inicial)
  47. #       Marcador final:   m     ('m')
  48. #
  49. #   Para restaurar as cores do prompt para seus valores iniciais, utiliza-se o valor 0 (zero).
  50. #   ex: export PS1="\e[0m"
  51. #
  52. # Valores para as Cores:
  53. # ----------------------
  54. #
  55. # As cores estao divididas em duas categorias de 8 cores cada uma:
  56. #   Cores do texto - valores entre 30 e 37
  57. #   Cores do fundo - valores entre 40 e 47
  58. # Cada pode conter ainda um marcador que indica se esta cor estara normal(normal do shell)
  59. # ou em negrito(o que tornara seu brilho mais intenso).
  60. # O negrito e habilitado por um caractere 1 logo apos a cor desejada
  61. #
  62. # Cores do texto:
  63. # ---------------
  64. # texto: 30-preto; 31-vermelho; 32-verde; 33-amarelo; 34-azul; 35-rosa; 36-ciano; 37-branco
  65. # fundo: 40-preto; 41-vermelho; 42-verde; 43-amarelo; 44-azul; 45-rosa; 46-ciano; 47-branco
  66. #
  67. # Se voce quiser mudar seu prompt para vermelho com fundo azul, por exemplo, voce deve utilizar:
  68. # export PS1="\e[31;44m "
  69. # E claro que isto ira gerar um prompt muito simples e pouco informativo ;-)
  70. #
  71. # DETALHE: O texto imediatamente apos o prompt sempre tera a ultima cor especificada na variavel
  72. # PS1 !!! Para corrigir este problema, precisamos forcar o shell a restaurar o esquema de cores
  73. # padrao sempre apos o ultimo caractere colorido da variavel PS1.
  74. # Assim, o exemplo anterior ficaria:
  75. #      
  76. #   export PS1="\e[31;44m \e[0m"
  77. #
  78. # Se voce achou que o vermelho ficou um pouco sem graca frente ao fundo azul, voce pode habilitar
  79. # o negrito para o vermelho. Assim, teriamos:
  80. #
  81. #   export PS1="\e[31;1;44m \e[0m"
  82. #  
  83. # E completamente aceitavel que esta linha aumente conforme o numero de cores escolhidas.
  84. # Para evitar problemas com tamanhos de tela em colunas e quebras de linha inesperadas,
  85. # precisamos utilizar os caracteres especiais que forcam o shell a ignorar estes caracteres para
  86. # a linha de comando. Assim, a linha ficaria:
  87. #
  88. #   export PS1="\[\e[31;1;44m\] \[\e[0m\]"
  89. #
  90. # Veja agora um exemplo de aplicacao dos caracteres especiais da variavel PS1
  91. # (execute esta linha e veja o que acontece ! )
  92. #
  93. # export PS1="\[\e[33;1m\]\u\[\e[34;1m\]@\[\e[31;1m\]\h\[\e[32;1m\]$ \[\e[0m\]"
  94. #
  95. # Definicao das cores para o texto normal:
  96. # ----------------------------------------
  97. #
  98. TPRETO='\[\e[30m\]'
  99. TVERMELHO='\[\e[31m\]'
  100. TVERDE='\[\e[32m\]'
  101. TAMARELO='\[\e[33m\]'
  102. TAZUL='\[\e[34m\]'
  103. TROSA='\[\e[35m\]'
  104. TCIANO='\[\e[36m\]'
  105. TBRANCO='\[\e[37m\]'
  106.  
  107. # Definicao das cores para o fundo normal:
  108. # ----------------------------------------
  109. #
  110. FPRETO='\[\e[40m\]'
  111. FVERMELHO='\[\e[41m\]'
  112. FVERDE='\[\e[42m\]'
  113. FAMARELO='\[\e[43m\]'
  114. FAZUL='\[\e[44m\]'
  115. FROSA='\[\e[45m\]'
  116. FCIANO='\[\e[46m\]'
  117. FBRANCO='\[\e[47m\]'
  118.  
  119. #
  120. # Definicao das cores para o texto negrito:
  121. # -----------------------------------------
  122. #
  123. TPRETOB='\[\e[30;1m\]'
  124. TVERMELHOB='\[\e[31;1m\]'
  125. TVERDEB='\[\e[32;1m\]'
  126. TAMARELOB='\[\e[33;1m\]'
  127. TAZULB='\[\e[34;1m\]'
  128. TROSAB='\[\e[35;1m\]'
  129. TCIANOB='\[\e[36;1m\]'
  130. TBRANCOB='\[\e[37;1m\]'
  131.  
  132. # Definicao das cores para o fundo negrito:
  133. # -----------------------------------------
  134. #
  135. FPRETOB='\[\e[40;1m\]'
  136. FVERMELHOB='\[\e[41;1m\]'
  137. FVERDEB='\[\e[42;1m\]'
  138. FAMARELOB='\[\e[43;1m\]'
  139. FAZULB='\[\e[44;1m\]'
  140. FROSAB='\[\e[45;1m\]'
  141. FCIANOB='\[\e[46;1m\]'
  142. FBRANCOB='\[\e[47;1m\]'
  143.  
  144. # Restaurando as cores para o padrao:
  145. # ---------------------------------
  146. #
  147. RESET='\[\e[0m\]'
  148.  
  149. # Agora voce podera utilizar os NOMES das cores na sua variavel PS1. Basta incluir uma
  150. # chamada para este arquivo no fim do seu .bash_profile. Voce tambem pode, por exemplo,
  151. # copiar este arquivo para o diretorio /etc e importa-lo de la.
  152. #
  153. # Exemplo: no arquivo .bash_profile adicione/edite as seguintes linhas:
  154. #  
  155. # . /etc/cores.defs
  156. # PS1="${TAMARELOB}[${TVERDEB}\u${TAMARELOB}@${TAZULB}\h ${TBRANCOB}\W${TAMARELOB}]${TVERMELHOB}\\$ $RESET"
  157. #
  158. # OBS: Sempre que voce finalizar sua configuracao de cores (texto e/ou fundo), lembre-se de
  159. # sempre restaurar ($RESET) as cores apos o ultimo caractere colorizado pelo seu prompt !!!
  160. # Caso contrario voce podera ter problemas do tipo:
  161. #   Texto de linhas de comando na mesma cor do ultimo caractere do prompt
  162. #   Cores de fundo se extendendo por todas as colunas de uma linha
  163. #
  164. # Divirta-se e lembre-se: O Shell é o limite!
  165.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement