]> git.pld-linux.org Git - projects/setup.git/commitdiff
Added shrc.c snippets to enable 256 colors terminals (based on fedora)
authorJan Rękorajski <baggins@pld-linux.org>
Sun, 9 Feb 2014 19:11:10 +0000 (20:11 +0100)
committerJan Rękorajski <baggins@pld-linux.org>
Sun, 9 Feb 2014 19:12:11 +0000 (20:12 +0100)
Makefile
etc/.cvsignore [deleted file]
etc/shrc.d/256term.csh [new file with mode: 0644]
etc/shrc.d/256term.sh [new file with mode: 0644]

index 01ee6442b1984f2bac68de9bd53a52b9b44357b7..0af8ae58f02e26fd07c960b09a69bf91c7c55917 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,6 +22,7 @@ ETC_FILES     = filesystems fstab group host.conf hosts motd \
 PROFILE_FILES  = tmp-dir.csh tmp-dir.sh
 ENV_FILES      = EDITOR HISTFILESIZE HOME_ETC MAILCHECK MAILPATH \
            NNTPSERVER ORGANIZATION TMOUT VISUAL
+SHRC_FILES     = 256term.csh 256term.sh
 
 SOURCES                = joinpasswd.c update-fstab.c postshell.c delpasswd.c
 CLEAN          = $(BIN_FILES) *.o core *.tar.gz *.tar.bz2 *~ *.swp
@@ -46,12 +47,14 @@ install:
        $(INSTALL) -d $(DESTDIR)/$(SBINDIR)
        $(INSTALL) -d $(DESTDIR)/$(ETCDIR)
        $(INSTALL) -d $(DESTDIR)/$(PROFILEDIR)
-       $(INSTALL) -d  $(DESTDIR)/$(ENVDIR)
+       $(INSTALL) -d $(DESTDIR)/$(ENVDIR)
+       $(INSTALL) -d $(DESTDIR)/$(SHRCDIR)
        $(INSTALL) $(BIN_FILES) $(DESTDIR)/$(SBINDIR)
        cd etc; $(INSTALL) $(ETC_FILES) $(DESTDIR)/$(ETCDIR)
        ln -sf /proc/self/mounts $(DESTDIR)/$(ETCDIR)/mtab
        cd etc/profile.d; $(INSTALL) $(PROFILE_FILES) $(DESTDIR)/$(PROFILEDIR)
        cd etc/env.d; $(INSTALL) $(ENV_FILES) $(DESTDIR)/$(ENVDIR)
+       cd etc/shrc.d; $(INSTALL) $(SHRC_FILES) $(DESTDIR)/$(SHRCDIR)
 
 dist: changelog clean
        $(INSTALL) -d setup-$(VERSION)/etc/profile.d
diff --git a/etc/.cvsignore b/etc/.cvsignore
deleted file mode 100644 (file)
index 5561083..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-*~
-*.org
diff --git a/etc/shrc.d/256term.csh b/etc/shrc.d/256term.csh
new file mode 100644 (file)
index 0000000..a783f80
--- /dev/null
@@ -0,0 +1,28 @@
+# Enable 256 color capabilities for appropriate terminals
+
+# Set this variable in your local shell config if you want remote
+# xterms connecting to this system, to be sent 256 colors.
+# This can be done in /etc/csh.cshrc, or in an earlier profile.d script.
+#   set SEND_256_COLORS_TO_REMOTE=1
+#
+# To avoid enabling 256 color terminals set this variable in your local shell
+# config. This must be set before reading global initialization such as
+# /etc/csh.cshrc.
+#   set NO_256_COLORS=1
+
+# Terminals with any of the following set, support 256 colors (and are local)
+set local256="$?COLORTERM$?XTERM_VERSION$?ROXTERM_ID$?KONSOLE_DBUS_SESSION"
+
+if ($?TERM && (! $?NO_256_COLORS) && ($local256 || $?SEND_256_COLORS_TO_REMOTE)) then
+       switch ($TERM)
+           case 'xterm':
+           case 'screen':
+           case 'Eterm':
+               setenv TERM "$TERM-256color"
+       endsw
+       if ($?TERMCAP && ($TERM == "screen-256color")) then
+               setenv TERMCAP $TERMCAP:s/Co#8/Co#256/
+       endif
+endif
+
+unset local256
diff --git a/etc/shrc.d/256term.sh b/etc/shrc.d/256term.sh
new file mode 100644 (file)
index 0000000..02bccfa
--- /dev/null
@@ -0,0 +1,32 @@
+# Enable 256 color capabilities for appropriate terminals
+
+# Set this variable in your local shell config (such as ~/.bashrc)
+# if you want remote xterms connecting to this system, to be sent 256 colors.
+# This must be set before reading global initialization such as /etc/bashrc.
+#   SEND_256_COLORS_TO_REMOTE=1
+#
+# To avoid enabling 256 color terminals set this variable in your local shell
+# config. This must be set before reading global initialization such as
+# /etc/bashrc.
+#   NO_256_COLORS=1
+
+# Terminals with any of the following set, support 256 colors (and are local)
+local256="$COLORTERM$XTERM_VERSION$ROXTERM_ID$KONSOLE_DBUS_SESSION"
+
+if [ -z "$NO_256_COLORS" ] && [ -n "$local256" -o -n "$SEND_256_COLORS_TO_REMOTE" ]; then
+       case "$TERM" in
+         xterm|screen|Eterm)
+                 TERM=$TERM-256color
+                 ;;
+       esac
+       export TERM
+
+       if [ -n "$TERMCAP" ] && [ "$TERM" = "screen-256color" ]; then
+               if [[ "$TERMCAP" == *"Co#8"* ]]; then
+                       TERMCAP="${TERMCAP%%Co#8*}Co#256${TERMCAP#*Co#8}"
+                       export TERMCAP
+               fi
+       fi
+fi
+
+unset local256
This page took 0.090285 seconds and 4 git commands to generate.