modifs de l'installation automatique et ajouts configs files autofill cpp
This commit is contained in:
62
.screenrc
62
.screenrc
@@ -1,62 +0,0 @@
|
||||
#hugogogo# following lines are from hugogogo
|
||||
|
||||
|
||||
|
||||
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
# #
|
||||
# ADDS BY HUGOGOGO #
|
||||
# #
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
|
||||
startup_message off
|
||||
|
||||
chdir $HOME/
|
||||
|
||||
#pour augmenter le scrollback de l'ecran
|
||||
defscrollback 10000
|
||||
#pour afficher une ligne avec des infos
|
||||
hardstatus on
|
||||
#pour qu'elle s'affiche en bas
|
||||
hardstatus alwayslastline
|
||||
#tout ce qui n'est pas precede de % s'affiche tel quel
|
||||
#tout ce qui est entre {} formate le texte
|
||||
# = format texte inchange
|
||||
# KW couleur arriere bright black, couleur texte bright white
|
||||
# %n numero de windows
|
||||
# %t title de windows
|
||||
# %= remplis les espaces vides
|
||||
# %c current time
|
||||
# %d day
|
||||
# %m month
|
||||
# %y year
|
||||
hardstatus string "%{= KW}%n %t %=%c %D %d-%m-%y"
|
||||
#hide hardstatus: ctrl-a f
|
||||
bind f eval "hardstatus ignore"
|
||||
#show hardstatus: ctrl-a f
|
||||
bind F eval "hardstatus alwayslastline"
|
||||
|
||||
#screen open a new windows
|
||||
# -t assigne un titre
|
||||
# vim appel vim avec l'option -n pour eviter les .swp
|
||||
screen -t shell vim -n $HOME/config/shell.txt
|
||||
screen -t git vim -n $HOME/config/git.txt
|
||||
screen -t screen vim -n $HOME/config/screen.txt
|
||||
screen -t node vim -n $HOME/config/node.txt
|
||||
screen -t react vim -n $HOME/config/react.txt
|
||||
screen -t php vim -n $HOME/config/php.txt
|
||||
screen -t sites vim -n $HOME/config/sites.txt
|
||||
screen -t vim vim -n $HOME/config/vim.txt
|
||||
|
||||
screen
|
||||
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
# #
|
||||
# END OF HUGOGOGO'S ADDS #
|
||||
# #
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
|
||||
|
||||
|
||||
|
||||
#hugogogo#
|
||||
77
.zshrc
77
.zshrc
@@ -1,77 +0,0 @@
|
||||
#hugogogo# following lines are from hugogogo
|
||||
|
||||
|
||||
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
# #
|
||||
# #
|
||||
# ADDS BY HUGOGOGO #
|
||||
# if you modify this section, please copy paste the #
|
||||
# modification into the .zshrc file in $HOME/config #
|
||||
# #
|
||||
# #
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
|
||||
# ----------------------------------------------------
|
||||
# send the path of the working directory and action to
|
||||
# screen as a title
|
||||
# ----------------------------------------------------
|
||||
#
|
||||
# the preexec hook is run after "enter" is press and
|
||||
# just before the command is run
|
||||
#
|
||||
# the precmd hook is executed just before each prompt
|
||||
#
|
||||
# a command confirmed on the prompt is then passed to
|
||||
# preexec in three arguments, the first beeing the
|
||||
# string typed (so "$1" is what was typed in prompt)
|
||||
#
|
||||
# variables are declared local to exist only in this hook
|
||||
# there mustn't have space around the "=" to assign a value
|
||||
#
|
||||
# ps is a UNIX command that show informations about processes
|
||||
# "-o stat" show only the status (T=sleeping and R=running)
|
||||
# "-o cmd" show the command ("vim index.html")
|
||||
# "h" hide the header
|
||||
# "T" show all precesses (included the sleeping ones)
|
||||
#
|
||||
# "\ekTITLE\e\\" is a sequence recognised by GNU screen
|
||||
# to set the title (see "info screen -n 'dynamyc titles'")
|
||||
#
|
||||
# "%~" is expanded into the current directory path
|
||||
# "%1~" is expanded into the last argument of the path
|
||||
# "-P" is an option of print that "turns on prompt expansions"
|
||||
# DOCUMENTATION:
|
||||
# http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html
|
||||
#
|
||||
preexec () {
|
||||
local isSleep=$(ps -o stat hT | grep T)
|
||||
local action=$1
|
||||
if [[ $isSleep == 'T' ]]; then
|
||||
action=$(ps -o stat -o cmd hT | sed -n 's/^T[ ]*//p')
|
||||
fi
|
||||
if [[ $TERM == screen* ]]; then
|
||||
print -Pn '\ek%2~/ $action\e\\'
|
||||
fi
|
||||
}
|
||||
precmd () {
|
||||
local isSleep=$(ps -o stat hT | grep T)
|
||||
local sleep=""
|
||||
local action=$(history | tail -1 | sed 's#[0-9 ]*##')
|
||||
if [[ $isSleep == 'T' ]]; then
|
||||
sleep="*$(ps -o stat -o cmd hT | sed -n 's/^T[ ]*//p')*"
|
||||
fi
|
||||
if [[ $TERM == screen* ]]; then
|
||||
print -Pn '\ek%2~/ $action $sleep\e\\'
|
||||
fi
|
||||
}
|
||||
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
# #
|
||||
# END OF HUGOGOGO'S ADDS #
|
||||
# #
|
||||
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||||
|
||||
|
||||
|
||||
#hugogogo#
|
||||
32
README.md
Normal file
32
README.md
Normal file
@@ -0,0 +1,32 @@
|
||||
0. this config directory contain config files for severall linux configuration
|
||||
|
||||
- it will place them as a symlink where they need to be (eg. `.vimrc` into `$HOME/`)
|
||||
- then any modification to them will be a modification to the file in this folder
|
||||
- so you can save them all by just saving this folder
|
||||
|
||||
1. you should put this folder `huhuhu_config` into the $HOME directory
|
||||
|
||||
this is for .screenrc configuration to work
|
||||
|
||||
2. then run bash install.sh
|
||||
|
||||
it will check if a list of config files already exists :
|
||||
|
||||
- .vimrc
|
||||
- .screenrc
|
||||
- .zshrc already
|
||||
|
||||
and for each of them :
|
||||
|
||||
- if it already exist, it will copy the existing file or folder into <file>.bak[nb]. ([nb] is an number, starting to 0)
|
||||
- then it will create a sym link in $HOME to those in this config folder
|
||||
|
||||
3. to uninstall run bash uninstall.sh
|
||||
|
||||
- it check if the current config file exist, is a symlink, and contain the key phrase `#hugogogo#`
|
||||
- if so, it will delete it, and replace it by the last config backup file found
|
||||
|
||||
4. if you want to add a config file :
|
||||
|
||||
- put it into `config_files`
|
||||
- and add it both into `install.sh` and `uninstall.sh`
|
||||
20
asides/color.sh
Normal file
20
asides/color.sh
Normal file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
# COLORS
|
||||
RED="\e[0;31m"
|
||||
GREEN="\e[0;32m"
|
||||
YELLOW="\e[0;33m"
|
||||
BLUE="\e[0;34m"
|
||||
MAGENTA="\e[0;35m"
|
||||
CYAN="\e[0;36m"
|
||||
WHITE="\e[0;37m"
|
||||
|
||||
B_RED="\e[1;31m"
|
||||
B_GREEN="\e[1;32m"
|
||||
B_YELLOW="\e[1;33m"
|
||||
B_BLUE="\e[1;34m"
|
||||
B_MAGENTA="\e[1;35m"
|
||||
B_CYAN="\e[1;36m"
|
||||
B_WHITE="\e[1;37m"
|
||||
|
||||
ENDCO="\e[0m"
|
||||
47
config_files/.screenrc
Normal file
47
config_files/.screenrc
Normal file
@@ -0,0 +1,47 @@
|
||||
#hugogogo#
|
||||
|
||||
startup_message off
|
||||
|
||||
chdir $HOME/
|
||||
|
||||
#pour augmenter le scrollback de l'ecran
|
||||
defscrollback 10000
|
||||
|
||||
#pour afficher une ligne avec des infos
|
||||
hardstatus on
|
||||
|
||||
#pour qu'elle s'affiche en bas
|
||||
hardstatus alwayslastline
|
||||
|
||||
#tout ce qui n'est pas precede de % s'affiche tel quel
|
||||
#tout ce qui est entre {} formate le texte
|
||||
# = format texte inchange
|
||||
# KW couleur arriere bright black, couleur texte bright white
|
||||
# %n numero de windows
|
||||
# %t title de windows
|
||||
# %= remplis les espaces vides
|
||||
# %c current time
|
||||
# %d day
|
||||
# %m month
|
||||
# %y year
|
||||
hardstatus string "%{= KW}%n %t %=%c %D %d-%m-%y"
|
||||
#hide hardstatus: ctrl-a f
|
||||
bind f eval "hardstatus ignore"
|
||||
#show hardstatus: ctrl-a f
|
||||
bind F eval "hardstatus alwayslastline"
|
||||
|
||||
#screen open a new windows
|
||||
# -t assigne un titre
|
||||
# vim appel vim avec l'option -n pour eviter les .swp
|
||||
screen -t shell vim -n $HOME/huhuhu_config/tutos/shell.txt
|
||||
screen -t git vim -n $HOME/huhuhu_config/tutos/git.txt
|
||||
screen -t screen vim -n $HOME/huhuhu_config/tutos/screen.txt
|
||||
screen -t node vim -n $HOME/huhuhu_config/tutos/node.txt
|
||||
screen -t react vim -n $HOME/huhuhu_config/tutos/react.txt
|
||||
screen -t php vim -n $HOME/huhuhu_config/tutos/php.txt
|
||||
screen -t sites vim -n $HOME/huhuhu_config/tutos/sites.txt
|
||||
screen -t vim vim -n $HOME/huhuhu_config/tutos/vim.txt
|
||||
|
||||
screen
|
||||
|
||||
#hugogogo#
|
||||
@@ -1,63 +1,58 @@
|
||||
"hugogogo" following lines are from hugogogo
|
||||
|
||||
|
||||
|
||||
|
||||
" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
|
||||
" "
|
||||
" ADDS BY HUGOGOGO "
|
||||
" "
|
||||
" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
|
||||
"#hugogogo#
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" settings de base
|
||||
" base settings
|
||||
"---------------------------------------------------------------
|
||||
"" Show (partial) command in status line.
|
||||
|
||||
" Show (partial) command in status line.
|
||||
"set showcmd
|
||||
|
||||
"" Show matching brackets.
|
||||
" Show matching brackets.
|
||||
set showmatch
|
||||
|
||||
"" Do case insensitive matching
|
||||
" Do case insensitive matching
|
||||
set ignorecase
|
||||
|
||||
"" Do smart case matching
|
||||
" Do smart case matching
|
||||
set smartcase
|
||||
|
||||
"" Incremental search
|
||||
" Incremental search
|
||||
"set incsearch
|
||||
|
||||
"" Automatically save before commands like :next and :make
|
||||
" Automatically save before commands like :next and :make
|
||||
"set autowrite
|
||||
|
||||
"" Hide buffers when they are abandoned
|
||||
" Hide buffers when they are abandoned
|
||||
set hidden
|
||||
|
||||
"" Enable mouse usage (all modes)
|
||||
"set mouse=a
|
||||
" Enable mouse usage (all modes)
|
||||
set mouse=a
|
||||
|
||||
"" turns on syntax hilighting
|
||||
" turns on syntax hilighting
|
||||
syntax on
|
||||
|
||||
"" use coloration 'torte'
|
||||
"" and specify no coloration in the background
|
||||
" use coloration 'torte'
|
||||
" and specify no coloration in the background
|
||||
colo elflord
|
||||
highlight Normal ctermbg=NONE
|
||||
highlight nonText ctermbg=NONE
|
||||
|
||||
""regle une tabulation egale a quatre espaces
|
||||
" show existing tab with 4 spaces width
|
||||
set tabstop=4
|
||||
|
||||
"" indent chaque nouvelle ligne comme la precedente
|
||||
" when indenting with '>', use 4 spaces width
|
||||
set shiftwidth=4
|
||||
|
||||
" indent new line like the previous one
|
||||
set autoindent
|
||||
|
||||
"" ajoute les numeros de ligne
|
||||
" show line number
|
||||
set number
|
||||
|
||||
"" whitespace characters are made visible
|
||||
" whitespace characters are made visible
|
||||
"set list
|
||||
|
||||
"" le texte passe a la ligne automatiquement
|
||||
" don't allow wrap
|
||||
set nowrap
|
||||
|
||||
|
||||
@@ -65,24 +60,40 @@ set nowrap
|
||||
"---------------------------------------------------------------
|
||||
" pour pouvoir utiliser la norminette partout
|
||||
"---------------------------------------------------------------
|
||||
|
||||
let g:norminette_exec = '~/.local/bin/norminette'
|
||||
|
||||
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" pour deplacer des lignes avec Ctrl + fleches Up et Down
|
||||
" to move lines with Ctrl + arrow
|
||||
"---------------------------------------------------------------
|
||||
nnoremap <C-Down> :m+<CR>==
|
||||
nnoremap <C-Up> :m-2<CR>==
|
||||
inoremap <C-Down> <Esc>:m+<CR>==gi
|
||||
inoremap <C-Up> <Esc>:m-2<CR>==gi
|
||||
vnoremap <C-Down> :m'>+<CR>gv=gv
|
||||
vnoremap <C-Up> :m-2<CR>gv=gv
|
||||
|
||||
nnoremap <C-Down> :m+<CR>
|
||||
nnoremap <C-Up> :m-2<CR>
|
||||
nnoremap <C-Right> >><CR>k
|
||||
nnoremap <C-Left> <<<CR>k
|
||||
|
||||
inoremap <C-Down> <Esc>:m+<CR>gi
|
||||
inoremap <C-Up> <Esc>:m-2<CR>gi
|
||||
inoremap <C-Right> <Esc>>><CR>gi
|
||||
inoremap <C-Left> <Esc><<<CR>gi
|
||||
|
||||
vnoremap <C-Down> :m'>+<CR>gv
|
||||
vnoremap <C-Up> :m-2<CR>gv
|
||||
vnoremap <C-Right> ><CR>gv
|
||||
vnoremap <C-Left> <<CR>gv
|
||||
|
||||
" move selection inside lines with Ctrl-Shift + left/right
|
||||
vnoremap <C-S-Left> <Esc>`<<Left>i_<Esc>mz"_xgvx`zPgv<Left>o<Left>o
|
||||
vnoremap <C-S-Right> <Esc>`><Right>gvxpgv<Right>o<Right>o
|
||||
|
||||
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" pour gerer les swap files
|
||||
" put swap files in a special directory
|
||||
"---------------------------------------------------------------
|
||||
|
||||
" directory indique a vim où mettre les swap files a la place du
|
||||
" dossier courrant, le double slash demande a vim de donner au
|
||||
" swap file un nom avec son chemin d'acces pour eviter que deux
|
||||
@@ -91,9 +102,47 @@ vnoremap <C-Up> :m-2<CR>gv=gv
|
||||
set directory=~/.vim/swapfiles//
|
||||
|
||||
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" to autofill new files
|
||||
"---------------------------------------------------------------
|
||||
|
||||
" to autofill a new Class.hpp file
|
||||
function! HPPFile()
|
||||
silent! 0r $HOME/.vim/templates/skeleton.hpp
|
||||
%s/FileName/\=expand("%:t:r")/g
|
||||
%s/FILENAME/\=toupper(expand("%:t:r"))/g
|
||||
endfunction
|
||||
" to autofill a new Class.cpp file
|
||||
function! CPPFile()
|
||||
silent! 0r $HOME/.vim/templates/skeleton.cpp
|
||||
%s/FileName/\=expand("%:t:r")/g
|
||||
endfunction
|
||||
" to autofill a new main.cpp file
|
||||
function! MAINCPPFile()
|
||||
silent! 0r $HOME/.vim/templates/skeleton_main.cpp
|
||||
endfunction
|
||||
" to autofill a new Makefile file
|
||||
function! MAKEFile()
|
||||
silent! 0r $HOME/.vim/templates/skeleton_makefile
|
||||
endfunction
|
||||
" to autofill a new color.h file
|
||||
function! COLORFile()
|
||||
silent! 0r $HOME/.vim/templates/skeleton_color.h
|
||||
endfunction
|
||||
|
||||
" autofill calls
|
||||
autocmd BufNewFile *.hpp call HPPFile()
|
||||
autocmd BufNewFile *.cpp if @% == 'main.cpp' | call MAINCPPFile() | else | call CPPFile()
|
||||
autocmd BufNewFile Makefile call MAKEFile()
|
||||
autocmd BufNewFile color.h call COLORFile()
|
||||
|
||||
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" pour mettre en gras dans des fichiers txt
|
||||
"---------------------------------------------------------------
|
||||
|
||||
" BufEnter s'active quand un buffer est ouvert ou modifie
|
||||
" setf = setfiletype defini un filetype text SI n'existe pas
|
||||
" (!= 'set filetype=type') defini un new ft meme si existe
|
||||
@@ -114,12 +163,14 @@ au filetype text syn match AsteriskBold "\*\*.*\*\*" contains=Asterisks
|
||||
"---------------------------------------------------------------
|
||||
" remplis les elements de base d'un fichier html
|
||||
"---------------------------------------------------------------
|
||||
|
||||
command! Html 0s/^/<!DOCTYPE html>\r<html lang="en" dir="ltr">\r\t<head>\r\t\t<meta charset="UTF-8">\r\t\t<meta name="viewport" content="width=device-width, initial-scale=1.0">\r\t\t<title><\/title>\r\t\t<meta name="description" content="description du site web">\r\t\t<meta name="keywords" content="truc, bidule, chouette">\r\t\t<link href=".\/style.css" type="text\/css" rel="stylesheet">\r\t\t<script type="text\/javascript" src="script.js" defer><\/script>\r\t<\/head>\r\t<body>\r\r\t<\/body>\r<\/html>
|
||||
|
||||
|
||||
"---------------------------------------------------------------
|
||||
" pour transformer un text html et/ou css en version affichable
|
||||
"---------------------------------------------------------------
|
||||
|
||||
"remplace < et > par < et >
|
||||
command! Compare %s/</\</g <bar> %s/>/\>/g
|
||||
"remplir les lignes vides avec des <br>
|
||||
@@ -169,14 +220,3 @@ command! Start 0s/^/<!DOCTYPE html>\r<html>\r<head>\r<style>\r#cadre {\r positio
|
||||
"ajoute toutes les lignes de la fin
|
||||
command! End $s/$/\r\r<\/div>\r<\/div>\r<\/body>\r<\/html>
|
||||
|
||||
|
||||
" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
|
||||
" "
|
||||
" END OF HUGOGOGO'S ADDS "
|
||||
" "
|
||||
" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
|
||||
|
||||
|
||||
|
||||
|
||||
"hugogogo"
|
||||
77
config_files/.zshrc
Normal file
77
config_files/.zshrc
Normal file
@@ -0,0 +1,77 @@
|
||||
#hugogogo#
|
||||
|
||||
# ----------------------------------------------------
|
||||
# aliases
|
||||
# ----------------------------------------------------
|
||||
|
||||
alias open="xdg-open"
|
||||
|
||||
|
||||
|
||||
|
||||
# ----------------------------------------------------
|
||||
# configs from old file
|
||||
# ----------------------------------------------------
|
||||
|
||||
#export ZSH="/mnt/nfs/homes/hulamy/.oh-my-zsh"
|
||||
#plugins=(git)
|
||||
#source $ZSH/oh-my-zsh.sh
|
||||
#ZSH_THEME="robbyrussell"
|
||||
|
||||
|
||||
|
||||
|
||||
# ----------------------------------------------------
|
||||
# send the path of the working directory and action to
|
||||
# screen as a title
|
||||
# ----------------------------------------------------
|
||||
|
||||
# the preexec hook is run after "enter" is press and
|
||||
# just before the command is run
|
||||
#
|
||||
# the precmd hook is executed just before each prompt
|
||||
#
|
||||
# a command confirmed on the prompt is then passed to
|
||||
# preexec in three arguments, the first beeing the
|
||||
# string typed (so "$1" is what was typed in prompt)
|
||||
#
|
||||
# variables are declared local to exist only in this hook
|
||||
# there mustn't have space around the "=" to assign a value
|
||||
#
|
||||
# ps is a UNIX command that show informations about processes
|
||||
# "-o stat" show only the status (T=sleeping and R=running)
|
||||
# "-o cmd" show the command ("vim index.html")
|
||||
# "h" hide the header
|
||||
# "T" show all precesses (included the sleeping ones)
|
||||
#
|
||||
# "\ekTITLE\e\\" is a sequence recognised by GNU screen
|
||||
# to set the title (see "info screen -n 'dynamyc titles'")
|
||||
#
|
||||
# "%~" is expanded into the current directory path
|
||||
# "%1~" is expanded into the last argument of the path
|
||||
# "-P" is an option of print that "turns on prompt expansions"
|
||||
# DOCUMENTATION:
|
||||
# http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html
|
||||
|
||||
# preexec () {
|
||||
# local isSleep=$(ps -o stat hT | grep T)
|
||||
# local action=$1
|
||||
# if [[ $isSleep == 'T' ]]; then
|
||||
# action=$(ps -o stat -o cmd hT | sed -n 's/^T[ ]*//p')
|
||||
# fi
|
||||
# if [[ $TERM == screen* ]]; then
|
||||
# print -Pn '\ek%2~/ $action\e\\'
|
||||
# fi
|
||||
# }
|
||||
# precmd () {
|
||||
# local isSleep=$(ps -o stat hT | grep T)
|
||||
# local sleep=""
|
||||
# local action=$(history | tail -1 | sed 's#[0-9 ]*##')
|
||||
# if [[ $isSleep == 'T' ]]; then
|
||||
# sleep="*$(ps -o stat -o cmd hT | sed -n 's/^T[ ]*//p')*"
|
||||
# fi
|
||||
# if [[ $TERM == screen* ]]; then
|
||||
# print -Pn '\ek%2~/ $action $sleep\e\\'
|
||||
# fi
|
||||
# }
|
||||
|
||||
71
config_files/skeleton.cpp
Normal file
71
config_files/skeleton.cpp
Normal file
@@ -0,0 +1,71 @@
|
||||
#include "FileName.hpp"
|
||||
|
||||
#define COPLIEN_COLOR B_CYAN
|
||||
|
||||
/*********************************************
|
||||
* CONSTRUCTORS
|
||||
*********************************************/
|
||||
|
||||
FileName::FileName( std::string foo = FileName::_bar ) : _foo(foo) {
|
||||
// std::cout << COPLIEN_COLOR "FileName constructor" RESET "\n";
|
||||
return;
|
||||
}
|
||||
|
||||
FileName::FileName( FileName const & src ) {
|
||||
// std::cout << COPLIEN_COLOR "FileName copy constructor" RESET "\n";
|
||||
*this = src;
|
||||
return;
|
||||
}
|
||||
|
||||
/*********************************************
|
||||
* DESTRUCTORS
|
||||
*********************************************/
|
||||
|
||||
FileName::~FileName() {
|
||||
// std::cout << COPLIEN_COLOR "FileName destructor" RESET "\n";
|
||||
return;
|
||||
}
|
||||
|
||||
/*********************************************
|
||||
* OPERATORS
|
||||
*********************************************/
|
||||
|
||||
FileName & FileName::operator=( FileName const & rhs ) {
|
||||
// Base::operator=(rhs);
|
||||
if ( this != &rhs )
|
||||
{
|
||||
// _foo = rhs.getFoo();
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
//std::ostream & operator<<(std::ostream & o, FileName const & rhs)
|
||||
//{
|
||||
// o << rhs.getFoo();
|
||||
// return (o);
|
||||
//}
|
||||
|
||||
/*********************************************
|
||||
* ACCESSORS
|
||||
*********************************************/
|
||||
|
||||
//std::string FileName::getFoo() const {return _foo;}
|
||||
|
||||
/*********************************************
|
||||
* PUBLIC MEMBER FUNCTIONS
|
||||
*********************************************/
|
||||
|
||||
//void FileName::function(const std::string & foo) {}
|
||||
|
||||
/*********************************************
|
||||
* NESTED CLASS
|
||||
*********************************************/
|
||||
|
||||
//void FileName::Class::function() {}
|
||||
|
||||
/*********************************************
|
||||
* STATICS
|
||||
*********************************************/
|
||||
|
||||
//std::string const FileName::_bar = "bar";
|
||||
|
||||
31
config_files/skeleton.hpp
Normal file
31
config_files/skeleton.hpp
Normal file
@@ -0,0 +1,31 @@
|
||||
#ifndef FILENAME_HPP
|
||||
# define FILENAME_HPP
|
||||
|
||||
# include "color.h"
|
||||
# include <iostream>
|
||||
# include <string>
|
||||
|
||||
class FileName {
|
||||
|
||||
public:
|
||||
|
||||
FileName();
|
||||
FileName( FileName const & src );
|
||||
~FileName();
|
||||
FileName & operator=( FileName const & rhs );
|
||||
|
||||
// std::string getFoo() const;
|
||||
|
||||
protected:
|
||||
|
||||
// std::string const _foo;
|
||||
|
||||
private:
|
||||
|
||||
// static std::string const FileName::_bar;
|
||||
|
||||
};
|
||||
|
||||
//std::ostream & operator<<(std::ostream & o, FileName const & rhs);
|
||||
|
||||
#endif
|
||||
24
config_files/skeleton_color.h
Normal file
24
config_files/skeleton_color.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#ifndef COLOR_H
|
||||
# define COLOR_H
|
||||
|
||||
# define GRAY "\e[0;30m"
|
||||
# define RED "\e[0;31m"
|
||||
# define GREEN "\e[0;32m"
|
||||
# define YELLOW "\e[0;33m"
|
||||
# define BLUE "\e[0;34m"
|
||||
# define PURPLE "\e[0;35m"
|
||||
# define CYAN "\e[0;36m"
|
||||
# define WHITE "\e[0;37m"
|
||||
|
||||
# define B_GRAY "\e[1;30m"
|
||||
# define B_RED "\e[1;31m"
|
||||
# define B_GREEN "\e[1;32m"
|
||||
# define B_YELLOW "\e[1;33m"
|
||||
# define B_BLUE "\e[1;34m"
|
||||
# define B_PURPLE "\e[1;35m"
|
||||
# define B_CYAN "\e[1;36m"
|
||||
# define B_WHITE "\e[1;37m"
|
||||
|
||||
# define RESET "\e[0m"
|
||||
|
||||
#endif
|
||||
6
config_files/skeleton_main.cpp
Normal file
6
config_files/skeleton_main.cpp
Normal file
@@ -0,0 +1,6 @@
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
int main() {
|
||||
return 0;
|
||||
}
|
||||
74
config_files/skeleton_makefile
Normal file
74
config_files/skeleton_makefile
Normal file
@@ -0,0 +1,74 @@
|
||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
|
||||
# . name = value \ . += append to a variable #
|
||||
# VARIABLES . value . != set result of command #
|
||||
# . name is case sensitive . ?= set if not already set #
|
||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
|
||||
|
||||
NAME = a.out
|
||||
|
||||
#TYPE = c
|
||||
TYPE = cpp
|
||||
|
||||
ifeq "$(TYPE)" "c"
|
||||
CC = c
|
||||
EXT = c
|
||||
else ifeq "$(TYPE)" "cpp"
|
||||
CC = c++
|
||||
EXT = cpp
|
||||
endif
|
||||
|
||||
CFLAGS = -Wall -Wextra -Werror $(INCLUDES)
|
||||
ifeq "$(TYPE)" "cpp"
|
||||
CFLAGS += -std=c++98
|
||||
endif
|
||||
|
||||
VPATH = $(D_SRCS)
|
||||
|
||||
LIBS =
|
||||
|
||||
INCLUDES = -I$(D_HEADERS)
|
||||
|
||||
D_SRCS = .
|
||||
SRCS = main.cpp
|
||||
|
||||
D_HEADERS = .
|
||||
HEADERS =
|
||||
|
||||
D_OBJS = builds
|
||||
OBJS = $(SRCS:%.$(EXT)=$(D_OBJS)/%.o)
|
||||
|
||||
ifeq "$(D_OBJS)" "."
|
||||
RM_OBJS = rm -f $(OBJS)
|
||||
else
|
||||
RM_OBJS = rm -rf $(D_OBJS)
|
||||
endif
|
||||
|
||||
|
||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
|
||||
# . target: prerequisites . $@ : target #
|
||||
# RULES . recipe . $< : 1st prerequisite #
|
||||
# . recipe . $^ : all prerequisites #
|
||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
|
||||
|
||||
all: $(NAME)
|
||||
|
||||
$(D_OBJS)/%.o: %.$(EXT) | $(D_OBJS)
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
$(D_OBJS):
|
||||
mkdir $@
|
||||
|
||||
$(OBJS): $(HEADERS:%=$(D_HEADERS)/%)
|
||||
|
||||
$(NAME): $(OBJS)
|
||||
$(CC) $(OBJS) -o $@ $(LIBS)
|
||||
|
||||
clean:
|
||||
$(RM_OBJS)
|
||||
|
||||
fclean: clean
|
||||
rm -f $(NAME)
|
||||
|
||||
re: fclean all
|
||||
|
||||
.PHONY : all clean fclean re
|
||||
59
install.sh
Normal file
59
install.sh
Normal file
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
# COLORS
|
||||
source color.sh
|
||||
|
||||
KEY_PHRASE="#hugogogo#"
|
||||
HERE=$(pwd)
|
||||
D_CONFIG_FILES="config_files"
|
||||
|
||||
# create those folders if necessary :
|
||||
mkdir -p ~/.vim/templates
|
||||
mkdir -p ~/.vim/swapfiles
|
||||
|
||||
# receive 1 argument : absolute path to config file
|
||||
function save_bak
|
||||
{
|
||||
file_to="$1"
|
||||
file_name="$(basename $1)"
|
||||
path_file_to="$(dirname $1)"
|
||||
number=0
|
||||
while [ -f $file_to.hubak$number ]
|
||||
do
|
||||
((number+=1))
|
||||
done
|
||||
echo -en $YELLOW"in "
|
||||
echo -en $CYAN"\"$path_file_to/\""
|
||||
echo -en $YELLOW", mv "
|
||||
echo -en $CYAN"\"$file_name\""
|
||||
echo -en $YELLOW" to "
|
||||
echo -en $CYAN"\"$file_name.hubak$number\""$ENDCO"\n"
|
||||
mv $file_to $file_to.hubak$number
|
||||
}
|
||||
|
||||
# receive 1 argument : absolute path to config file
|
||||
function install
|
||||
{
|
||||
file_to="$1"
|
||||
file_name="$(basename $1)"
|
||||
path_file_to="$(dirname $1)"
|
||||
if [ -f $file_to ]
|
||||
then
|
||||
save_bak $file_to
|
||||
fi
|
||||
echo -en $YELLOW"create symlink of "
|
||||
echo -en $CYAN"\"$file_name\""
|
||||
echo -en $YELLOW" in "
|
||||
echo -en $CYAN"\"$path_file_to\""$ENDCO"\n"
|
||||
ln -s $HERE/$D_CONFIG_FILES/$file_name $file_to
|
||||
}
|
||||
|
||||
# argument : directory where the config file should go
|
||||
install "$home/.screenrc"
|
||||
install "$home/.vimrc"
|
||||
install "$home/.zshrc"
|
||||
install "$home/.vim/templates/skeleton_color.h"
|
||||
install "$home/.vim/templates/skeleton.cpp"
|
||||
install "$home/.vim/templates/skeleton.hpp"
|
||||
install "$home/.vim/templates/skeleton_main.cpp"
|
||||
install "$home/.vim/templates/skeleton_makefile"
|
||||
@@ -1,31 +1,34 @@
|
||||
#
|
||||
# put this folder "config" into the $HOME directory
|
||||
# put this folder "huhuhu_config" into the $HOME directory
|
||||
# and run sh README.txt
|
||||
#
|
||||
# it will check if .vimrc, .screenrc and .zshrc already
|
||||
# exists in the $HOME directory and if not it will create
|
||||
# a sym link in $HOME to those in this config folder
|
||||
# otherwise if it exist it will add the content of those
|
||||
# in this config folder to the one already there in $HOME
|
||||
# exists in the $HOME directory :
|
||||
# - if it already exist, it will copy the existing file or
|
||||
# folder into <file>.bak[0.9]
|
||||
# - then it will create a sym link in $HOME to those in
|
||||
# this config folder
|
||||
#
|
||||
|
||||
SCREEN="$HOME/.screenrc"
|
||||
MYSCREEN="$HOME/config/.screenrc"
|
||||
MYSCREEN="$HOME/huhuhhu_config/.screenrc"
|
||||
|
||||
VIM="$HOME/.vimrc"
|
||||
MYVIM="$HOME/config/.vimrc"
|
||||
MYVIM="$HOME/huhuhu_config/.vimrc"
|
||||
# create the ~/.vim/swapfiles folder if necessary :
|
||||
mkdir -p ~/.vim/swapfiles
|
||||
|
||||
ZSH="$HOME/.zshrc"
|
||||
MYZSH="$HOME/config/.zshrc"
|
||||
MYZSH="$HOME/huhuhu_config/.zshrc"
|
||||
|
||||
|
||||
# -------------------------------------------------------------
|
||||
# action on the .screenrc file
|
||||
# -------------------------------------------------------------
|
||||
|
||||
if [ -f $SCREEN ]; then
|
||||
if [ -f $SCREEN ]
|
||||
then
|
||||
|
||||
if [ ! -L $SCREEN ]; then
|
||||
if grep -q '#hugogogo#' $SCREEN;
|
||||
then
|
||||
@@ -34,9 +37,8 @@ if [ -f $SCREEN ]; then
|
||||
fi
|
||||
cat $MYSCREEN >> $SCREEN
|
||||
fi
|
||||
else
|
||||
ln -s $MYSCREEN $SCREEN
|
||||
fi
|
||||
ln -s $MYSCREEN $SCREEN
|
||||
|
||||
|
||||
# -------------------------------------------------------------
|
||||
62
uninstall.sh
Normal file
62
uninstall.sh
Normal file
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
# COLORS
|
||||
source color.sh
|
||||
|
||||
KEY_PHRASE="#hugogogo#"
|
||||
|
||||
# receive 1 argument : absolute path to config file
|
||||
function restore_bak
|
||||
{
|
||||
file_to="$1"
|
||||
file_name="$(basename $1)"
|
||||
path_file_to="$(dirname $1)"
|
||||
number=0
|
||||
while [ -f $file_to.hubak$number ]
|
||||
do
|
||||
((number+=1))
|
||||
done
|
||||
((number-=1))
|
||||
echo -en $YELLOW"in "
|
||||
echo -en $CYAN"\"$path_file_to/\""
|
||||
echo -en $YELLOW", mv "
|
||||
echo -en $CYAN"\"$file_name.hubak$number\""
|
||||
echo -en $YELLOW" to "
|
||||
echo -en $CYAN"\"$file_name\""$ENDCO"\n"
|
||||
mv $file_to.hubak$number $file_to
|
||||
}
|
||||
|
||||
# receive 1 argument : absolute path to config file
|
||||
function uninstall
|
||||
{
|
||||
file_to="$1"
|
||||
file_name="$(basename $1)"
|
||||
path_file_to="$(dirname $1)"
|
||||
# -L check if is symlink
|
||||
if [ -f $file_to ] && [ -L $file_to ]
|
||||
then
|
||||
if grep -q $KEY_PHRASE $file
|
||||
then
|
||||
if [ -f $file_to.hubak0 ]
|
||||
then
|
||||
echo -en $YELLOW"in "
|
||||
echo -en $CYAN"\"$path_file_to/\""
|
||||
echo -en $YELLOW", rm symlink "
|
||||
echo -en $CYAN"\"$file_name\""$ENDCO"\n"
|
||||
rm $file_to
|
||||
restore_bak $file_to
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# argument : directory where the config file should go
|
||||
uninstall "$HOME/.screenrc"
|
||||
uninstall "$HOME/.vimrc"
|
||||
uninstall "$HOME/.zshrc"
|
||||
uninstall "$home/.vim/templates/skeleton_color.h"
|
||||
uninstall "$home/.vim/templates/skeleton.cpp"
|
||||
uninstall "$home/.vim/templates/skeleton.hpp"
|
||||
uninstall "$home/.vim/templates/skeleton_main.cpp"
|
||||
uninstall "$home/.vim/templates/skeleton_makefile"
|
||||
Reference in New Issue
Block a user