Advertisement
vagnerfonseeca

cores.defs

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