Compare commits
	
		
			66 Commits
		
	
	
		
			tmux
			...
			c3064a3d76
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					c3064a3d76 | ||
| 
						 | 
					10dc194dc6 | ||
| 
						 | 
					2574a62403 | ||
| 
						 | 
					97566eccc6 | ||
| 
						 | 
					d63f2adf19 | ||
| 
						 | 
					fd2ca33e0d | ||
| 
						 | 
					f35f478a03 | ||
| 
						 | 
					9d25e4c13b | ||
| 
						 | 
					f2ef049f7f | ||
| 
						 | 
					e4d3e84525 | ||
| 
						 | 
					ea78b16bd9 | ||
| 
						 | 
					6f97821cae | ||
| 
						 | 
					f0202964ec | ||
| 
						 | 
					6f07d96ea0 | ||
| 
						 | 
					0cd98dd54b | ||
| 
						 | 
					074f9bcb3c | ||
| 
						 | 
					6dbc5a2635 | ||
| 
						 | 
					ea2954b21e | ||
| 
						 | 
					c8b5165b95 | ||
| 
						 | 
					0f015849aa | ||
| 
						 | 
					a830c391e6 | ||
| 
						 | 
					2772190259 | ||
| 
						 | 
					b51604d950 | ||
| 
						 | 
					a9f2b370d0 | ||
| 
						 | 
					e471aad8d4 | ||
| 
						 | 
					ae3e2e45b6 | ||
| 
						 | 
					5240a44722 | ||
| 
						 | 
					ae9e8f5d7c | ||
| 
						 | 
					8bf32d1b93 | ||
| 
						 | 
					6a2f0dec9d | ||
| 
						 | 
					0c3fc88325 | ||
| 
						 | 
					37837558b1 | ||
| 
						 | 
					fc49bdf6c4 | ||
| 
						 | 
					5866cb54d0 | ||
| 
						 | 
					5cd9fdc6a9 | ||
| 
						 | 
					91a33cdeb5 | ||
| 
						 | 
					0a59f73c8f | ||
| 
						 | 
					2d20791d0d | ||
| 
						 | 
					2f78d852e6 | ||
| 
						 | 
					619cd94874 | ||
| 
						 | 
					c9c02318d3 | ||
| 
						 | 
					b88768512a | ||
| 
						 | 
					ca7513be8b | ||
| 
						 | 
					6814a0f545 | ||
| 
						 | 
					9cca8b0e05 | ||
| 
						 | 
					1e449408bb | ||
| 
						 | 
					32509d6482 | ||
| 
						 | 
					aa48c18165 | ||
| 
						 | 
					23556fddf2 | ||
| 
						 | 
					ea3d2edc97 | ||
| 
						 | 
					59483a7ac8 | ||
| 
						 | 
					e68ff6e85e | ||
| 
						 | 
					18af6196b3 | ||
| 
						 | 
					90d6b9aad9 | ||
| 
						 | 
					f8a7c1e39d | ||
| 
						 | 
					1a1c055b06 | ||
| 
						 | 
					ee3e7b81e4 | ||
| 
						 | 
					cfb2d498fa | ||
| 
						 | 
					ebcaeb805c | ||
| 
						 | 
					3f5da0dfe0 | ||
| 
						 | 
					d829dd0959 | ||
| 
						 | 
					c29fdd9625 | ||
| 
						 | 
					21debe133a | ||
| 
						 | 
					fc8c11d360 | ||
| 
						 | 
					8e833119db | ||
| 
						 | 
					9a934dc351 | 
							
								
								
									
										1
									
								
								.dockerignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.dockerignore
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					*
 | 
				
			||||||
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -1,2 +0,0 @@
 | 
				
			|||||||
.*
 | 
					 | 
				
			||||||
vim/Session.vim
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										15
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							@@ -1,10 +1,13 @@
 | 
				
			|||||||
[submodule "vim/bundle/vundle"]
 | 
					[submodule "vim/.vim/bundle/vundle"]
 | 
				
			||||||
	path = vim/bundle/vundle
 | 
						path = vim/.vim/bundle/vundle
 | 
				
			||||||
	url = https://github.com/gmarik/vundle.git
 | 
						url = https://github.com/gmarik/vundle.git
 | 
				
			||||||
    ignore = dirty
 | 
					    ignore = dirty
 | 
				
			||||||
[submodule "oh-my-zsh"]
 | 
					[submodule "oh-my-zsh"]
 | 
				
			||||||
	path = oh-my-zsh
 | 
						path = zsh/.oh-my-zsh
 | 
				
			||||||
	url = https://github.com/balkian/oh-my-zsh.git
 | 
						url = https://github.com/balkian/oh-my-zsh.git
 | 
				
			||||||
[submodule "i3-wm-scripts"]
 | 
					[submodule "prezto"]
 | 
				
			||||||
    path = bin/i3-wm-scripts
 | 
						path = zsh/.zprezto
 | 
				
			||||||
    url = https://github.com/yiuin/i3-wm-scripts.git
 | 
						url = https://github.com/sorin-ionescu/prezto.git
 | 
				
			||||||
 | 
					[submodule "i3/.config/i3/i3blocks-contrib"]
 | 
				
			||||||
 | 
						path = i3/.config/i3/i3blocks-contrib
 | 
				
			||||||
 | 
						url = https://github.com/vivien/i3blocks-contrib.git
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,54 +0,0 @@
 | 
				
			|||||||
FROM ubuntu:14.04
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
RUN apt-get update -y
 | 
					 | 
				
			||||||
RUN apt-get install -y build-essential
 | 
					 | 
				
			||||||
RUN apt-get install -y cmake
 | 
					 | 
				
			||||||
RUN apt-get install -y curl
 | 
					 | 
				
			||||||
RUN apt-get install -y diffstat
 | 
					 | 
				
			||||||
RUN apt-get install -y git
 | 
					 | 
				
			||||||
RUN apt-get install -y pkg-config
 | 
					 | 
				
			||||||
RUN apt-get install -y python
 | 
					 | 
				
			||||||
RUN apt-get install -y python-dev
 | 
					 | 
				
			||||||
RUN apt-get install -y python3
 | 
					 | 
				
			||||||
RUN apt-get install -y tmux
 | 
					 | 
				
			||||||
RUN apt-get install -y vim
 | 
					 | 
				
			||||||
RUN apt-get install -y zsh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
RUN curl -SL 'https://bootstrap.pypa.io/get-pip.py' | python2
 | 
					 | 
				
			||||||
RUN pip install virtualenv
 | 
					 | 
				
			||||||
RUN pip install virtualenvwrapper
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Setup home environment
 | 
					 | 
				
			||||||
RUN useradd dev
 | 
					 | 
				
			||||||
RUN mkdir /home/dev && chown -R dev: /home/dev
 | 
					 | 
				
			||||||
ENV PATH /home/dev/bin:$PATH
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Create a shared data volume
 | 
					 | 
				
			||||||
# We need to create an empty file, otherwise the volume will
 | 
					 | 
				
			||||||
# belong to root.
 | 
					 | 
				
			||||||
# This is probably a Docker bug.
 | 
					 | 
				
			||||||
RUN mkdir /var/shared/
 | 
					 | 
				
			||||||
RUN touch /var/shared/placeholder
 | 
					 | 
				
			||||||
RUN chown -R dev:dev /var/shared
 | 
					 | 
				
			||||||
RUN mkdir -p /usr/src/app/
 | 
					 | 
				
			||||||
RUN touch /usr/src/app/nocode
 | 
					 | 
				
			||||||
RUN chown -R dev:dev /usr/src/app
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
VOLUME /usr/src/app
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
WORKDIR /home/dev
 | 
					 | 
				
			||||||
ENV HOME /home/dev
 | 
					 | 
				
			||||||
RUN git clone https://github.com/balkian/dotfiles /home/dev/dotfiles
 | 
					 | 
				
			||||||
RUN sh /home/dev/dotfiles/make.sh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Link in shared parts of the home directory
 | 
					 | 
				
			||||||
RUN ln -s /var/shared/.ssh
 | 
					 | 
				
			||||||
RUN ln -s /usr/src/app
 | 
					 | 
				
			||||||
RUN chsh dev -s /usr/bin/zsh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
RUN chown -R dev: /home/dev
 | 
					 | 
				
			||||||
RUN chown -R dev: /usr/local/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
WORKDIR /home/dev/app
 | 
					 | 
				
			||||||
ENTRYPOINT ["zsh"]
 | 
					 | 
				
			||||||
USER dev
 | 
					 | 
				
			||||||
							
								
								
									
										57
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,57 @@
 | 
				
			|||||||
 | 
					FROM ubuntu:16.04
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN apt-get update -y && \
 | 
				
			||||||
 | 
					    apt-get install -y build-essential \
 | 
				
			||||||
 | 
					    cmake \
 | 
				
			||||||
 | 
					    curl \
 | 
				
			||||||
 | 
					    diffstat \
 | 
				
			||||||
 | 
					    git \
 | 
				
			||||||
 | 
					    pkg-config \
 | 
				
			||||||
 | 
					    python \
 | 
				
			||||||
 | 
					    python-dev \
 | 
				
			||||||
 | 
					    python \
 | 
				
			||||||
 | 
					    python3 \
 | 
				
			||||||
 | 
					    tmux \
 | 
				
			||||||
 | 
					    stow \
 | 
				
			||||||
 | 
					    sudo \
 | 
				
			||||||
 | 
					    vim \
 | 
				
			||||||
 | 
					    zsh && \
 | 
				
			||||||
 | 
					    apt clean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN curl -SL 'https://bootstrap.pypa.io/get-pip.py' | python3
 | 
				
			||||||
 | 
					RUN pip install virtualenv virtualenvwrapper
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Setup home environment
 | 
				
			||||||
 | 
					RUN useradd dev
 | 
				
			||||||
 | 
					RUN mkdir /home/dev && chown -R dev: /home/dev
 | 
				
			||||||
 | 
					ENV PATH /home/dev/bin:$PATH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Create a shared data volume
 | 
				
			||||||
 | 
					# We need to create an empty file, otherwise the volume will
 | 
				
			||||||
 | 
					# belong to root.
 | 
				
			||||||
 | 
					# This is probably a Docker bug.
 | 
				
			||||||
 | 
					RUN mkdir /var/shared/
 | 
				
			||||||
 | 
					RUN touch /var/shared/placeholder
 | 
				
			||||||
 | 
					RUN chown -R dev:dev /var/shared
 | 
				
			||||||
 | 
					RUN mkdir -p /usr/src/app/
 | 
				
			||||||
 | 
					RUN touch /usr/src/app/nocode
 | 
				
			||||||
 | 
					RUN chown -R dev:dev /usr/src/app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					VOLUME /usr/src/app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WORKDIR /home/dev
 | 
				
			||||||
 | 
					ENV HOME /home/dev
 | 
				
			||||||
 | 
					RUN mkdir /home/dev/dotfiles/
 | 
				
			||||||
 | 
					RUN ls /home/dev/dotfiles
 | 
				
			||||||
 | 
					COPY . /home/dev/dotfiles
 | 
				
			||||||
 | 
					RUN sh /home/dev/dotfiles/make.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Link in shared parts of the home directory
 | 
				
			||||||
 | 
					RUN ln -s /var/shared/.ssh && ln -s /usr/src/app
 | 
				
			||||||
 | 
					RUN chsh dev -s /usr/bin/zsh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN echo "dev    ALL = NOPASSWD: ALL" >> /etc/sudoers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					USER dev
 | 
				
			||||||
 | 
					WORKDIR /home/dev/app
 | 
				
			||||||
 | 
					ENTRYPOINT ["zsh"]
 | 
				
			||||||
							
								
								
									
										15
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					########## Variables
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# change to the dotfiles directory
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					stow: submodules
 | 
				
			||||||
 | 
						find . -maxdepth 0 -type d | xargs stow -v
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					submodules:
 | 
				
			||||||
 | 
						git submodule update --init --recursive
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker: Dockerfile
 | 
				
			||||||
 | 
						git clone . /tmp/dotfiles
 | 
				
			||||||
 | 
						docker build -t balkian/devmachine /tmp/dotfiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.PHONY: stow submodules docker
 | 
				
			||||||
							
								
								
									
										21
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								README.md
									
									
									
									
									
								
							@@ -11,13 +11,22 @@ The fast way:
 | 
				
			|||||||
```bash
 | 
					```bash
 | 
				
			||||||
curl -#L https://github.com/balkian/dotfiles/tarball/master | tar -xzv --strip-components 1 --exclude={README.md}
 | 
					curl -#L https://github.com/balkian/dotfiles/tarball/master | tar -xzv --strip-components 1 --exclude={README.md}
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
### Install
 | 
					### Quick install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Just run:
 | 
					```
 | 
				
			||||||
```bash
 | 
					make
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					### Install
 | 
				
			||||||
 | 
					Each folder contains the configuration files for a specific program, as they would appear under "$HOME" (~).
 | 
				
			||||||
 | 
					To install them, first initialize the submodules:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
git submodule update --init --recursive
 | 
					git submodule update --init --recursive
 | 
				
			||||||
source make.sh
 | 
					 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## How it works
 | 
					Then, you can use the [GNU Stow](https://www.gnu.org/software/stow/) utility to link the files to the appropriate folder:
 | 
				
			||||||
So far, this is the simplest way of keeping your dotfiles in a repository. The installation script will just back-up your files in a folder in your ~/ with the timestamp, so running it twice won't destroy your original files.
 | 
					```bash
 | 
				
			||||||
 | 
					stow <modules that you want to install>
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Alternatively, you may simply copy the files to your $HOME folder.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,38 +0,0 @@
 | 
				
			|||||||
URxvt*termName:screen-256color
 | 
					 | 
				
			||||||
URxvt*loginShell:true
 | 
					 | 
				
			||||||
URxvt.iconFile:	/usr/share/icons/HighContrast/scalable/apps/utilities-terminal.svg
 | 
					 | 
				
			||||||
URxvt.scrollBar: false
 | 
					 | 
				
			||||||
URxvt.scrollstyle: rxvt
 | 
					 | 
				
			||||||
URxvt*scrollTtyOutput:      false
 | 
					 | 
				
			||||||
URxvt*scrollWithBuffer:     true
 | 
					 | 
				
			||||||
URxvt*scrollTtyKeypress:    true
 | 
					 | 
				
			||||||
URxvt.depth: 32
 | 
					 | 
				
			||||||
URxvt.saveLines: 50000
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
URxvt.font: xft:DejaVu Sans Mono:size=10
 | 
					 | 
				
			||||||
Xft.antialias: rgba 
 | 
					 | 
				
			||||||
Xft.hinting: true
 | 
					 | 
				
			||||||
Xft.hintstyle: hintslight
 | 
					 | 
				
			||||||
Xft.rgba: rgb
 | 
					 | 
				
			||||||
Xft.dpi: 96
 | 
					 | 
				
			||||||
URxvt.letterSpace: -2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
URxvt.foreground: #FFFFFF
 | 
					 | 
				
			||||||
URxvt.background: #111111
 | 
					 | 
				
			||||||
URxvt.color0:     #2E3436
 | 
					 | 
				
			||||||
URxvt.color1:     #CC0000
 | 
					 | 
				
			||||||
URxvt.color2:     #4E9A06
 | 
					 | 
				
			||||||
URxvt.color3:     #C4A000
 | 
					 | 
				
			||||||
URxvt.color4:     #3465A4
 | 
					 | 
				
			||||||
URxvt.color5:     #75507B
 | 
					 | 
				
			||||||
URxvt.color6:     #06989A
 | 
					 | 
				
			||||||
URxvt.color7:     #D3D7CF
 | 
					 | 
				
			||||||
URxvt.color8:     #555753
 | 
					 | 
				
			||||||
URxvt.color9:     #EF2929
 | 
					 | 
				
			||||||
URxvt.color10:    #8AE234
 | 
					 | 
				
			||||||
URxvt.color11:    #FCE94F
 | 
					 | 
				
			||||||
URxvt.color12:    #729FCF
 | 
					 | 
				
			||||||
URxvt.color13:    #AD7FA8
 | 
					 | 
				
			||||||
URxvt.color14:    #34E2E2
 | 
					 | 
				
			||||||
URxvt.color15:    #EEEEEC
 | 
					 | 
				
			||||||
@@ -1,96 +0,0 @@
 | 
				
			|||||||
!-------------------------------------------------------------------------------
 | 
					 | 
				
			||||||
! Xft settings
 | 
					 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
Xft.dpi:                    96
 | 
					 | 
				
			||||||
Xft.antialias:              false
 | 
					 | 
				
			||||||
Xft.rgba:                   rgb
 | 
					 | 
				
			||||||
Xft.hinting:                true
 | 
					 | 
				
			||||||
Xft.hintstyle:              hintslight
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					 | 
				
			||||||
! URxvt settings
 | 
					 | 
				
			||||||
! Colours lifted from Solarized (http://ethanschoonover.com/solarized)
 | 
					 | 
				
			||||||
! More info at:
 | 
					 | 
				
			||||||
! http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod
 | 
					 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
URxvt.depth:                32
 | 
					 | 
				
			||||||
URxvt.geometry:             90x30
 | 
					 | 
				
			||||||
URxvt.transparent:          false
 | 
					 | 
				
			||||||
URxvt.fading:               0
 | 
					 | 
				
			||||||
! URxvt.urgentOnBell:         true
 | 
					 | 
				
			||||||
! URxvt.visualBell:           true
 | 
					 | 
				
			||||||
URxvt.loginShell:           true
 | 
					 | 
				
			||||||
URxvt.saveLines:            50
 | 
					 | 
				
			||||||
URxvt.internalBorder:       3
 | 
					 | 
				
			||||||
URxvt.lineSpace:            0
 | 
					 | 
				
			||||||
URxvt.letterSpace:          -2
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Fonts
 | 
					 | 
				
			||||||
URxvt.allow_bold:           true
 | 
					 | 
				
			||||||
/* URxvt.font:                 -*-terminus-medium-r-normal-*-12-120-72-72-c-60-iso8859-1 */
 | 
					 | 
				
			||||||
URxvt*font: xft:DejaVu Sans Mono:pixelsize=14
 | 
					 | 
				
			||||||
URxvt*boldFont: xft:DejaVu Sans Mono:pixelsize=14
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Fix font space
 | 
					 | 
				
			||||||
URxvt*letterSpace: -1
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Scrollbar
 | 
					 | 
				
			||||||
URxvt.scrollStyle:          rxvt
 | 
					 | 
				
			||||||
URxvt.scrollBar:            false
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Perl extensions
 | 
					 | 
				
			||||||
URxvt.perl-ext-common:      default,matcher
 | 
					 | 
				
			||||||
URxvt.matcher.button:       1
 | 
					 | 
				
			||||||
URxvt.urlLauncher:          google-chrome
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Cursor
 | 
					 | 
				
			||||||
URxvt.cursorBlink:          true
 | 
					 | 
				
			||||||
URxvt.cursorColor:          #657b83
 | 
					 | 
				
			||||||
URxvt.cursorUnderline:      false
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
! Pointer
 | 
					 | 
				
			||||||
URxvt.pointerBlank:         true
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!!Source http://github.com/altercation/solarized
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
*background: #002b36
 | 
					 | 
				
			||||||
*foreground: #657b83
 | 
					 | 
				
			||||||
!!*fading: 40
 | 
					 | 
				
			||||||
*fadeColor: #002b36
 | 
					 | 
				
			||||||
*cursorColor: #93a1a1
 | 
					 | 
				
			||||||
*pointerColorBackground: #586e75
 | 
					 | 
				
			||||||
*pointerColorForeground: #93a1a1
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! black dark/light
 | 
					 | 
				
			||||||
*color0: #073642
 | 
					 | 
				
			||||||
*color8: #002b36
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! red dark/light
 | 
					 | 
				
			||||||
*color1: #dc322f
 | 
					 | 
				
			||||||
*color9: #cb4b16
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! green dark/light
 | 
					 | 
				
			||||||
*color2: #859900
 | 
					 | 
				
			||||||
*color10: #586e75
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! yellow dark/light
 | 
					 | 
				
			||||||
*color3: #b58900
 | 
					 | 
				
			||||||
*color11: #657b83
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! blue dark/light
 | 
					 | 
				
			||||||
*color4: #268bd2
 | 
					 | 
				
			||||||
*color12: #839496
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! magenta dark/light
 | 
					 | 
				
			||||||
*color5: #d33682
 | 
					 | 
				
			||||||
*color13: #6c71c4
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! cyan dark/light
 | 
					 | 
				
			||||||
*color6: #2aa198
 | 
					 | 
				
			||||||
*color14: #93a1a1
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
!! white dark/light
 | 
					 | 
				
			||||||
*color7: #eee8d5
 | 
					 | 
				
			||||||
*color15: #fdf6e3
 | 
					 | 
				
			||||||
@@ -4,14 +4,14 @@
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
Xft.dpi:                    96
 | 
					Xft.dpi:                    96
 | 
				
			||||||
Xft.antialias:              true
 | 
					Xft.antialias:              true
 | 
				
			||||||
Xft.rgba:                   rgb
 | 
					Xft.rgba:                   none
 | 
				
			||||||
Xft.hinting:                true
 | 
					Xft.hinting:                true
 | 
				
			||||||
Xft.hintstyle:              hintfull
 | 
					Xft.hintstyle:              hintslight
 | 
				
			||||||
 | 
					
 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					!-------------------------------------------------------------------------------
 | 
				
			||||||
! Emacs settings 
 | 
					! Emacs settings 
 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					!-------------------------------------------------------------------------------
 | 
				
			||||||
!Emacs.font: DejaVu Sans Mono-10
 | 
					Emacs.font: DejaVu Sans Mono-10
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
!-------------------------------------------------------------------------------
 | 
					!-------------------------------------------------------------------------------
 | 
				
			||||||
! URxvt settings
 | 
					! URxvt settings
 | 
				
			||||||
@@ -27,18 +27,18 @@ URxvt.fading:               0
 | 
				
			|||||||
! URxvt.urgentOnBell:         true
 | 
					! URxvt.urgentOnBell:         true
 | 
				
			||||||
! URxvt.visualBell:           true
 | 
					! URxvt.visualBell:           true
 | 
				
			||||||
URxvt.loginShell:           true
 | 
					URxvt.loginShell:           true
 | 
				
			||||||
URxvt.saveLines:            50
 | 
					URxvt.saveLines:            100
 | 
				
			||||||
URxvt.internalBorder:       3
 | 
					URxvt.internalBorder:       3
 | 
				
			||||||
URxvt.lineSpace:            0
 | 
					URxvt.lineSpace:            0
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
! Fonts
 | 
					! Fonts
 | 
				
			||||||
URxvt.allow_bold:           true
 | 
					URxvt.allow_bold:           true
 | 
				
			||||||
/* URxvt.font:                 -*-terminus-medium-r-normal-*-12-120-72-72-c-60-iso8859-1 */
 | 
					/* URxvt.font:                 -*-terminus-medium-r-normal-*-12-120-72-72-c-60-iso8859-1 */
 | 
				
			||||||
URxvt*font: xft:DejaVu\ Sans\ Mono:pixelsize=14
 | 
					URxvt*font: xft:DejaVu\ Sans\ Mono:pixelsize=13
 | 
				
			||||||
URxvt*boldFont: xft:DejaVu\ Sans\ Mono:pixelsize=14:style=bold
 | 
					URxvt*boldFont: xft:DejaVu\ Sans\ Mono:pixelsize=13:style=bold
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
! Fix font space
 | 
					! Fix font space
 | 
				
			||||||
URxvt*letterSpace: -2
 | 
					URxvt*letterSpace: -1
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
! Scrollbar
 | 
					! Scrollbar
 | 
				
			||||||
URxvt.scrollStyle:          rxvt
 | 
					URxvt.scrollStyle:          rxvt
 | 
				
			||||||
@@ -295,4 +295,14 @@ URxvt.pointerBlank:         true
 | 
				
			|||||||
*color13: #bb88dd
 | 
					*color13: #bb88dd
 | 
				
			||||||
*color14: #4eb4fa
 | 
					*color14: #4eb4fa
 | 
				
			||||||
*color15: #d0d0d0
 | 
					*color15: #d0d0d0
 | 
				
			||||||
!
 | 
					
 | 
				
			||||||
 | 
					! ------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					! ROFI Color theme
 | 
				
			||||||
 | 
					! ------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					rofi.color-enabled: true
 | 
				
			||||||
 | 
					rofi.terminal: i3-sensible-terminal
 | 
				
			||||||
 | 
					rofi.color-window: #273238, #273238, #1e2529
 | 
				
			||||||
 | 
					rofi.color-normal: #273238, #c1c1c1, #273238, #394249, #ffffff
 | 
				
			||||||
 | 
					rofi.color-active: #273238, #80cbc4, #273238, #394249, #80cbc4
 | 
				
			||||||
 | 
					rofi.color-urgent: #273238, #ff1844, #273238, #394249, #ff1844
 | 
				
			||||||
 | 
					rofi.ssh-command:          {terminal} -e "{ssh-client} {host}"
 | 
				
			||||||
@@ -24,3 +24,5 @@ fi
 | 
				
			|||||||
if [ -f $HOME/.Xmodmap ]; then
 | 
					if [ -f $HOME/.Xmodmap ]; then
 | 
				
			||||||
    /usr/bin/xmodmap $HOME/.Xmodmap 2>/dev/null &
 | 
					    /usr/bin/xmodmap $HOME/.Xmodmap 2>/dev/null &
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export PATH="$HOME/.cargo/bin:$PATH"
 | 
				
			||||||
							
								
								
									
										9
									
								
								Xsession/.xprofile
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										9
									
								
								Xsession/.xprofile
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					# echo "pasado(xprofile)" $(date) >> /tmp/LOG
 | 
				
			||||||
 | 
					setxkbmap "us,es" "altgr-intl," -option "ctrl:nocaps,grp:shift_toggle,terminate:ctrl_alt_bksp"
 | 
				
			||||||
 | 
					#xmodmap ~/.Xmodmap
 | 
				
			||||||
 | 
					#source ~/.xinitrc
 | 
				
			||||||
 | 
					export XTERMINAL=termite
 | 
				
			||||||
 | 
					export TERMINAL=termite
 | 
				
			||||||
 | 
					export TERMCMD=termite
 | 
				
			||||||
 | 
					export BROWSER2=chromium
 | 
				
			||||||
 | 
					export BROWSER="firefox --ProfileManager"
 | 
				
			||||||
@@ -4,4 +4,4 @@ fi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Added by the Heroku Toolbelt
 | 
					### Added by the Heroku Toolbelt
 | 
				
			||||||
export PATH="/usr/local/heroku/bin:$PATH"
 | 
					export PATH="/usr/local/heroku/bin:$HOME/.local/bin:$HOME/.bin$PATH"
 | 
				
			||||||
							
								
								
									
										125
									
								
								bin/bashrc
									
									
									
									
									
								
							
							
						
						
									
										125
									
								
								bin/bashrc
									
									
									
									
									
								
							@@ -1,125 +0,0 @@
 | 
				
			|||||||
# ~/.bashrc: executed by bash(1) for non-login shells.
 | 
					 | 
				
			||||||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
 | 
					 | 
				
			||||||
# for examples
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# If not running interactively, don't do anything
 | 
					 | 
				
			||||||
[ -z "$PS1" ] && return
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# don't put duplicate lines in the history. See bash(1) for more options
 | 
					 | 
				
			||||||
# ... or force ignoredups and ignorespace
 | 
					 | 
				
			||||||
HISTCONTROL=ignoredups:ignorespace
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# append to the history file, don't overwrite it
 | 
					 | 
				
			||||||
shopt -s histappend
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
 | 
					 | 
				
			||||||
HISTSIZE=1000
 | 
					 | 
				
			||||||
HISTFILESIZE=2000
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# check the window size after each command and, if necessary,
 | 
					 | 
				
			||||||
# update the values of LINES and COLUMNS.
 | 
					 | 
				
			||||||
shopt -s checkwinsize
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# make less more friendly for non-text input files, see lesspipe(1)
 | 
					 | 
				
			||||||
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# set variable identifying the chroot you work in (used in the prompt below)
 | 
					 | 
				
			||||||
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
 | 
					 | 
				
			||||||
    debian_chroot=$(cat /etc/debian_chroot)
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# set a fancy prompt (non-color, unless we know we "want" color)
 | 
					 | 
				
			||||||
case "$TERM" in
 | 
					 | 
				
			||||||
    xterm-color) color_prompt=yes;;
 | 
					 | 
				
			||||||
    xterm) color_prompt=yes;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# uncomment for a colored prompt, if the terminal has the capability; turned
 | 
					 | 
				
			||||||
# off by default to not distract the user: the focus in a terminal window
 | 
					 | 
				
			||||||
# should be on the output of commands, not on the prompt
 | 
					 | 
				
			||||||
force_color_prompt=yes
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -n "$force_color_prompt" ]; then
 | 
					 | 
				
			||||||
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
 | 
					 | 
				
			||||||
	# We have color support; assume it's compliant with Ecma-48
 | 
					 | 
				
			||||||
	# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
 | 
					 | 
				
			||||||
	# a case would tend to support setf rather than setaf.)
 | 
					 | 
				
			||||||
	color_prompt=yes
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
	color_prompt=
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ "$color_prompt" = yes ]; then
 | 
					 | 
				
			||||||
    export PROMPT_COMMAND='PS1="\\[\033[1;\`if [[ \$? = "0" ]]; then echo "32m\\]"; else echo "31m\\]"; fi\`[\!]\\[\033[0m\]\u@\h \W: "'
 | 
					 | 
				
			||||||
else
 | 
					 | 
				
			||||||
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
unset color_prompt force_color_prompt
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# If this is an xterm set the title to user@host:dir
 | 
					 | 
				
			||||||
case "$TERM" in
 | 
					 | 
				
			||||||
xterm*|rxvt*)
 | 
					 | 
				
			||||||
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
*)
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# enable color support of ls and also add handy aliases
 | 
					 | 
				
			||||||
if [ -x /usr/bin/dircolors ]; then
 | 
					 | 
				
			||||||
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
 | 
					 | 
				
			||||||
    alias ls='ls --color=auto'
 | 
					 | 
				
			||||||
    #alias dir='dir --color=auto'
 | 
					 | 
				
			||||||
    #alias vdir='vdir --color=auto'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    alias grep='grep --color=auto'
 | 
					 | 
				
			||||||
    alias fgrep='fgrep --color=auto'
 | 
					 | 
				
			||||||
    alias egrep='egrep --color=auto'
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# some more ls aliases
 | 
					 | 
				
			||||||
alias ll='ls -alhF'
 | 
					 | 
				
			||||||
alias la='ls -A'
 | 
					 | 
				
			||||||
alias l='ls -CF'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Add an "alert" alias for long running commands.  Use like so:
 | 
					 | 
				
			||||||
#   sleep 10; alert
 | 
					 | 
				
			||||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Alias definitions.
 | 
					 | 
				
			||||||
# You may want to put all your additions into a separate file like
 | 
					 | 
				
			||||||
# ~/.bash_aliases, instead of adding them here directly.
 | 
					 | 
				
			||||||
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -f ~/.bash_aliases ]; then
 | 
					 | 
				
			||||||
    . ~/.bash_aliases
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# enable programmable completion features (you don't need to enable
 | 
					 | 
				
			||||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
 | 
					 | 
				
			||||||
# sources /etc/bash.bashrc).
 | 
					 | 
				
			||||||
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
 | 
					 | 
				
			||||||
    . /etc/bash_completion
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
export CDPATH=~:/media/Datos:/home/balkian
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ "$TERM" = "linux" ]; then
 | 
					 | 
				
			||||||
        alias logout="clear && logout && exit"
 | 
					 | 
				
			||||||
else
 | 
					 | 
				
			||||||
        alias logout="exit 0"
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
export PYTHONSTARTUP=/home/$USER/.pythonrc
 | 
					 | 
				
			||||||
export PATH=$PATH:/var/lib/gems/1.8/bin
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
setWindowTitle() {
 | 
					 | 
				
			||||||
        echo -ne "\e]2;$*\a"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
updateWindowTitle() {
 | 
					 | 
				
			||||||
        setWindowTitle "${HOSTNAME%%.*}:${PWD/$HOME/~}"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
PROMPT_COMMAND=$PROMPT_COMMAND updateWindowTitle
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function findHere() { ex=$1; shift; grep -R $* $ex .;}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@@ -1,2 +0,0 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					 | 
				
			||||||
one-window 'gnome-terminal' 'xdotool windowfocus $WID & xdotool key ctrl+shift+t'
 | 
					 | 
				
			||||||
 Submodule bin/i3-wm-scripts deleted from 477335215d
									
								
							
							
								
								
									
										23
									
								
								bin/monitors
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								bin/monitors
									
									
									
									
									
								
							@@ -1,23 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
case $1 in
 | 
					 | 
				
			||||||
    "single")
 | 
					 | 
				
			||||||
    #xrandr --auto --output eDP1 --primary --output DP1 --off
 | 
					 | 
				
			||||||
        ~/.screenlayout/gsi-single.sh
 | 
					 | 
				
			||||||
        xrandr --output HDMI1 --off --output DVI-1 --off --output DP1 --off --output eDP1 --mode 1920x1080 --pos 0x0 --rotate normal --output VGA1 --off
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
    "dual")
 | 
					 | 
				
			||||||
        case $2 in
 | 
					 | 
				
			||||||
            "home")
 | 
					 | 
				
			||||||
                xrandr --output DP1 --off --output VIRTUAL1 --off --output eDP1 --mode 1920x1080 --pos 0x1080 --rotate normal --output HDMI1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output VGA1 --off
 | 
					 | 
				
			||||||
                ;;
 | 
					 | 
				
			||||||
            *)
 | 
					 | 
				
			||||||
            #xrandr --auto --output eDP1 --primary --right-of DP1
 | 
					 | 
				
			||||||
            xrandr --output VIRTUAL1 --off --output DP1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output HDMI1 --off --output eDP1 --mode 1920x1080 --pos 1920x0 --rotate normal --output VGA1 --off
 | 
					 | 
				
			||||||
            xrandr --output "DVI-1-0" --off
 | 
					 | 
				
			||||||
            ;;
 | 
					 | 
				
			||||||
        esac
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
if [ `command -v nitrogen` ]; then
 | 
					 | 
				
			||||||
    nitrogen --restore
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
@@ -1,2 +0,0 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					 | 
				
			||||||
one-window "terminator" "xdotool windowfocus \$WID & xdotool key ctrl+shift+t;" "/usr/bin/terminator $*"
 | 
					 | 
				
			||||||
@@ -1,2 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
~/Programs/Zotero_linux-x86_64/run-zotero.sh
 | 
					 | 
				
			||||||
							
								
								
									
										20
									
								
								bspwm/.config/bspwm/bspwmrc
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								bspwm/.config/bspwm/bspwmrc
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sxhkd &
 | 
				
			||||||
 | 
					compton --config ~/.compton.conf &
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc config border_width        2
 | 
				
			||||||
 | 
					bspc config window_gap         12
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc config split_ratio         0.52
 | 
				
			||||||
 | 
					bspc config borderless_monocle  true
 | 
				
			||||||
 | 
					bspc config gapless_monocle     true
 | 
				
			||||||
 | 
					bspc config focus_by_distance   true
 | 
				
			||||||
 | 
					bspc config focus_follows_pointer true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc monitor -d I II III IV V VI VII VIII IX X
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc rule -a Gimp desktop=^8 state=floating follow=on
 | 
				
			||||||
 | 
					bspc rule -a Firefox desktop=^2
 | 
				
			||||||
 | 
					bspc rule -a mplayer2 state=floating
 | 
				
			||||||
 | 
					bspc rule -a Screenkey manage=off
 | 
				
			||||||
							
								
								
									
										109
									
								
								compton/.compton.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								compton/.compton.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,109 @@
 | 
				
			|||||||
 | 
					# Shadow
 | 
				
			||||||
 | 
					shadow = true;
 | 
				
			||||||
 | 
					no-dnd-shadow = true;
 | 
				
			||||||
 | 
					no-dock-shadow = true;
 | 
				
			||||||
 | 
					clear-shadow = true;
 | 
				
			||||||
 | 
					shadow-radius = 7;
 | 
				
			||||||
 | 
					shadow-offset-x = -7;
 | 
				
			||||||
 | 
					shadow-offset-y = -7;
 | 
				
			||||||
 | 
					# shadow-opacity = 0.7;
 | 
				
			||||||
 | 
					# shadow-red = 0.0;
 | 
				
			||||||
 | 
					# shadow-green = 0.0;
 | 
				
			||||||
 | 
					# shadow-blue = 0.0;
 | 
				
			||||||
 | 
					shadow-exclude = [
 | 
				
			||||||
 | 
						"name = 'Notification'",
 | 
				
			||||||
 | 
						"class_g = 'Conky'",
 | 
				
			||||||
 | 
						"class_g ?= 'Notify-osd'",
 | 
				
			||||||
 | 
						"class_g = 'Cairo-clock'",
 | 
				
			||||||
 | 
						"_GTK_FRAME_EXTENTS@:c"
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					# shadow-exclude = "n:e:Notification";
 | 
				
			||||||
 | 
					# shadow-exclude-reg = "x10+0+0";
 | 
				
			||||||
 | 
					# xinerama-shadow-crop = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Opacity
 | 
				
			||||||
 | 
					#mark-override-focused = true;
 | 
				
			||||||
 | 
					#menu-opacity = 0.9;
 | 
				
			||||||
 | 
					# inactive-opacity = 0.95;
 | 
				
			||||||
 | 
					# active-opacity = 0.8;
 | 
				
			||||||
 | 
					# frame-opacity = 0.7;
 | 
				
			||||||
 | 
					inactive-opacity-override = false;
 | 
				
			||||||
 | 
					alpha-step = 0.06;
 | 
				
			||||||
 | 
					inactive-dim = 0.4;
 | 
				
			||||||
 | 
					#inactive-dim-fixed = false;
 | 
				
			||||||
 | 
					# blur-background = true;
 | 
				
			||||||
 | 
					# blur-background-frame = true;
 | 
				
			||||||
 | 
					blur-kern = "3x3box"
 | 
				
			||||||
 | 
					# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"
 | 
				
			||||||
 | 
					# blur-background-fixed = true;
 | 
				
			||||||
 | 
					blur-background-exclude = [
 | 
				
			||||||
 | 
						"window_type = 'dock'",
 | 
				
			||||||
 | 
						"window_type = 'desktop'",
 | 
				
			||||||
 | 
						"_GTK_FRAME_EXTENTS@:c"
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					# opacity-rule = [ "80:class_g = 'URxvt'" ];
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					opacity-rule = [
 | 
				
			||||||
 | 
					  "99:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "99:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "99:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "99:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "99:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fading
 | 
				
			||||||
 | 
					fading = false;
 | 
				
			||||||
 | 
					# fade-delta = 30;
 | 
				
			||||||
 | 
					fade-in-step = 0.05;
 | 
				
			||||||
 | 
					fade-out-step = 0.05;
 | 
				
			||||||
 | 
					# no-fading-openclose = true;
 | 
				
			||||||
 | 
					# no-fading-destroyed-argb = true;
 | 
				
			||||||
 | 
					fade-exclude = [ ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Other
 | 
				
			||||||
 | 
					backend = "xrender"
 | 
				
			||||||
 | 
					mark-wmwin-focused = true;
 | 
				
			||||||
 | 
					mark-ovredir-focused = true;
 | 
				
			||||||
 | 
					use-ewmh-active-win = true;
 | 
				
			||||||
 | 
					detect-rounded-corners = true;
 | 
				
			||||||
 | 
					detect-client-opacity = true;
 | 
				
			||||||
 | 
					refresh-rate = 0;
 | 
				
			||||||
 | 
					vsync = "none";
 | 
				
			||||||
 | 
					dbe = false;
 | 
				
			||||||
 | 
					paint-on-overlay = true;
 | 
				
			||||||
 | 
					# sw-opti = true;
 | 
				
			||||||
 | 
					unredir-if-possible = true;
 | 
				
			||||||
 | 
					# unredir-if-possible-delay = 5000;
 | 
				
			||||||
 | 
					# unredir-if-possible-exclude = [ ];
 | 
				
			||||||
 | 
					focus-exclude = [ "class_g = 'Cairo-clock'",
 | 
				
			||||||
 | 
					  "class_g = 'Popcorn Time'",
 | 
				
			||||||
 | 
					    # "class_g = 'firefox'",
 | 
				
			||||||
 | 
					    # prevents dimming fullscreen windows
 | 
				
			||||||
 | 
					  "_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					  "_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_FULLSCREEN'",
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					detect-transient = true;
 | 
				
			||||||
 | 
					detect-client-leader = false;
 | 
				
			||||||
 | 
					invert-color-include = [ ];
 | 
				
			||||||
 | 
					# resize-damage = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# GLX backend
 | 
				
			||||||
 | 
					# glx-no-stencil = true;
 | 
				
			||||||
 | 
					glx-copy-from-front = false;
 | 
				
			||||||
 | 
					# glx-use-copysubbuffermesa = true;
 | 
				
			||||||
 | 
					# glx-no-rebind-pixmap = true;
 | 
				
			||||||
 | 
					glx-swap-method = "undefined";
 | 
				
			||||||
 | 
					# glx-use-gpushader4 = true;
 | 
				
			||||||
 | 
					# xrender-sync = true;
 | 
				
			||||||
 | 
					# xrender-sync-fence = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Window type settings
 | 
				
			||||||
 | 
					wintypes:
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  tooltip = { fade = true; shadow = true; opacity = 0.95; focus = true; };
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
							
								
								
									
										120
									
								
								dunst/.config/dunst/dunst.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								dunst/.config/dunst/dunst.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,120 @@
 | 
				
			|||||||
 | 
					[global]
 | 
				
			||||||
 | 
					    font = "DejaVu Sans 10"
 | 
				
			||||||
 | 
					    allow_markup = yes
 | 
				
			||||||
 | 
					    format = "<b>%s %p</b>\n%b"
 | 
				
			||||||
 | 
					    sort = yes
 | 
				
			||||||
 | 
					    indicate_hidden = true
 | 
				
			||||||
 | 
					    idle_threshold = 0
 | 
				
			||||||
 | 
					    geometry = "300x40-20+20"
 | 
				
			||||||
 | 
					    alignment = center
 | 
				
			||||||
 | 
					    show_age_threshold = 60
 | 
				
			||||||
 | 
					    sticky_history = yes
 | 
				
			||||||
 | 
					    follow = mouse
 | 
				
			||||||
 | 
					    icon_position = left
 | 
				
			||||||
 | 
					    word_wrap = yes
 | 
				
			||||||
 | 
					    separator_height = 2
 | 
				
			||||||
 | 
					    padding = 15
 | 
				
			||||||
 | 
					    horizontal_padding = 10
 | 
				
			||||||
 | 
					    separator_color = frame
 | 
				
			||||||
 | 
					    startup_notification = true
 | 
				
			||||||
 | 
					    dmenu = "/usr/bin/dmenu -p dunst: -nb #FFFFFF -nf #000000 -sb #94DBFF -sf #000000"
 | 
				
			||||||
 | 
					    browser = firefox
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[frame]
 | 
				
			||||||
 | 
					    width = 0
 | 
				
			||||||
 | 
					    color = "#565656"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[shortcuts]
 | 
				
			||||||
 | 
					    close = ctrl+space
 | 
				
			||||||
 | 
					    close_all = ctrl+shift+space
 | 
				
			||||||
 | 
					    history = ctrl+grave
 | 
				
			||||||
 | 
					    context = ctrl+shift+period
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_low]
 | 
				
			||||||
 | 
					    background = "#232323"
 | 
				
			||||||
 | 
					    foreground = "#FEFEFE"
 | 
				
			||||||
 | 
					    timeout = 30
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_normal]
 | 
				
			||||||
 | 
					    background = "#94DBFF"
 | 
				
			||||||
 | 
					    foreground = "#000000"
 | 
				
			||||||
 | 
					    timeout = 45
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_critical]
 | 
				
			||||||
 | 
					    background = "#ff9999"
 | 
				
			||||||
 | 
					    foreground = "#000000"
 | 
				
			||||||
 | 
					    timeout = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[libpurple_signed]
 | 
				
			||||||
 | 
					    appname = libpurple
 | 
				
			||||||
 | 
					    summary = *igned*
 | 
				
			||||||
 | 
					    urgency = low
 | 
				
			||||||
 | 
					    timeout = 3
 | 
				
			||||||
 | 
					    background = "#ccff33"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[libpurple_came_back]
 | 
				
			||||||
 | 
					    appname = libpurple
 | 
				
			||||||
 | 
					    summary = "*came*"
 | 
				
			||||||
 | 
					    format = ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[libpurple_went_away]
 | 
				
			||||||
 | 
					    appname = libpurple
 | 
				
			||||||
 | 
					    summary = "*went*"
 | 
				
			||||||
 | 
					    format = ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[libpurple_says]
 | 
				
			||||||
 | 
					    appname = libpurple
 | 
				
			||||||
 | 
					    summary = *ays*
 | 
				
			||||||
 | 
					    urgency = critical
 | 
				
			||||||
 | 
					    background = "#ccff33"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[libpurple]
 | 
				
			||||||
 | 
					    appname = libpurple
 | 
				
			||||||
 | 
					    urgency = critical
 | 
				
			||||||
 | 
					    background = "#ccff33"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[twitter]
 | 
				
			||||||
 | 
					    appname = Pidgin
 | 
				
			||||||
 | 
					    summary = *twitter.com*
 | 
				
			||||||
 | 
					    urgency = low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[turpial]
 | 
				
			||||||
 | 
					    appname = Turpial
 | 
				
			||||||
 | 
					    urgency = low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[ttytter]
 | 
				
			||||||
 | 
					    summary = "TTYtter*"
 | 
				
			||||||
 | 
					    urgency = low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[dunst-sum]
 | 
				
			||||||
 | 
					    appname = gmailnotify.py
 | 
				
			||||||
 | 
					    summary = "*[dD]unst*"
 | 
				
			||||||
 | 
					    urgency = critical
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[dunst-body]
 | 
				
			||||||
 | 
					    appname = gmailnotify.py
 | 
				
			||||||
 | 
					    body = "*[dD]unst*"
 | 
				
			||||||
 | 
					    urgency = critical
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[mcabber]
 | 
				
			||||||
 | 
					    appname = notify-send
 | 
				
			||||||
 | 
					    summary = "*jabber*"
 | 
				
			||||||
 | 
					    urgency = critical
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[irc]
 | 
				
			||||||
 | 
					    appname = weechat
 | 
				
			||||||
 | 
					    timeout = 0
 | 
				
			||||||
 | 
					    background = "#99FF33"
 | 
				
			||||||
 | 
					    foreground = "#000000"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[XChat]
 | 
				
			||||||
 | 
					    appname = XChat
 | 
				
			||||||
 | 
					    timeout = 0
 | 
				
			||||||
 | 
					    background = "#99FF33"
 | 
				
			||||||
 | 
					    foreground = "#000000"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[test]
 | 
				
			||||||
 | 
					    summary = "*test*"
 | 
				
			||||||
 | 
					    background="#22dd22"
 | 
				
			||||||
							
								
								
									
										4
									
								
								emacs.d/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								emacs.d/.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -1,4 +0,0 @@
 | 
				
			|||||||
*
 | 
					 | 
				
			||||||
!init.el
 | 
					 | 
				
			||||||
!config/
 | 
					 | 
				
			||||||
!config/config-*.el
 | 
					 | 
				
			||||||
@@ -1,25 +0,0 @@
 | 
				
			|||||||
(defun ergoemacs-open-in-external-app ()
 | 
					 | 
				
			||||||
  "Open the current file or dired marked files in external app."
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
  (let ( doIt
 | 
					 | 
				
			||||||
         (myFileList
 | 
					 | 
				
			||||||
          (cond
 | 
					 | 
				
			||||||
           ((string-equal major-mode "dired-mode") (dired-get-marked-files))
 | 
					 | 
				
			||||||
           (t (list (buffer-file-name))) ) ) )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    (setq doIt (if (<= (length myFileList) 5)
 | 
					 | 
				
			||||||
                   t
 | 
					 | 
				
			||||||
                 (y-or-n-p "Open more than 5 files?") ) )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    (when doIt
 | 
					 | 
				
			||||||
      (cond
 | 
					 | 
				
			||||||
       ((string-equal system-type "windows-nt")
 | 
					 | 
				
			||||||
        (mapc (lambda (fPath) (w32-shell-execute "open" (replace-regexp-in-string "/" "\\" fPath t t)) ) myFileList)
 | 
					 | 
				
			||||||
        )
 | 
					 | 
				
			||||||
       ((string-equal system-type "darwin")
 | 
					 | 
				
			||||||
        (mapc (lambda (fPath) (shell-command (format "open \"%s\"" fPath)) )  myFileList) )
 | 
					 | 
				
			||||||
       ((string-equal system-type "gnu/linux")
 | 
					 | 
				
			||||||
        (mapc (lambda (fPath) (let ((process-connection-type nil)) (start-process "" nil "xdg-open" fPath)) ) myFileList) ) ) ) ) )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-key dired-mode-map (kbd "e") 'ergoemacs-open-in-external-app)
 | 
					 | 
				
			||||||
(provide 'config-dired)
 | 
					 | 
				
			||||||
@@ -1,55 +0,0 @@
 | 
				
			|||||||
(evil-define-key 'normal ein:notebooklist-mode-map
 | 
					 | 
				
			||||||
  "r" 'ein:notebooklist-reload
 | 
					 | 
				
			||||||
  "q" 'bury-buffer)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(evil-define-key 'normal ein:notebook-mode-map
 | 
					 | 
				
			||||||
  ",w" 'ein:notebook-save-notebook-command
 | 
					 | 
				
			||||||
  ",cc" 'ein:worksheet-execute-cell
 | 
					 | 
				
			||||||
  ",e" 'ein:worksheet-clear-output
 | 
					 | 
				
			||||||
  ",v" 'ein:worksheet-set-output-visibility-all
 | 
					 | 
				
			||||||
  ",l" 'ein:worksheet-clear-output
 | 
					 | 
				
			||||||
  ",L" 'ein:worksheet-clear-all-output
 | 
					 | 
				
			||||||
  ",d" 'ein:worksheet-kill-cell
 | 
					 | 
				
			||||||
  ",y" 'ein:worksheet-copy-cell
 | 
					 | 
				
			||||||
  ",p" 'ein:worksheet-yank-cell
 | 
					 | 
				
			||||||
  ",O" 'ein:worksheet-insert-cell-above
 | 
					 | 
				
			||||||
  ",o" 'ein:worksheet-insert-cell-below
 | 
					 | 
				
			||||||
  "]e" 'ein:notebook-worksheet-move-next
 | 
					 | 
				
			||||||
  "[e" 'ein:notebook-worksheet-move-rev
 | 
					 | 
				
			||||||
  ",t" 'ein:worksheet-toggle-cell-type
 | 
					 | 
				
			||||||
  ",u" 'ein:worksheet-change-cell-type
 | 
					 | 
				
			||||||
  ",s" 'ein:worksheet-split-cell-at-point
 | 
					 | 
				
			||||||
  ",m" 'ein:worksheet-merge-cell
 | 
					 | 
				
			||||||
  "\C-n" 'ein:worksheet-goto-next-input
 | 
					 | 
				
			||||||
  "\C-p" 'ein:worksheet-goto-prev-input
 | 
					 | 
				
			||||||
  (kbd "<C-return>") 'ein:worksheet-execute-cell)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(evil-define-key 'insert ein:notebook-mode-map
 | 
					 | 
				
			||||||
  (kbd "<C-return>") 'ein:worksheet-execute-cell)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun ipybackground ()
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
  ;(setq prevfg (face-attribute 'default :foreground))
 | 
					 | 
				
			||||||
  (face-remap-add-relative 'ein:cell-input-area :background (face-attribute 'default :background))
 | 
					 | 
				
			||||||
  ;(face-remap-add-relative 'default :background "#ffffff")
 | 
					 | 
				
			||||||
   (setq buffer-face-mode-face '(:background "#343434"))
 | 
					 | 
				
			||||||
   (buffer-face-mode))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook
 | 
					 | 
				
			||||||
  'ein:notebook-mode-hook 'ipybackground)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; (add-hook
 | 
					 | 
				
			||||||
;;   'ein:notebook-mode-hook '(linum-mode 0))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq ein:notebook-modes '(ein:notebook-mumamo-mode ein:notebook-plain-mode))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq mumamo-background-colors nil)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(when (and (>= emacs-major-version 24)
 | 
					 | 
				
			||||||
           (>= emacs-minor-version 2))
 | 
					 | 
				
			||||||
  (eval-after-load "mumamo"
 | 
					 | 
				
			||||||
    '(setq mumamo-per-buffer-local-vars
 | 
					 | 
				
			||||||
           (delq 'buffer-file-name mumamo-per-buffer-local-vars)))) 
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide 'config-ein)
 | 
					 | 
				
			||||||
@@ -1,67 +0,0 @@
 | 
				
			|||||||
;;; config-evil.el --- Configuration for evil and its keybindings
 | 
					 | 
				
			||||||
;;; Commentary: 
 | 
					 | 
				
			||||||
;;; Code:
 | 
					 | 
				
			||||||
(evil-mode)
 | 
					 | 
				
			||||||
(require 'evil-leader)
 | 
					 | 
				
			||||||
(require 'evil-matchit)
 | 
					 | 
				
			||||||
(require 'evil-nerd-commenter)
 | 
					 | 
				
			||||||
(require 'evil-surround)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Evil global modes config
 | 
					 | 
				
			||||||
(evilnc-default-hotkeys)
 | 
					 | 
				
			||||||
(setq evil-default-cursor t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Evil global modes 
 | 
					 | 
				
			||||||
(global-evil-matchit-mode 1)
 | 
					 | 
				
			||||||
(global-evil-surround-mode 1)
 | 
					 | 
				
			||||||
(global-evil-jumper-mode)
 | 
					 | 
				
			||||||
(global-evil-leader-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; exclude modes from evil mode
 | 
					 | 
				
			||||||
(add-to-list 'evil-emacs-state-modes 'git-rebase-mode)
 | 
					 | 
				
			||||||
(add-to-list 'evil-emacs-state-modes 'undo-tree-visualizer-mode)
 | 
					 | 
				
			||||||
(add-to-list 'evil-emacs-state-modes 'dired-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun next-code-buffer ()
 | 
					 | 
				
			||||||
  ;;; Avoid special buffers when cycling through windows
 | 
					 | 
				
			||||||
  ;;; http://stackoverflow.com/questions/14323516/make-emacs-next-buffer-skip-messages-buffer
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
  (let (( bread-crumb (buffer-name) ))
 | 
					 | 
				
			||||||
    (next-buffer)
 | 
					 | 
				
			||||||
    (while
 | 
					 | 
				
			||||||
        (and
 | 
					 | 
				
			||||||
         (string-match-p "^\*" (buffer-name))
 | 
					 | 
				
			||||||
         (not ( equal bread-crumb (buffer-name) )) )
 | 
					 | 
				
			||||||
      (next-buffer))))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun previous-code-buffer ()
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
  (let (( bread-crumb (buffer-name) ))
 | 
					 | 
				
			||||||
    (previous-buffer)
 | 
					 | 
				
			||||||
    (while
 | 
					 | 
				
			||||||
        (and
 | 
					 | 
				
			||||||
         (string-match-p "^\*" (buffer-name))
 | 
					 | 
				
			||||||
         (not ( equal bread-crumb (buffer-name) )) )
 | 
					 | 
				
			||||||
      (previous-buffer))))
 | 
					 | 
				
			||||||
;;
 | 
					 | 
				
			||||||
;; Evil keys 
 | 
					 | 
				
			||||||
(evil-leader/set-leader "<SPC>")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "[b") 'previous-code-buffer)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "]b") 'next-code-buffer)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "s") 'evil-ace-jump-char-mode)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd ",d") 'neotree-toggle)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd ",u") 'undo-tree-visualize)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "C-c +") 'evil-numbers/inc-at-pt)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "C-c -") 'evil-numbers/dec-at-pt)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook 'neotree-mode-hook
 | 
					 | 
				
			||||||
          (lambda ()
 | 
					 | 
				
			||||||
            (define-key evil-normal-state-local-map (kbd "TAB") 'neotree-enter)
 | 
					 | 
				
			||||||
            (define-key evil-normal-state-local-map (kbd "SPC") 'neotree-enter)
 | 
					 | 
				
			||||||
            (define-key evil-normal-state-local-map (kbd "q") 'neotree-hide)
 | 
					 | 
				
			||||||
              (define-key evil-normal-state-local-map (kbd "RET") 'neotree-enter)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide 'config-evil)
 | 
					 | 
				
			||||||
;;; config-evil.el ends here
 | 
					 | 
				
			||||||
@@ -1,80 +0,0 @@
 | 
				
			|||||||
;;; config-file -- Helm configuration
 | 
					 | 
				
			||||||
;;; Commentary:
 | 
					 | 
				
			||||||
;;; The slowest part is actually loading helm-projectile
 | 
					 | 
				
			||||||
;;; Code:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(require 'helm)
 | 
					 | 
				
			||||||
(require 'helm-config)
 | 
					 | 
				
			||||||
(require 'helm-grep)
 | 
					 | 
				
			||||||
(require 'helm-locate)
 | 
					 | 
				
			||||||
(require 'helm-misc)
 | 
					 | 
				
			||||||
(require 'projectile)
 | 
					 | 
				
			||||||
(require 'helm-projectile)
 | 
					 | 
				
			||||||
(setq helm-quick-update t)
 | 
					 | 
				
			||||||
(setq helm-bookmark-show-location t)
 | 
					 | 
				
			||||||
(setq helm-buffers-fuzzy-matching t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Save current position to mark ring
 | 
					 | 
				
			||||||
(add-hook 'helm-goto-line-before-hook 'helm-save-current-pos-to-mark-ring)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Better helm fonts
 | 
					 | 
				
			||||||
(set-face-attribute 'helm-selection nil :background "gold" :foreground "black")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Keyboard mappings 
 | 
					 | 
				
			||||||
(define-key helm-map (kbd "<tab>") 'helm-execute-persistent-action) ; rebihnd tab to do persistent action
 | 
					 | 
				
			||||||
(define-key helm-map (kbd "C-i") 'helm-execute-persistent-action) ; make TAB works in terminal
 | 
					 | 
				
			||||||
(define-key helm-map (kbd "C-z") 'helm-select-action) ; list actions using C-z
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "<return>") 'helm-grep-mode-jump-other-window)
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "n") 'helm-grep-mode-jump-other-window-forward)
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "p") 'helm-grep-mode-jump-other-window-backward)
 | 
					 | 
				
			||||||
(global-set-key (kbd "M-y") 'helm-show-kill-ring)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-x b") 'helm-mini)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-x C-f") 'helm-find-files)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-h SPC") 'helm-all-mark-rings)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-c h o") 'helm-occur)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "<return>") 'helm-grep-mode-jump-other-window)
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "n") 'helm-grep-mode-jump-other-window-forward)
 | 
					 | 
				
			||||||
(define-key helm-grep-mode-map (kbd "p") 'helm-grep-mode-jump-other-window-backward)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Evil helm
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd "C-p") 'helm-mini)
 | 
					 | 
				
			||||||
(evil-leader/set-key "<SPC>" 'helm-M-x)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd ",f") 'helm-swoop)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd ",a") 'helm-ag)
 | 
					 | 
				
			||||||
(define-key evil-normal-state-map (kbd ",y") 'helm-show-kill-ring)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Keyboard
 | 
					 | 
				
			||||||
(global-set-key (kbd "M-x") 'helm-M-x)
 | 
					 | 
				
			||||||
(define-key helm-map (kbd "C-w") 'backward-kill-word)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; use helm to list eshell history
 | 
					 | 
				
			||||||
(add-hook 'eshell-mode-hook
 | 
					 | 
				
			||||||
          #'(lambda ()
 | 
					 | 
				
			||||||
              (define-key eshell-mode-map (kbd "M-l") 'helm-eshell-history)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
					 | 
				
			||||||
;; PACKAGE: helm-swoop ;;
 | 
					 | 
				
			||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
					 | 
				
			||||||
;; Locate the helm-swoop folder to your path
 | 
					 | 
				
			||||||
(require 'helm-swoop)
 | 
					 | 
				
			||||||
;; Change the keybinds to whatever you like :)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-c h o") 'helm-swoop)
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-c s") 'helm-multi-swoop-all)
 | 
					 | 
				
			||||||
;; When doing isearch, hand the word over to helm-swoop
 | 
					 | 
				
			||||||
(define-key isearch-mode-map (kbd "M-i") 'helm-swoop-from-isearch)
 | 
					 | 
				
			||||||
;; From helm-swoop to helm-multi-swoop-all
 | 
					 | 
				
			||||||
(define-key helm-swoop-map (kbd "M-i") 'helm-multi-swoop-all-from-helm-swoop)
 | 
					 | 
				
			||||||
;; Save buffer when helm-multi-swoop-edit complete
 | 
					 | 
				
			||||||
(setq helm-multi-swoop-edit-save t)
 | 
					 | 
				
			||||||
;; If this value is t, split window inside the current window
 | 
					 | 
				
			||||||
(setq helm-swoop-split-with-multiple-windows t)
 | 
					 | 
				
			||||||
;; Split direcion. 'split-window-vertically or 'split-window-horizontally
 | 
					 | 
				
			||||||
(setq helm-swoop-split-direction 'split-window-vertically)
 | 
					 | 
				
			||||||
;; If nil, you can slightly boost invoke speed in exchange for text color
 | 
					 | 
				
			||||||
(setq helm-swoop-speed-or-color t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(helm-mode 1)
 | 
					 | 
				
			||||||
(provide 'config-helm)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; config-helm.el ends here
 | 
					 | 
				
			||||||
@@ -1,38 +0,0 @@
 | 
				
			|||||||
(setq TeX-auto-save t)
 | 
					 | 
				
			||||||
(setq TeX-parse-self t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq-default TeX-master nil)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq TeX-view-program-list '(
 | 
					 | 
				
			||||||
;; ("Evince" "evince --page-index=%(outpage) %o"),
 | 
					 | 
				
			||||||
                            ("Okular" "okular --noraise --unique %o#src:%n%a")
 | 
					 | 
				
			||||||
))
 | 
					 | 
				
			||||||
;; (setq TeX-view-program-selection '((output-pdf "Evince")))
 | 
					 | 
				
			||||||
(setq TeX-view-program-selection '((output-pdf "Okular")))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq LaTeX-command "latex -synctex=1")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq TeX-source-correlate-method 'synctex)
 | 
					 | 
				
			||||||
;(setq TeX-one-master "<none>") ;; If you don't want emacs to write the variables to the file
 | 
					 | 
				
			||||||
(setq-default TeX-master nil) ;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Avoid questions :)
 | 
					 | 
				
			||||||
(defun build-view ()
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
  (let ((TeX-save-query nil)) 
 | 
					 | 
				
			||||||
    (TeX-save-document (TeX-master-file)))
 | 
					 | 
				
			||||||
  (setq build-proc (TeX-command "LaTeX" 'TeX-master-file -1))
 | 
					 | 
				
			||||||
  (set-process-sentinel  build-proc  'build-sentinel)
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun build-sentinel (process event)    
 | 
					 | 
				
			||||||
  (if (string= event "finished\n") 
 | 
					 | 
				
			||||||
    (TeX-view)
 | 
					 | 
				
			||||||
    (message "Errors! Check with C-`")))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook 'LaTeX-mode-hook '(lambda () (local-set-key (kbd "\C-c\C-c") 'build-view)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode)
 | 
					 | 
				
			||||||
(add-hook 'LaTeX-mode-hook 'reftex-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide 'config-latex)
 | 
					 | 
				
			||||||
@@ -1,20 +0,0 @@
 | 
				
			|||||||
(require 'org)
 | 
					 | 
				
			||||||
(require 'evil-org)
 | 
					 | 
				
			||||||
(define-key global-map "\C-cl" 'org-store-link)
 | 
					 | 
				
			||||||
(define-key global-map "\C-ca" 'org-agenda)
 | 
					 | 
				
			||||||
(evil-leader/set-key "a" 'org-agenda)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq org-log-done t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq org-directory "~/Dropbox/org")
 | 
					 | 
				
			||||||
(setq org-mobile-inbox-for-pull "~/Dropbox/org/inbox.org")
 | 
					 | 
				
			||||||
(setq org-mobile-directory "~/Dropbox/Apps/MobileOrg")
 | 
					 | 
				
			||||||
(setq org-mobile-files '("~/Dropbox/org"))
 | 
					 | 
				
			||||||
(setq org-default-notes-file (concat org-directory "/notes.org"))
 | 
					 | 
				
			||||||
(setq org-agenda-files (list org-directory))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-key global-map "\C-cc" 'org-capture)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq org-clock-persist 'history)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide 'config-org)
 | 
					 | 
				
			||||||
@@ -1,24 +0,0 @@
 | 
				
			|||||||
(require 'python)
 | 
					 | 
				
			||||||
(setq
 | 
					 | 
				
			||||||
  python-shell-interpreter "ipython"
 | 
					 | 
				
			||||||
  python-shell-interpreter-args "--pylab"
 | 
					 | 
				
			||||||
  python-shell-prompt-regexp "In \\[[0-9]+\\]: "
 | 
					 | 
				
			||||||
  python-shell-prompt-output-regexp "Out\\[[0-9]+\\]: "
 | 
					 | 
				
			||||||
  python-shell-completion-setup-code
 | 
					 | 
				
			||||||
    "from IPython.core.completerlib import module_completion"
 | 
					 | 
				
			||||||
  python-shell-completion-module-string-code
 | 
					 | 
				
			||||||
    "';'.join(module_completion('''%s'''))\n"
 | 
					 | 
				
			||||||
  python-shell-completion-string-code
 | 
					 | 
				
			||||||
    "';'.join(get_ipython().Completer.all_completions('''%s'''))\n")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook 'python-mode-hook 'auto-complete-mode)
 | 
					 | 
				
			||||||
(add-hook 'python-mode-hook '(lambda () (require 'nose)))
 | 
					 | 
				
			||||||
(add-hook 'python-mode-hook 'jedi:setup)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(eval-after-load "python"
 | 
					 | 
				
			||||||
  '(progn
 | 
					 | 
				
			||||||
     (define-key python-mode-map (kbd "C-c C-d") 'helm-pydoc)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq jedi:complete-on-dot t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide 'config-python)
 | 
					 | 
				
			||||||
							
								
								
									
										331
									
								
								emacs.d/init.el
									
									
									
									
									
								
							
							
						
						
									
										331
									
								
								emacs.d/init.el
									
									
									
									
									
								
							@@ -1,331 +0,0 @@
 | 
				
			|||||||
;;; BalkEmacs --- My emacs configuration
 | 
					 | 
				
			||||||
;;; Commentary:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Config that needs to be loaded before require
 | 
					 | 
				
			||||||
(custom-set-variables
 | 
					 | 
				
			||||||
 ;; custom-set-variables was added by Custom.
 | 
					 | 
				
			||||||
 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
					 | 
				
			||||||
 ;; Your init file should contain only one such instance.
 | 
					 | 
				
			||||||
 ;; If there is more than one, they won't work right.
 | 
					 | 
				
			||||||
 '(custom-safe-themes (quote ("8db4b03b9ae654d4a57804286eb3e332725c84d7cdab38463cb6b97d5762ad26" "31a01668c84d03862a970c471edbd377b2430868eccf5e8a9aec6831f1a0908d" "1297a022df4228b81bc0436230f211bad168a117282c20ddcba2db8c6a200743" "c3c0a3702e1d6c0373a0f6a557788dfd49ec9e66e753fb24493579859c8e95ab" "3c83b3676d796422704082049fc38b6966bcad960f896669dfc21a7a37a748fa" default))))
 | 
					 | 
				
			||||||
(custom-set-faces
 | 
					 | 
				
			||||||
 ;; custom-set-faces was added by Custom.
 | 
					 | 
				
			||||||
 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
					 | 
				
			||||||
 ;; Your init file should contain only one such instance.
 | 
					 | 
				
			||||||
 ;; If there is more than one, they won't work right.
 | 
					 | 
				
			||||||
 )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq evil-want-C-u-scroll t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Code:
 | 
					 | 
				
			||||||
(require 'package)
 | 
					 | 
				
			||||||
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-to-list 'load-path "~/.emacs.d/el-get/el-get")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq package-enable-at-startup nil)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(unless (require 'el-get nil 'noerror)
 | 
					 | 
				
			||||||
  (with-current-buffer
 | 
					 | 
				
			||||||
      (url-retrieve-synchronously
 | 
					 | 
				
			||||||
       "https://raw.github.com/dimitri/el-get/master/el-get-install.el")
 | 
					 | 
				
			||||||
    (goto-char (point-max))
 | 
					 | 
				
			||||||
    (eval-print-last-sexp)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-user/recipes")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq el-get-sources  
 | 
					 | 
				
			||||||
      '((:name molokai-theme
 | 
					 | 
				
			||||||
               :type github  
 | 
					 | 
				
			||||||
               :pkgname "hbin/molokai-theme"
 | 
					 | 
				
			||||||
               :load "molokai-theme.el")))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq
 | 
					 | 
				
			||||||
 my:el-get-packages
 | 
					 | 
				
			||||||
 '(el-get				; el-get is self-hosting
 | 
					 | 
				
			||||||
   ace-jump-mode
 | 
					 | 
				
			||||||
   auctex
 | 
					 | 
				
			||||||
   auctex-latexmk
 | 
					 | 
				
			||||||
   auto-complete			; complete as you type with overlays
 | 
					 | 
				
			||||||
   ein
 | 
					 | 
				
			||||||
   emmet-mode
 | 
					 | 
				
			||||||
  ; escreen            			; screen for emacs, C-\ C-h
 | 
					 | 
				
			||||||
   evil
 | 
					 | 
				
			||||||
   evil-jumper
 | 
					 | 
				
			||||||
   evil-leader
 | 
					 | 
				
			||||||
   evil-matchit
 | 
					 | 
				
			||||||
   evil-nerd-commenter
 | 
					 | 
				
			||||||
   evil-numbers
 | 
					 | 
				
			||||||
   evil-org-mode
 | 
					 | 
				
			||||||
   evil-surround
 | 
					 | 
				
			||||||
   exec-path-from-shell
 | 
					 | 
				
			||||||
   fill-column-indicator
 | 
					 | 
				
			||||||
   flycheck
 | 
					 | 
				
			||||||
   gist
 | 
					 | 
				
			||||||
   git-gutter-fringe
 | 
					 | 
				
			||||||
   guide-key
 | 
					 | 
				
			||||||
   helm
 | 
					 | 
				
			||||||
   helm-ag
 | 
					 | 
				
			||||||
   helm-projectile
 | 
					 | 
				
			||||||
   helm-pydoc
 | 
					 | 
				
			||||||
   helm-swoop
 | 
					 | 
				
			||||||
   jedi
 | 
					 | 
				
			||||||
   magit
 | 
					 | 
				
			||||||
   markdown-mode
 | 
					 | 
				
			||||||
   neotree
 | 
					 | 
				
			||||||
   nxhtml
 | 
					 | 
				
			||||||
   nose
 | 
					 | 
				
			||||||
   pivotal-tracker
 | 
					 | 
				
			||||||
   popwin
 | 
					 | 
				
			||||||
   pretty-mode
 | 
					 | 
				
			||||||
   projectile
 | 
					 | 
				
			||||||
   ;; smex
 | 
					 | 
				
			||||||
   smart-mode-line
 | 
					 | 
				
			||||||
   switch-window			; takes over C-x o
 | 
					 | 
				
			||||||
   undo-tree
 | 
					 | 
				
			||||||
   vimrc-mode
 | 
					 | 
				
			||||||
   volatile-highlights
 | 
					 | 
				
			||||||
   yaml-mode
 | 
					 | 
				
			||||||
   yasnippet
 | 
					 | 
				
			||||||
   zygospore
 | 
					 | 
				
			||||||
  ; zencoding-mode			; http://www.emacswiki.org/emacs/ZenCoding
 | 
					 | 
				
			||||||
   ;; color-theme-solarized
 | 
					 | 
				
			||||||
   ;; color-theme-tango))	                ; check out color-theme-olarized
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
   ;; install new packages and init already installed packages
 | 
					 | 
				
			||||||
))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq my:el-get-packages
 | 
					 | 
				
			||||||
      (append my:el-get-packages
 | 
					 | 
				
			||||||
              (mapcar #'el-get-source-name el-get-sources)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(require 'el-get-elpa)
 | 
					 | 
				
			||||||
(unless (file-directory-p el-get-recipe-path-elpa)
 | 
					 | 
				
			||||||
  (el-get-elpa-build-local-recipes))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(el-get 'sync my:el-get-packages)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;(color-theme-solarized-dark)
 | 
					 | 
				
			||||||
;(load-theme 'soothe t)
 | 
					 | 
				
			||||||
;;(require 'monokai-theme)
 | 
					 | 
				
			||||||
(load-theme 'molokai t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
 | 
					 | 
				
			||||||
;;(setq completion-cycle-threshold t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Neotree
 | 
					 | 
				
			||||||
(require 'neotree)
 | 
					 | 
				
			||||||
(setq projectile-switch-project-action 'neotree-projectile-action)
 | 
					 | 
				
			||||||
(when neo-persist-show
 | 
					 | 
				
			||||||
  (add-hook 'popwin:before-popup-hook
 | 
					 | 
				
			||||||
            (lambda () (setq neo-persist-show nil)))
 | 
					 | 
				
			||||||
  (add-hook 'popwin:after-popup-hook
 | 
					 | 
				
			||||||
            (lambda () (setq neo-persist-show t))))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Popwin
 | 
					 | 
				
			||||||
(require 'popwin)
 | 
					 | 
				
			||||||
(popwin-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Linum
 | 
					 | 
				
			||||||
(require 'linum)
 | 
					 | 
				
			||||||
(add-hook 'prog-mode-hook 'linum-mode)
 | 
					 | 
				
			||||||
(setq linum-format 'dynamic)
 | 
					 | 
				
			||||||
(set-face-attribute 'linum nil :height 90)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq highlight-color "#232323")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Show column number
 | 
					 | 
				
			||||||
(column-number-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Highlight line
 | 
					 | 
				
			||||||
(global-hl-line-mode)
 | 
					 | 
				
			||||||
(set-face-background 'hl-line highlight-color)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Flycheck
 | 
					 | 
				
			||||||
(add-hook 'after-init-hook #'global-flycheck-mode)
 | 
					 | 
				
			||||||
(setq flycheck-temp-prefix ".flycheck")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; (global-linum-mode 1)
 | 
					 | 
				
			||||||
;; (setq linum-mode-inhibit-modes-list '(eshell-mode
 | 
					 | 
				
			||||||
;;                                       helm-buffer
 | 
					 | 
				
			||||||
;;                                       shell-mode
 | 
					 | 
				
			||||||
;;                                       ein:notebook-bg-mode
 | 
					 | 
				
			||||||
;;                                       ein:bg/ein:notebook
 | 
					 | 
				
			||||||
;;                                       ein:bg
 | 
					 | 
				
			||||||
;;                                       ein:notebook
 | 
					 | 
				
			||||||
;;                                       ))
 | 
					 | 
				
			||||||
;; (defadvice linum-on (around linum-on-inhibit-for-modes)
 | 
					 | 
				
			||||||
;;   "Stop the load of linum-mode for some major modes."
 | 
					 | 
				
			||||||
;;     (unless (member major-mode linum-mode-inhibit-modes-list)
 | 
					 | 
				
			||||||
;;       ad-do-it))
 | 
					 | 
				
			||||||
;; (ad-activate 'linum-on)
 | 
					 | 
				
			||||||
(add-hook 'prog-mode-hook 'fci-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; (require 'powerline)
 | 
					 | 
				
			||||||
;; (powerline-center-evil-theme)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(sml/setup)
 | 
					 | 
				
			||||||
(sml/apply-theme 'dark)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(display-time-mode t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Global emacs settings
 | 
					 | 
				
			||||||
;; disable splash screen
 | 
					 | 
				
			||||||
(setq inhibit-splash-screen t)
 | 
					 | 
				
			||||||
(setq truncate-partial-width-windows nil)
 | 
					 | 
				
			||||||
(set-default 'truncate-lines nil)
 | 
					 | 
				
			||||||
;; No tabs, only 4 spaces, as default
 | 
					 | 
				
			||||||
(setq-default indent-tabs-mode nil)
 | 
					 | 
				
			||||||
(setq tab-width 4)
 | 
					 | 
				
			||||||
(setq default-tab-width 4); 
 | 
					 | 
				
			||||||
;; Show info about available commands
 | 
					 | 
				
			||||||
(setq guide-key/guide-key-sequence '("SPC" ","))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Separate Configs
 | 
					 | 
				
			||||||
(add-to-list 'load-path (concat user-emacs-directory "config"))
 | 
					 | 
				
			||||||
(require 'config-latex)
 | 
					 | 
				
			||||||
(require 'config-python)
 | 
					 | 
				
			||||||
(eval-after-load 'ein-notebooklist
 | 
					 | 
				
			||||||
                 '(require 'config-ein))
 | 
					 | 
				
			||||||
(require 'config-helm)
 | 
					 | 
				
			||||||
(require 'config-evil)
 | 
					 | 
				
			||||||
(require 'config-org)
 | 
					 | 
				
			||||||
(require 'config-secret)
 | 
					 | 
				
			||||||
(require 'config-dired)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Global modes
 | 
					 | 
				
			||||||
(tool-bar-mode 0)
 | 
					 | 
				
			||||||
(savehist-mode 1)
 | 
					 | 
				
			||||||
(show-paren-mode t)
 | 
					 | 
				
			||||||
(yas-global-mode 1)
 | 
					 | 
				
			||||||
(guide-key-mode 1)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Specific modes
 | 
					 | 
				
			||||||
;; (autoload 'markdown-mode "markdown-mode"
 | 
					 | 
				
			||||||
;; "Major mode for editing Markdown files" t)
 | 
					 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.text\\'" . markdown-mode))
 | 
					 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode))
 | 
					 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;
 | 
					 | 
				
			||||||
;; Global Keybindings
 | 
					 | 
				
			||||||
;; 
 | 
					 | 
				
			||||||
(global-set-key "\C-w" 'backward-kill-word)
 | 
					 | 
				
			||||||
(global-set-key "\C-x\C-k" 'kill-region)
 | 
					 | 
				
			||||||
(global-set-key [escape] 'keyboard-escape-quit) 
 | 
					 | 
				
			||||||
(define-key helm-map (kbd "C-w") 'backward-kill-word) 
 | 
					 | 
				
			||||||
(global-set-key (kbd "C-x 1") 'zygospore-toggle-delete-other-windows)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Don't clover my folders
 | 
					 | 
				
			||||||
(setq
 | 
					 | 
				
			||||||
   backup-by-copying t      ; don't clobber symlinks
 | 
					 | 
				
			||||||
   delete-old-versions t
 | 
					 | 
				
			||||||
   kept-new-versions 6
 | 
					 | 
				
			||||||
   kept-old-versions 2
 | 
					 | 
				
			||||||
   version-control t)       ; use versioned backups
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq backup-directory-alist
 | 
					 | 
				
			||||||
      `((".*" . ,temporary-file-directory)))
 | 
					 | 
				
			||||||
(setq auto-save-file-name-transforms
 | 
					 | 
				
			||||||
      `((".*" , temporary-file-directory t)))
 | 
					 | 
				
			||||||
;; Preven #file#.txt files
 | 
					 | 
				
			||||||
(setq create-lockfiles nil)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq inhibit-startup-message t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(toggle-indicate-empty-lines)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Columns
 | 
					 | 
				
			||||||
(require 'fill-column-indicator)
 | 
					 | 
				
			||||||
(setq fci-rule-column 79)
 | 
					 | 
				
			||||||
(setq fci-rule-color highlight-color)
 | 
					 | 
				
			||||||
(setq fci-rule-width 3)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(fringe-mode '(5 . 5))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(eval-after-load 'magit
 | 
					 | 
				
			||||||
  '(progn
 | 
					 | 
				
			||||||
     (set-face-foreground 'magit-diff-add "green3")
 | 
					 | 
				
			||||||
     (set-face-foreground 'magit-diff-del "red3")
 | 
					 | 
				
			||||||
     (set-face-background 'magit-item-highlight "black")))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Fix Scrolling in tmux
 | 
					 | 
				
			||||||
;; Set the default font too
 | 
					 | 
				
			||||||
(defun client-config (&optional frame)
 | 
					 | 
				
			||||||
  "Establish settings for the current terminal."
 | 
					 | 
				
			||||||
  (if (not frame) ;; The initial call.
 | 
					 | 
				
			||||||
      (xterm-mouse-mode 1)
 | 
					 | 
				
			||||||
    ;; Otherwise called via after-make-frame-functions.
 | 
					 | 
				
			||||||
    (if xterm-mouse-mode
 | 
					 | 
				
			||||||
        ;; Re-initialise the mode in case of a new terminal.
 | 
					 | 
				
			||||||
        (xterm-mouse-mode 1))))
 | 
					 | 
				
			||||||
;; Evaluate both now (for non-daemon emacs) and upon frame creation
 | 
					 | 
				
			||||||
;; (for new terminals via emacsclient).
 | 
					 | 
				
			||||||
(client-config)
 | 
					 | 
				
			||||||
(add-hook 'after-make-frame-functions 'client-config)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun toggle-current-window-dedication ()
 | 
					 | 
				
			||||||
 (interactive)
 | 
					 | 
				
			||||||
 (let* ((window    (selected-window))
 | 
					 | 
				
			||||||
        (dedicated (window-dedicated-p window)))
 | 
					 | 
				
			||||||
   (set-window-dedicated-p window (not dedicated))
 | 
					 | 
				
			||||||
   (message "Window %sdedicated to %s"
 | 
					 | 
				
			||||||
            (if dedicated "no longer " "")
 | 
					 | 
				
			||||||
            (buffer-name))))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(global-set-key [insert] 'toggle-current-window-dedication)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Disable copying to the clipboard
 | 
					 | 
				
			||||||
;; (setq x-select-enable-clipboard nil)
 | 
					 | 
				
			||||||
;; (setq x-select-enable-primary t)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Show human sizes in dired
 | 
					 | 
				
			||||||
(setq-default dired-listing-switches "-alhv")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defalias 'yes-or-no-p 'y-or-n-p)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;;; Winner
 | 
					 | 
				
			||||||
;;; History of visited windows
 | 
					 | 
				
			||||||
;;; C-<left>, C-<right>
 | 
					 | 
				
			||||||
(when (fboundp 'winner-mode)
 | 
					 | 
				
			||||||
    (winner-mode 1))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(exec-path-from-shell-initialize)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(require 'git-gutter-fringe)
 | 
					 | 
				
			||||||
(setq git-gutter-fr:side 'right-fringe)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; set a default font
 | 
					 | 
				
			||||||
(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-10"))
 | 
					 | 
				
			||||||
;; emacs doesn't actually save undo history with revert-buffer
 | 
					 | 
				
			||||||
;; see http://lists.gnu.org/archive/html/bug-gnu-emacs/2011-04/msg00151.html
 | 
					 | 
				
			||||||
;; fix that.
 | 
					 | 
				
			||||||
(defun revert-buffer-keep-history (&optional IGNORE-AUTO NOCONFIRM PRESERVE-MODES)
 | 
					 | 
				
			||||||
  (interactive)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  (setq tmp (point))
 | 
					 | 
				
			||||||
  ;; tell Emacs the modtime is fine, so we can edit the buffer
 | 
					 | 
				
			||||||
  (clear-visited-file-modtime)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ;; insert the current contents of the file on disk
 | 
					 | 
				
			||||||
  (widen)
 | 
					 | 
				
			||||||
  (delete-region (point-min) (point-max))
 | 
					 | 
				
			||||||
  (insert-file-contents (buffer-file-name))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ;; mark the buffer as not modified
 | 
					 | 
				
			||||||
  (not-modified)
 | 
					 | 
				
			||||||
  (set-visited-file-modtime)
 | 
					 | 
				
			||||||
  (goto-char tmp)
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(setq revert-buffer-function 'revert-buffer-keep-history)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(require 'recentf)
 | 
					 | 
				
			||||||
(recentf-mode 1)
 | 
					 | 
				
			||||||
(setq recentf-max-saved-items 300)
 | 
					 | 
				
			||||||
(setq recentf-max-menu-items 20)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(provide '.emacs)
 | 
					 | 
				
			||||||
							
								
								
									
										399
									
								
								emacs/#.spacemacs#
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										399
									
								
								emacs/#.spacemacs#
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,399 @@
 | 
				
			|||||||
 | 
					;; -*- mode: emacs-lisp -*-
 | 
				
			||||||
 | 
					;; This file is loaded by Spacemacs at startup.
 | 
				
			||||||
 | 
					;; It must be stored in your home directory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/layers ()
 | 
				
			||||||
 | 
					  "Configuration Layers declaration.
 | 
				
			||||||
 | 
					You should not put any user code in this function besides modifying the variable
 | 
				
			||||||
 | 
					values."
 | 
				
			||||||
 | 
					  (setq-default
 | 
				
			||||||
 | 
					   ;; Base distribution to use. This is a layer contained in the directory
 | 
				
			||||||
 | 
					   ;; `+distribution'. For now available distributions are `spacemacs-base'
 | 
				
			||||||
 | 
					   ;; or `spacemacs'. (default 'spacemacs)
 | 
				
			||||||
 | 
					   dotspacemacs-distribution 'spacemacs
 | 
				
			||||||
 | 
					   ;; Lazy installation of layers (i.e. layers are installed only when a file
 | 
				
			||||||
 | 
					   Podéis tomarOSddjk with a supported type is opened). Possible values are `all', `unused'
 | 
				
			||||||
 | 
					   ;; and `nil'. `unuemacs do not wrap linessed' will lazy install only unused layers (i.e. layers
 | 
				
			||||||
 | 
					   ;; not listed in variable `dotspacemacs-configuration-layers'), `all' will
 | 
				
			||||||
 | 
					   ;; lazy install any layer that support lazy installation even the layers
 | 
				
			||||||
 | 
					   ;; listed in `dotspacemacs-configuration-layers'. `nil' disable the lazy
 | 
				
			||||||
 | 
					   ;; installation feature and you have to explicitly list a layer in the
 | 
				
			||||||
 | 
					   ;; variable `dotspacemacs-configuration-layers' to install it.
 | 
				
			||||||
 | 
					   ;; (default 'unused)
 | 
				
			||||||
 | 
					   dotspacemacs-enable-lazy-installation 'unused
 | 
				
			||||||
 | 
					   ;; If non-nil then Spacemacs will ask for confirmation before installing
 | 
				
			||||||
 | 
					   ;; a layer lazily. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-ask-for-lazy-installation t
 | 
				
			||||||
 | 
					   ;; If non-nil layers with lazy install support are lazy installed.
 | 
				
			||||||
 | 
					   ;; List of additional paths where to look for configuration layers.
 | 
				
			||||||
 | 
					   ;; Paths must have a trailing slash (i.e. `~/.mycontribs/')
 | 
				
			||||||
 | 
					   dotspacemacs-configuration-layer-path '()
 | 
				
			||||||
 | 
					   ;; List of configuration layers to load.
 | 
				
			||||||
 | 
					   dotspacemacs-configuration-layers
 | 
				
			||||||
 | 
					   '(
 | 
				
			||||||
 | 
					     go
 | 
				
			||||||
 | 
					     clojure
 | 
				
			||||||
 | 
					     nginx
 | 
				
			||||||
 | 
					     csv
 | 
				
			||||||
 | 
					     javascript
 | 
				
			||||||
 | 
					     yaml
 | 
				
			||||||
 | 
					     html
 | 
				
			||||||
 | 
					     python
 | 
				
			||||||
 | 
					     (go :variables
 | 
				
			||||||
 | 
					         gofmt-command "goimports"
 | 
				
			||||||
 | 
					         )
 | 
				
			||||||
 | 
					     ;; ----------------------------------------------------------------
 | 
				
			||||||
 | 
					     ;; Example of useful layers you may want to use right away.
 | 
				
			||||||
 | 
					     ;; Uncomment some layer names and press <SPC f e R> (Vim style) or
 | 
				
			||||||
 | 
					     ;; <M-m f e R> (Emacs style) to install them.
 | 
				
			||||||
 | 
					     ;; ----------------------------------------------------------------
 | 
				
			||||||
 | 
					     helm
 | 
				
			||||||
 | 
					     (auto-completion :variables
 | 
				
			||||||
 | 
					                      auto-completion-return-key-behavior 'complete
 | 
				
			||||||
 | 
					                      auto-completion-tab-key-behavior 'cycle
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence nil
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence-delay 0.1
 | 
				
			||||||
 | 
					                      auto-completion-private-snippets-directory nil)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     ;; better-defaults
 | 
				
			||||||
 | 
					     emacs-lisp
 | 
				
			||||||
 | 
					     git
 | 
				
			||||||
 | 
					     latex
 | 
				
			||||||
 | 
					     markdown
 | 
				
			||||||
 | 
					     org
 | 
				
			||||||
 | 
					     themes-megapack
 | 
				
			||||||
 | 
					     (shell :variables
 | 
				
			||||||
 | 
					             shell-default-height 30
 | 
				
			||||||
 | 
					             shell-default-position 'bottom)
 | 
				
			||||||
 | 
					     spell-checking
 | 
				
			||||||
 | 
					     syntax-checking
 | 
				
			||||||
 | 
					     version-control
 | 
				
			||||||
 | 
					     yaml
 | 
				
			||||||
 | 
					     )
 | 
				
			||||||
 | 
					   ;; List of additional packages that will be installed without being
 | 
				
			||||||
 | 
					   ;; wrapped in a layer. If you need some configuration for these
 | 
				
			||||||
 | 
					   ;; packages, then consider creating a layer. You can also put the
 | 
				
			||||||
 | 
					   ;; configuration in `dotspacemacs/user-config'.
 | 
				
			||||||
 | 
					   dotspacemacs-additional-packages '()
 | 
				
			||||||
 | 
					   ;; A list of packages that cannot be updated.
 | 
				
			||||||
 | 
					   dotspacemacs-frozen-packages '()
 | 
				
			||||||
 | 
					   ;; A list of packages that will not be installed and loaded.
 | 
				
			||||||
 | 
					   dotspacemacs-excluded-packages '()
 | 
				
			||||||
 | 
					   ;; Defines the behaviour of Spacemacs when installing packages.
 | 
				
			||||||
 | 
					   ;; Possible values are `used-only', `used-but-keep-unused' and `all'.
 | 
				
			||||||
 | 
					   ;; `used-only' installs only explicitly used packages and uninstall any
 | 
				
			||||||
 | 
					   ;; unused packages as well as their unused dependencies.
 | 
				
			||||||
 | 
					   ;; `used-but-keep-unused' installs only the used packages but won't uninstall
 | 
				
			||||||
 | 
					   ;; them if they become unused. `all' installs *all* packages supported by
 | 
				
			||||||
 | 
					   ;; Spacemacs and never uninstall them. (default is `used-only')
 | 
				
			||||||
 | 
					   dotspacemacs-install-packages 'used-only))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/init ()
 | 
				
			||||||
 | 
					  "Initialization function.
 | 
				
			||||||
 | 
					This function is called at the very startup of Spacemacs initialization
 | 
				
			||||||
 | 
					before layers configuration.
 | 
				
			||||||
 | 
					You should not put any user code in there besides modifying the variable
 | 
				
			||||||
 | 
					values."
 | 
				
			||||||
 | 
					  ;; This setq-default sexp is an exhaustive list of all the supported
 | 
				
			||||||
 | 
					  ;; spacemacs settings.
 | 
				
			||||||
 | 
					  (setq-default
 | 
				
			||||||
 | 
					   ;; If non nil ELPA repositories are contacted via HTTPS whenever it's
 | 
				
			||||||
 | 
					   ;; possible. Set it to nil if you have no way to use HTTPS in your
 | 
				
			||||||
 | 
					   ;; environment, otherwise it is strongly recommended to let it set to t.
 | 
				
			||||||
 | 
					   ;; This variable has no effect if Emacs is launched with the parameter
 | 
				
			||||||
 | 
					   ;; `--insecure' which forces the value of this variable to nil.
 | 
				
			||||||
 | 
					   ;; (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-https t
 | 
				
			||||||
 | 
					   ;; Maximum allowed time in seconds to contact an ELPA repository.
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-timeout 5
 | 
				
			||||||
 | 
					   ;; If non nil then spacemacs will check for updates at startup
 | 
				
			||||||
 | 
					   ;; when the current branch is not `develop'. Note that checking for
 | 
				
			||||||
 | 
					   ;; new versions works via git commands, thus it calls GitHub services
 | 
				
			||||||
 | 
					   ;; whenever you start Emacs. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-check-for-update nil
 | 
				
			||||||
 | 
					   ;; If non-nil, a form that evaluates to a package directory. For example, to
 | 
				
			||||||
 | 
					   ;; use different package directories for different Emacs versions, set this
 | 
				
			||||||
 | 
					   ;; to `emacs-version'.
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-subdirectory nil
 | 
				
			||||||
 | 
					   ;; One of `vim', `emacs' or `hybrid'.
 | 
				
			||||||
 | 
					   ;; `hybrid' is like `vim' except that `insert state' is replaced by the
 | 
				
			||||||
 | 
					   ;; `hybrid state' with `emacs' key bindings. The value can also be a list
 | 
				
			||||||
 | 
					   ;; with `:variables' keyword (similar to layers). Check the editing styles
 | 
				
			||||||
 | 
					   ;; section of the documentation for details on available variables.
 | 
				
			||||||
 | 
					   ;; (default 'vim)
 | 
				
			||||||
 | 
					   dotspacemacs-editing-style 'vim
 | 
				
			||||||
 | 
					   ;; If non nil output loading progress in `*Messages*' buffer. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-verbose-loading nil
 | 
				
			||||||
 | 
					   ;; Specify the startup banner. Default value is `official', it displays
 | 
				
			||||||
 | 
					   ;; the official spacemacs logo. An integer value is the index of text
 | 
				
			||||||
 | 
					   ;; banner, `random' chooses a random text banner in `core/banners'
 | 
				
			||||||
 | 
					   ;; directory. A string value must be a path to an image format supported
 | 
				
			||||||
 | 
					   ;; by your Emacs build.
 | 
				
			||||||
 | 
					   ;; If the value is nil then no banner is displayed. (default 'official)
 | 
				
			||||||
 | 
					   dotspacemacs-startup-banner 'official
 | 
				
			||||||
 | 
					   ;; List of items to show in startup buffer or an association list of
 | 
				
			||||||
 | 
					   ;; the form `(list-type . list-size)`. If nil then it is disabled.
 | 
				
			||||||
 | 
					   ;; Possible values for list-type are:
 | 
				
			||||||
 | 
					   ;; `recents' `bookmarks' `projects' `agenda' `todos'."
 | 
				
			||||||
 | 
					   ;; List sizes may be nil, in which case
 | 
				
			||||||
 | 
					   ;; `spacemacs-buffer-startup-lists-length' takes effect.
 | 
				
			||||||
 | 
					   dotspacemacs-startup-lists '((recents . 5)
 | 
				
			||||||
 | 
					                                (projects . 7))
 | 
				
			||||||
 | 
					   ;; True if the home buffer should respond to resize events.
 | 
				
			||||||
 | 
					   dotspacemacs-startup-buffer-responsive t
 | 
				
			||||||
 | 
					   ;; Default major mode of the scratch buffer (default `text-mode')
 | 
				
			||||||
 | 
					   dotspacemacs-scratch-mode 'text-mode
 | 
				
			||||||
 | 
					   ;; List of themes, the first of the list is loaded when spacemacs starts.
 | 
				
			||||||
 | 
					   ;; Press <SPC> T n to cycle to the next theme in the list (works great
 | 
				
			||||||
 | 
					   ;; with 2 themes variants, one dark and one light)
 | 
				
			||||||
 | 
					   dotspacemacs-themes '(
 | 
				
			||||||
 | 
					                         leuven
 | 
				
			||||||
 | 
					                         spacemacs-dark
 | 
				
			||||||
 | 
					                         minimal-light
 | 
				
			||||||
 | 
					                         tango-plus
 | 
				
			||||||
 | 
					                         dichromacy
 | 
				
			||||||
 | 
					                         ample
 | 
				
			||||||
 | 
					                         sanityinc-tomorrow-night)
 | 
				
			||||||
 | 
					   ;; If non nil the cursor color matches the state color in GUI Emacs.
 | 
				
			||||||
 | 
					   dotspacemacs-colorize-cursor-according-to-state t
 | 
				
			||||||
 | 
					   ;; Default font, or prioritized list of fonts. `powerline-scale' allows to
 | 
				
			||||||
 | 
					   ;; quickly tweak the mode-line size to make separators look not too crappy.
 | 
				
			||||||
 | 
					   dotspacemacs-default-font '("DejaVu Sans Mono"
 | 
				
			||||||
 | 
					                               :size 14
 | 
				
			||||||
 | 
					                               :weight normal
 | 
				
			||||||
 | 
					                               :width normal
 | 
				
			||||||
 | 
					                               :powerline-scale 1.5)
 | 
				
			||||||
 | 
					   ;; The leader key
 | 
				
			||||||
 | 
					   dotspacemacs-leader-key "SPC"
 | 
				
			||||||
 | 
					   ;; The key used for Emacs commands (M-x) (after pressing on the leader key).
 | 
				
			||||||
 | 
					   ;; (default "SPC")
 | 
				
			||||||
 | 
					   dotspacemacs-emacs-command-key "SPC"
 | 
				
			||||||
 | 
					   ;; The key used for Vim Ex commands (default ":")
 | 
				
			||||||
 | 
					   dotspacemacs-ex-command-key ":"
 | 
				
			||||||
 | 
					   ;; The leader key accessible in `emacs state' and `insert state'
 | 
				
			||||||
 | 
					   ;; (default "M-m")
 | 
				
			||||||
 | 
					   dotspacemacs-emacs-leader-key "M-m"
 | 
				
			||||||
 | 
					   ;; Major mode leader key is a shortcut key which is the equivalent of
 | 
				
			||||||
 | 
					   ;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",")
 | 
				
			||||||
 | 
					   dotspacemacs-major-mode-leader-key ","
 | 
				
			||||||
 | 
					   ;; Major mode leader key accessible in `emacs state' and `insert state'.
 | 
				
			||||||
 | 
					   ;; (default "C-M-m")
 | 
				
			||||||
 | 
					   dotspacemacs-major-mode-emacs-leader-key "C-M-m"
 | 
				
			||||||
 | 
					   ;; These variables control whether separate commands are bound in the GUI to
 | 
				
			||||||
 | 
					   ;; the key pairs C-i, TAB and C-m, RET.
 | 
				
			||||||
 | 
					   ;; Setting it to a non-nil value, allows for separate commands under <C-i>
 | 
				
			||||||
 | 
					   ;; and TAB or <C-m> and RET.
 | 
				
			||||||
 | 
					   ;; In the terminal, these pairs are generally indistinguishable, so this only
 | 
				
			||||||
 | 
					   ;; works in the GUI. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-distinguish-gui-tab nil
 | 
				
			||||||
 | 
					   ;; If non nil `Y' is remapped to `y$' in Evil states. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-remap-Y-to-y$ nil
 | 
				
			||||||
 | 
					   ;; If non-nil, the shift mappings `<' and `>' retain visual state if used
 | 
				
			||||||
 | 
					   ;; there. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-retain-visual-state-on-shift t
 | 
				
			||||||
 | 
					   ;; If non-nil, J and K move lines up and down when in visual mode.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-visual-line-move-text nil
 | 
				
			||||||
 | 
					   ;; If non nil, inverse the meaning of `g' in `:substitute' Evil ex-command.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-ex-substitute-global nil
 | 
				
			||||||
 | 
					   ;; Name of the default layout (default "Default")
 | 
				
			||||||
 | 
					   dotspacemacs-default-layout-name "Default"
 | 
				
			||||||
 | 
					   ;; If non nil the default layout name is displayed in the mode-line.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-display-default-layout nil
 | 
				
			||||||
 | 
					   ;; If non nil then the last auto saved layouts are resume automatically upon
 | 
				
			||||||
 | 
					   ;; start. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-auto-resume-layouts nil
 | 
				
			||||||
 | 
					   ;; Size (in MB) above which spacemacs will prompt to open the large file
 | 
				
			||||||
 | 
					   ;; literally to avoid performance issues. Opening a file literally means that
 | 
				
			||||||
 | 
					   ;; no major mode or minor modes are active. (default is 1)
 | 
				
			||||||
 | 
					   dotspacemacs-large-file-size 1
 | 
				
			||||||
 | 
					   ;; Location where to auto-save files. Possible values are `original' to
 | 
				
			||||||
 | 
					   ;; auto-save the file in-place, `cache' to auto-save the file to another
 | 
				
			||||||
 | 
					   ;; file stored in the cache directory and `nil' to disable auto-saving.
 | 
				
			||||||
 | 
					   ;; (default 'cache)
 | 
				
			||||||
 | 
					   dotspacemacs-auto-save-file-location 'cache
 | 
				
			||||||
 | 
					   ;; Maximum number of rollback slots to keep in the cache. (default 5)
 | 
				
			||||||
 | 
					   dotspacemacs-max-rollback-slots 5
 | 
				
			||||||
 | 
					   ;; If non nil, `helm' will try to minimize the space it uses. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-resize nil
 | 
				
			||||||
 | 
					   ;; if non nil, the helm header is hidden when there is only one source.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-no-header nil
 | 
				
			||||||
 | 
					   ;; define the position to display `helm', options are `bottom', `top',
 | 
				
			||||||
 | 
					   ;; `left', or `right'. (default 'bottom)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-position 'bottom
 | 
				
			||||||
 | 
					   ;; Controls fuzzy matching in helm. If set to `always', force fuzzy matching
 | 
				
			||||||
 | 
					   ;; in all non-asynchronous sources. If set to `source', preserve individual
 | 
				
			||||||
 | 
					   ;; source settings. Else, disable fuzzy matching in all sources.
 | 
				
			||||||
 | 
					   ;; (default 'always)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-use-fuzzy 'always
 | 
				
			||||||
 | 
					   ;; If non nil the paste micro-state is enabled. When enabled pressing `p`
 | 
				
			||||||
 | 
					   ;; several times cycle between the kill ring content. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-enable-paste-transient-state nil
 | 
				
			||||||
 | 
					   ;; Which-key delay in seconds. The which-key buffer is the popup listing
 | 
				
			||||||
 | 
					   ;; the commands bound to the current keystroke sequence. (default 0.4)
 | 
				
			||||||
 | 
					   dotspacemacs-which-key-delay 0.4
 | 
				
			||||||
 | 
					   ;; Which-key frame position. Possible values are `right', `bottom' and
 | 
				
			||||||
 | 
					   ;; `right-then-bottom'. right-then-bottom tries to display the frame to the
 | 
				
			||||||
 | 
					   ;; right; if there is insufficient space it displays it at the bottom.
 | 
				
			||||||
 | 
					   ;; (default 'bottom)
 | 
				
			||||||
 | 
					   dotspacemacs-which-key-position 'bottom
 | 
				
			||||||
 | 
					   ;; If non nil a progress bar is displayed when spacemacs is loading. This
 | 
				
			||||||
 | 
					   ;; may increase the boot time on some systems and emacs builds, set it to
 | 
				
			||||||
 | 
					   ;; nil to boost the loading time. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-loading-progress-bar t
 | 
				
			||||||
 | 
					   ;; If non nil the frame is fullscreen when Emacs starts up. (default nil)
 | 
				
			||||||
 | 
					   ;; (Emacs 24.4+ only)
 | 
				
			||||||
 | 
					   dotspacemacs-fullscreen-at-startup nil
 | 
				
			||||||
 | 
					   ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen.
 | 
				
			||||||
 | 
					   ;; Use to disable fullscreen animations in OSX. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-fullscreen-use-non-native nil
 | 
				
			||||||
 | 
					   ;; If non nil the frame is maximized when Emacs starts up.
 | 
				
			||||||
 | 
					   ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil.
 | 
				
			||||||
 | 
					   ;; (default nil) (Emacs 24.4+ only)
 | 
				
			||||||
 | 
					   dotspacemacs-maximized-at-startup nil
 | 
				
			||||||
 | 
					   ;; A value from the range (0..100), in increasing opacity, which describes
 | 
				
			||||||
 | 
					   ;; the transparency level of a frame when it's active or selected.
 | 
				
			||||||
 | 
					   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
 | 
				
			||||||
 | 
					   dotspacemacs-active-transparency 90
 | 
				
			||||||
 | 
					   ;; A value from the range (0..100), in increasing opacity, which describes
 | 
				
			||||||
 | 
					   ;; the transparency level of a frame when it's inactive or deselected.
 | 
				
			||||||
 | 
					   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
 | 
				
			||||||
 | 
					   dotspacemacs-inactive-transparency 90
 | 
				
			||||||
 | 
					   ;; If non nil show the titles of transient states. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-show-transient-state-title t
 | 
				
			||||||
 | 
					   ;; If non nil show the color guide hint for transient state keys. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-show-transient-state-color-guide t
 | 
				
			||||||
 | 
					   ;; If non nil unicode symbols are displayed in the mode line. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-mode-line-unicode-symbols t
 | 
				
			||||||
 | 
					   ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
 | 
				
			||||||
 | 
					   ;; scrolling overrides the default behavior of Emacs which recenters point
 | 
				
			||||||
 | 
					   ;; when it reaches the top or bottom of the screen. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-smooth-scrolling t
 | 
				
			||||||
 | 
					   ;; Control line numbers activation.
 | 
				
			||||||
 | 
					   ;; If set to `t' or `relative' line numbers are turned on in all `prog-mode' and
 | 
				
			||||||
 | 
					   ;; `text-mode' derivatives. If set to `relative', line numbers are relative.
 | 
				
			||||||
 | 
					   ;; This variable can also be set to a property list for finer control:
 | 
				
			||||||
 | 
					   ;; '(:relative nil
 | 
				
			||||||
 | 
					   ;;   :disabled-for-modes dired-mode
 | 
				
			||||||
 | 
					   ;;                       doc-view-mode
 | 
				
			||||||
 | 
					   ;;                       markdown-mode
 | 
				
			||||||
 | 
					   ;;                       org-mode
 | 
				
			||||||
 | 
					   ;;                       pdf-view-mode
 | 
				
			||||||
 | 
					   ;;                       text-mode
 | 
				
			||||||
 | 
					   ;;   :size-limit-kb 1000)
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-line-numbers t
 | 
				
			||||||
 | 
					   ;; Code folding method. Possible values are `evil' and `origami'.
 | 
				
			||||||
 | 
					   ;; (default 'evil)
 | 
				
			||||||
 | 
					   dotspacemacs-folding-method 'evil
 | 
				
			||||||
 | 
					   ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-smartparens-strict-mode nil
 | 
				
			||||||
 | 
					   ;; If non-nil pressing the closing parenthesis `)' key in insert mode passes
 | 
				
			||||||
 | 
					   ;; over any automatically added closing parenthesis, bracket, quote, etc…
 | 
				
			||||||
 | 
					   ;; This can be temporary disabled by pressing `C-q' before `)'. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-smart-closing-parenthesis nil
 | 
				
			||||||
 | 
					   ;; Select a scope to highlight delimiters. Possible values are `any',
 | 
				
			||||||
 | 
					   ;; `current', `all' or `nil'. Default is `all' (highlight any scope and
 | 
				
			||||||
 | 
					   ;; emphasis the current one). (default 'all)
 | 
				
			||||||
 | 
					   dotspacemacs-highlight-delimiters 'all
 | 
				
			||||||
 | 
					   ;; If non nil, advise quit functions to keep server open when quitting.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-persistent-server nil
 | 
				
			||||||
 | 
					   ;; List of search tool executable names. Spacemacs uses the first installed
 | 
				
			||||||
 | 
					   ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'.
 | 
				
			||||||
 | 
					   ;; (default '("ag" "pt" "ack" "grep"))
 | 
				
			||||||
 | 
					   dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
 | 
				
			||||||
 | 
					   ;; The default package repository used if no explicit repository has been
 | 
				
			||||||
 | 
					   ;; specified with an installed package.
 | 
				
			||||||
 | 
					   ;; Not used for now. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-default-package-repository nil
 | 
				
			||||||
 | 
					   ;; Delete whitespace while saving buffer. Possible values are `all'
 | 
				
			||||||
 | 
					   ;; to aggressively delete empty line and long sequences of whitespace,
 | 
				
			||||||
 | 
					   ;; `trailing' to delete only the whitespace at end of lines, `changed'to
 | 
				
			||||||
 | 
					   ;; delete only whitespace for changed lines or `nil' to disable cleanup.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-whitespace-cleanup nil
 | 
				
			||||||
 | 
					   ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/user-init ()
 | 
				
			||||||
 | 
					  "Initialization function for user code.
 | 
				
			||||||
 | 
					It is called immediately after `dotspacemacs/init', before layer configuration
 | 
				
			||||||
 | 
					executes.
 | 
				
			||||||
 | 
					 This function is mostly useful for variables that need to be set
 | 
				
			||||||
 | 
					before packages are loaded. If you are unsure, you should try in setting them in
 | 
				
			||||||
 | 
					`dotspacemacs/user-config' first."
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/user-config ()
 | 
				
			||||||
 | 
					  "Configuration function for user code.
 | 
				
			||||||
 | 
					This function is called at the very end of Spacemacs initialization after
 | 
				
			||||||
 | 
					layers configuration.
 | 
				
			||||||
 | 
					This is the place where most of your configurations should be done. Unless it is
 | 
				
			||||||
 | 
					explicitly specified that a variable should be set before a package is loaded,
 | 
				
			||||||
 | 
					you should place your code here."
 | 
				
			||||||
 | 
					  (with-eval-after-load 'helm
 | 
				
			||||||
 | 
					    (define-key helm-map (kbd "C-w") 'evil-delete-backward-word)
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					  ;; Launch terminal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (defun open-terminal ()
 | 
				
			||||||
 | 
					    "Open a terminal in the current working directory."
 | 
				
			||||||
 | 
					    (interactive)
 | 
				
			||||||
 | 
					    (call-process (or (getenv "XTERMINAL") "xterm") nil 0 nil))
 | 
				
			||||||
 | 
					  ;; This does not work: (concat "echo -c 'cd " default-directory "'"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (global-set-key (kbd "C-c t") 'open-terminal)
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Do not write anything past this comment. This is where Emacs will
 | 
				
			||||||
 | 
					;; auto-generate custom variable definitions.
 | 
				
			||||||
 | 
					(custom-set-variables
 | 
				
			||||||
 | 
					 ;; custom-set-variables was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 '(ansi-color-faces-vector
 | 
				
			||||||
 | 
					   [default bold shadow italic underline bold bold-italic bold])
 | 
				
			||||||
 | 
					 '(beacon-color "#cc6666")
 | 
				
			||||||
 | 
					 '(custom-safe-themes
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ("3e335d794ed3030fefd0dbd7ff2d3555e29481fe4bbb0106ea11c660d6001767" "cc0dbb53a10215b696d391a90de635ba1699072745bf653b53774706999208e3" "ed317c0a3387be628a48c4bbdb316b4fa645a414838149069210b66dd521733f" "938d8c186c4cb9ec4a8d8bc159285e0d0f07bad46edf20aa469a89d0d2a586ea" "fa2b58bb98b62c3b8cf3b6f02f058ef7827a8e497125de0254f56e373abee088" "bffa9739ce0752a37d9b1eee78fc00ba159748f50dc328af4be661484848e476" default)))
 | 
				
			||||||
 | 
					 '(evil-want-Y-yank-to-eol nil)
 | 
				
			||||||
 | 
					 '(fci-rule-color "#373b41" t)
 | 
				
			||||||
 | 
					 '(flycheck-color-mode-line-face-to-color (quote mode-line-buffer-id))
 | 
				
			||||||
 | 
					 '(frame-background-mode (quote dark))
 | 
				
			||||||
 | 
					 '(package-selected-packages
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    (zenburn-theme zen-and-art-theme underwater-theme ujelly-theme twilight-theme twilight-bright-theme twilight-anti-bright-theme toxi-theme tao-theme tangotango-theme tango-plus-theme tango-2-theme sunny-day-theme sublime-themes subatomic256-theme subatomic-theme spacegray-theme soothe-theme solarized-theme soft-stone-theme soft-morning-theme soft-charcoal-theme smyx-theme seti-theme reverse-theme railscasts-theme purple-haze-theme professional-theme planet-theme phoenix-dark-pink-theme phoenix-dark-mono-theme organic-green-theme omtose-phellack-theme oldlace-theme occidental-theme obsidian-theme noctilux-theme naquadah-theme mustang-theme monokai-theme monochrome-theme molokai-theme moe-theme minimal-theme material-theme majapahit-theme madhat2r-theme lush-theme light-soap-theme jbeans-theme jazz-theme ir-black-theme clojure-snippets clj-refactor inflections edn paredit peg cider-eval-sexp-fu cider seq queue clojure-mode nginx-mode auctex-latexmk company-auctex auctex csv-mode web-beautify livid-mode skewer-mode simple-httpd json-mode json-snatcher json-reformat js2-refactor multiple-cursors js2-mode js-doc company-tern dash-functional tern coffee-mode yaml-mode helm-company helm-c-yasnippet fuzzy company-web web-completion-data company-statistics company-go company-anaconda company auto-yasnippet yasnippet ac-ispell auto-complete web-mode tagedit slim-mode scss-mode sass-mode pug-mode less-css-mode helm-css-scss haml-mode emmet-mode smeargle orgit magit-gitflow helm-gitignore gitignore-mode gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link evil-magit magit magit-popup xterm-color shell-pop org-projectile org-category-capture org-present org-pomodoro alert log4e gntp org-download multi-term mmm-mode markdown-toc markdown-mode htmlize gnuplot git-gutter-fringe+ git-gutter-fringe fringe-helper git-gutter+ git-commit with-editor git-gutter gh-md flyspell-correct-helm flyspell-correct flycheck-pos-tip pos-tip flycheck eshell-z eshell-prompt-extras esh-help diff-hl auto-dictionary yapfify pyvenv pytest pyenv-mode py-isort pip-requirements live-py-mode hy-mode helm-pydoc cython-mode anaconda-mode pythonic go-guru go-eldoc go-mode ws-butler winum which-key volatile-highlights vi-tilde-fringe uuidgen use-package toc-org spaceline powerline restart-emacs request rainbow-delimiters popwin persp-mode pcre2el paradox spinner org-plus-contrib org-bullets open-junk-file neotree move-text macrostep lorem-ipsum linum-relative link-hint info+ indent-guide hydra hungry-delete hl-todo highlight-parentheses highlight-numbers parent-mode highlight-indentation hide-comnt help-fns+ helm-themes helm-swoop helm-projectile helm-mode-manager helm-make projectile pkg-info epl helm-flx helm-descbinds helm-ag google-translate golden-ratio flx-ido flx fill-column-indicator fancy-battery eyebrowse expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-lisp-state smartparens evil-indent-plus evil-iedit-state iedit evil-exchange evil-escape evil-ediff evil-args evil-anzu anzu evil goto-chg undo-tree eval-sexp-fu highlight elisp-slime-nav dumb-jump f s diminish define-word column-enforce-mode clean-aindent-mode bind-map bind-key auto-highlight-symbol auto-compile packed dash aggressive-indent adaptive-wrap ace-window ace-link ace-jump-helm-line helm avy helm-core popup async)))
 | 
				
			||||||
 | 
					 '(vc-annotate-background nil)
 | 
				
			||||||
 | 
					 '(vc-annotate-color-map
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ((20 . "#cc6666")
 | 
				
			||||||
 | 
					     (40 . "#de935f")
 | 
				
			||||||
 | 
					     (60 . "#f0c674")
 | 
				
			||||||
 | 
					     (80 . "#b5bd68")
 | 
				
			||||||
 | 
					     (100 . "#8abeb7")
 | 
				
			||||||
 | 
					     (120 . "#81a2be")
 | 
				
			||||||
 | 
					     (140 . "#b294bb")
 | 
				
			||||||
 | 
					     (160 . "#cc6666")
 | 
				
			||||||
 | 
					     (180 . "#de935f")
 | 
				
			||||||
 | 
					     (200 . "#f0c674")
 | 
				
			||||||
 | 
					     (220 . "#b5bd68")
 | 
				
			||||||
 | 
					     (240 . "#8abeb7")
 | 
				
			||||||
 | 
					     (260 . "#81a2be")
 | 
				
			||||||
 | 
					     (280 . "#b294bb")
 | 
				
			||||||
 | 
					     (300 . "#cc6666")
 | 
				
			||||||
 | 
					     (320 . "#de935f")
 | 
				
			||||||
 | 
					     (340 . "#f0c674")
 | 
				
			||||||
 | 
					     (360 . "#b5bd68"))))
 | 
				
			||||||
 | 
					 '(vc-annotate-very-old-color nil))
 | 
				
			||||||
 | 
					(custom-set-faces
 | 
				
			||||||
 | 
					 ;; custom-set-faces was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 '(default ((t (:background nil)))))
 | 
				
			||||||
							
								
								
									
										3
									
								
								emacs/.emacs.d/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								emacs/.emacs.d/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					*
 | 
				
			||||||
 | 
					!init.el
 | 
				
			||||||
 | 
					!custom.el
 | 
				
			||||||
							
								
								
									
										23
									
								
								emacs/.emacs.d/custom.el
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								emacs/.emacs.d/custom.el
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					(custom-set-variables
 | 
				
			||||||
 | 
					 ;; custom-set-variables was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 '(ansi-color-names-vector
 | 
				
			||||||
 | 
					   ["#101010" "#7c7c7c" "#8e8e8e" "#a0a0a0" "#686868" "#747474" "#686868" "#b9b9b9"])
 | 
				
			||||||
 | 
					 '(ansi-term-color-vector
 | 
				
			||||||
 | 
					   [unspecified "#101010" "#7c7c7c" "#8e8e8e" "#a0a0a0" "#686868" "#747474" "#686868" "#b9b9b9"])
 | 
				
			||||||
 | 
					 '(custom-safe-themes
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ("aea30125ef2e48831f46695418677b9d676c3babf43959c8e978c0ad672a7329" "cea3ec09c821b7eaf235882e6555c3ffa2fd23de92459751e18f26ad035d2142" "3380a2766cf0590d50d6366c5a91e976bdc3c413df963a0ab9952314b4577299" "100eeb65d336e3d8f419c0f09170f9fd30f688849c5e60a801a1e6addd8216cb" "3f67aee8f8d8eedad7f547a346803be4cc47c420602e19d88bdcccc66dba033b" "c968804189e0fc963c641f5c9ad64bca431d41af2fb7e1d01a2a6666376f819c" "50d07ab55e2b5322b2a8b13bc15ddf76d7f5985268833762c500a90e2a09e7aa" "4feee83c4fbbe8b827650d0f9af4ba7da903a5d117d849a3ccee88262805f40d" "fee4e306d9070a55dce4d8e9d92d28bd9efe92625d2ba9d4d654fc9cd8113b7f" "6daa09c8c2c68de3ff1b83694115231faa7e650fdbb668bc76275f0f2ce2a437" "1263771faf6967879c3ab8b577c6c31020222ac6d3bac31f331a74275385a452" "ec13410d459f1b67158c500d13d290560fc4dad2edaaa22e33a4d1df08e8f887" "34ed3e2fa4a1cb2ce7400c7f1a6c8f12931d8021435bad841fdc1192bd1cc7da" "8cf1002c7f805360115700144c0031b9cfa4d03edc6a0f38718cef7b7cabe382" "12670281275ea7c1b42d0a548a584e23b9c4e1d2dabb747fd5e2d692bcd0d39b" "21e380db38e92e8c0e56e0a2446f7ac8f6851061b57ffbcadb284ffe4c102478" "91fba9a99f7b64390e1f56319c3dbbaed22de1b9676b3c73d935bf62277b799c" "b1bcb837df0455af8e91114b7a3bddfa084cde32ceb16b1b468d5e5e8605a835" "e24679edfdea016519c0e2d4a5e57157a11f928b7ef4361d00c23a7fe54b8e01" "9f6750057fefba39c184783c7b80ddd9c63bc6e8064846b423b4362c9e930404" "d43120398682953ef18fd7e11e69c94e44d39bb2ab450c4e64815311542acbff" "b4ec581daad15aa7020b722523dc6bcea850bfbdbe31bfeb11c45ea51899bd75" "3a3917dbcc6571ef3942c2bf4c4240f70b5c4bc0b28192be6d3f9acd83607a24" "b6db49cec08652adf1ff2341ce32c7303be313b0de38c621676122f255ee46db" "b6d649c9f972b491686e7fa634535653e6222c1faca1ab71b3117854470a79ae" "0ae52e74c576120c6863403922ee00340a3bf3051615674c4b937f9c99b24535" "b2028956188cf668e27a130c027e7f240c24c705c1517108b98a9645644711d9" "03e3e79fb2b344e41a7df897818b7969ca51a15a67dc0c30ebbdeb9ea2cd4492" "232f715279fc131ed4facf6a517b84d23dca145fcc0e09c5e0f90eb534e1680f" "aed73c6d0afcf2232bb25ed2d872c7a1c4f1bda6759f84afc24de6a1aec93da8" "0b6645497e51d80eda1d337d6cabe31814d6c381e69491931a688836c16137ed" "cdfb22711f64d0e665f40b2607879fcf2607764b2b70d672ddaa26d2da13049f" "196cc00960232cfc7e74f4e95a94a5977cb16fd28ba7282195338f68c84058ec" default)))
 | 
				
			||||||
 | 
					 '(global-hl-line-mode t)
 | 
				
			||||||
 | 
					 '(package-selected-packages
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    (package-build yafolding origami-mode highlight-indent-guides indent-guide go-dlv quelpa avy avy-mode github-theme base16-theme hlinum glab neotree evil-magit docker password-store gitlab flycheck-cask ensime scala-mode yasnippet yaml-mode slime quelpa-use-package ob-ipython nose n3-mode monokai-theme markdown-mode magit jedi helm-swoop helm-projectile helm-descbinds helm-ag guide-key go-mode go-autocomplete gist flymake-go flycheck exec-path-from-shell evil-surround evil-smartparens evil-paredit evil-org evil-nerd-commenter evil-mu4e evil-matchit evil-leader evil-jumper ein clojure-mode auctex ace-jump-mode)))
 | 
				
			||||||
 | 
					 '(safe-local-variable-values (quote ((TeX-command-extra-options . "-shell-escape")))))
 | 
				
			||||||
 | 
					(custom-set-faces
 | 
				
			||||||
 | 
					 ;; custom-set-faces was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 )
 | 
				
			||||||
							
								
								
									
										854
									
								
								emacs/.emacs.d/init.el
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										854
									
								
								emacs/.emacs.d/init.el
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,854 @@
 | 
				
			|||||||
 | 
					;;; BalkEmacs --- My emacs configuration
 | 
				
			||||||
 | 
					;;; Commentary:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq custom-file "~/.emacs.d/custom.el")
 | 
				
			||||||
 | 
					(load custom-file 'noerror)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(package-initialize)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(require 'package)
 | 
				
			||||||
 | 
					(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
 | 
				
			||||||
 | 
					(add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/") t)
 | 
				
			||||||
 | 
					(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq quelpa-checkout-melpa-p nil)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(unless (package-installed-p 'quelpa)
 | 
				
			||||||
 | 
					    (with-temp-buffer
 | 
				
			||||||
 | 
					      (url-insert-file-contents "https://github.com/quelpa/quelpa/raw/master/quelpa.el")
 | 
				
			||||||
 | 
					      (eval-buffer)
 | 
				
			||||||
 | 
					      (quelpa-self-upgrade)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(require 'quelpa nil t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(unless (package-installed-p 'use-package)
 | 
				
			||||||
 | 
					  (package-refresh-contents)
 | 
				
			||||||
 | 
					  (package-install 'use-package))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(eval-when-compile
 | 
				
			||||||
 | 
					  (require 'use-package))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;(quelpa 'use-package)
 | 
				
			||||||
 | 
					;;                                        ;'(use-package
 | 
				
			||||||
 | 
					;;                                        ;:fetcher github
 | 
				
			||||||
 | 
					;;                                        ;:repo "quelpa/quelpa-use-package"))
 | 
				
			||||||
 | 
					(require 'use-package)
 | 
				
			||||||
 | 
					(quelpa
 | 
				
			||||||
 | 
					 '(quelpa-use-package
 | 
				
			||||||
 | 
					   :fetcher github
 | 
				
			||||||
 | 
					   :repo "quelpa/quelpa-use-package"))
 | 
				
			||||||
 | 
					(require 'quelpa-use-package)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(eval-when-compile (require 'cl))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package evil
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :init (progn
 | 
				
			||||||
 | 
					          (setq evil-want-C-u-scroll t)
 | 
				
			||||||
 | 
					          )
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (evil-mode)
 | 
				
			||||||
 | 
					            (use-package evil-leader :ensure)
 | 
				
			||||||
 | 
					            (use-package evil-matchit :ensure)
 | 
				
			||||||
 | 
					            (use-package neotree :ensure)
 | 
				
			||||||
 | 
					            (use-package evil-nerd-commenter
 | 
				
			||||||
 | 
					              :ensure
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        (evilnc-default-hotkeys)
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            (use-package evil-surround :ensure)
 | 
				
			||||||
 | 
					            (use-package avy :ensure)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; Evil global modes config
 | 
				
			||||||
 | 
					            (evilnc-default-hotkeys)
 | 
				
			||||||
 | 
					            (setq evil-default-cursor t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; Evil global modes 
 | 
				
			||||||
 | 
					            (global-evil-jumper-mode 1)
 | 
				
			||||||
 | 
					            (global-evil-surround-mode 1)
 | 
				
			||||||
 | 
					            (global-evil-leader-mode)
 | 
				
			||||||
 | 
					            (global-evil-matchit-mode 1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; exclude modes from evil mode
 | 
				
			||||||
 | 
					            (add-to-list 'evil-emacs-state-modes 'git-rebase-mode)
 | 
				
			||||||
 | 
					            (add-to-list 'evil-emacs-state-modes 'undo-tree-visualizer-mode)
 | 
				
			||||||
 | 
					            (add-to-list 'evil-emacs-state-modes 'dired-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; Neo
 | 
				
			||||||
 | 
					            (defun neotree-project-dir-toggle ()
 | 
				
			||||||
 | 
					              "Open NeoTree using the project root, using find-file-in-project,
 | 
				
			||||||
 | 
					or the current buffer directory."
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (let ((project-dir
 | 
				
			||||||
 | 
					                     (ignore-errors
 | 
				
			||||||
 | 
					                       (projectile-project-root)
 | 
				
			||||||
 | 
					                       ))
 | 
				
			||||||
 | 
					                    (file-name (buffer-file-name))
 | 
				
			||||||
 | 
					                    (neo-smart-open t))
 | 
				
			||||||
 | 
					                (if (and (fboundp 'neo-global--window-exists-p)
 | 
				
			||||||
 | 
					                         (neo-global--window-exists-p))
 | 
				
			||||||
 | 
					                    (neotree-hide)
 | 
				
			||||||
 | 
					                  (progn
 | 
				
			||||||
 | 
					                    (neotree-show)
 | 
				
			||||||
 | 
					                    (if project-dir
 | 
				
			||||||
 | 
					                        (neotree-dir project-dir))
 | 
				
			||||||
 | 
					                    (if file-name
 | 
				
			||||||
 | 
					                        (neotree-find file-name))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (defun next-code-buffer ()
 | 
				
			||||||
 | 
					                  ;;; Avoid special buffers when cycling through windows
 | 
				
			||||||
 | 
					                  ;;; http://stackoverflow.com/questions/14323516/make-emacs-next-buffer-skip-messages-buffer
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (let (( bread-crumb (buffer-name) ))
 | 
				
			||||||
 | 
					                (next-buffer)
 | 
				
			||||||
 | 
					                (while
 | 
				
			||||||
 | 
					                    (and
 | 
				
			||||||
 | 
					                     (string-match-p "^\*" (buffer-name))
 | 
				
			||||||
 | 
					                     (not ( equal bread-crumb (buffer-name) )) )
 | 
				
			||||||
 | 
					                  (next-buffer))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (defun previous-code-buffer ()
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (let (( bread-crumb (buffer-name) ))
 | 
				
			||||||
 | 
					                (previous-buffer)
 | 
				
			||||||
 | 
					                (while
 | 
				
			||||||
 | 
					                    (and
 | 
				
			||||||
 | 
					                     (string-match-p "^\*" (buffer-name))
 | 
				
			||||||
 | 
					                     (not ( equal bread-crumb (buffer-name) )) )
 | 
				
			||||||
 | 
					                  (previous-buffer))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; change mode-line color by evil state
 | 
				
			||||||
 | 
					            (lexical-let ((default-color (cons (face-background 'mode-line)
 | 
				
			||||||
 | 
					                                               (face-foreground 'mode-line))))
 | 
				
			||||||
 | 
					              (add-hook 'post-command-hook
 | 
				
			||||||
 | 
					                        (lambda ()
 | 
				
			||||||
 | 
					                          (let ((color (cond ((minibufferp) default-color)
 | 
				
			||||||
 | 
					                                             ((evil-insert-state-p) (cons (cdr default-color) (car default-color)))
 | 
				
			||||||
 | 
					                                             ((buffer-modified-p)   '("#ff0000" . "#ffffff"))
 | 
				
			||||||
 | 
					                                             (t default-color))))
 | 
				
			||||||
 | 
					                            (set-face-background 'mode-line (car color))
 | 
				
			||||||
 | 
					                            (set-face-foreground 'mode-line (cdr color))))))
 | 
				
			||||||
 | 
					            ;; Evil keys 
 | 
				
			||||||
 | 
					            (evil-leader/set-leader "<SPC>")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "[q") 'previous-error)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "]q") 'next-error)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "[b") 'previous-code-buffer)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "]b") 'next-code-buffer)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "s") 'avy-goto-char-timer)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "S") 'avy-goto-word-0)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd ",d") 'neotree-project-dir-toggle)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd ",u") 'undo-tree-visualize)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "C-c +") 'evil-numbers/inc-at-pt)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd "C-c -") 'evil-numbers/dec-at-pt)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (add-hook 'neotree-mode-hook
 | 
				
			||||||
 | 
					                      (lambda ()
 | 
				
			||||||
 | 
					                        (define-key evil-normal-state-local-map (kbd "TAB") 'neotree-enter)
 | 
				
			||||||
 | 
					                        (define-key evil-normal-state-local-map (kbd "SPC") 'neotree-enter)
 | 
				
			||||||
 | 
					                        (define-key evil-normal-state-local-map (kbd "q") 'neotree-hide)
 | 
				
			||||||
 | 
					                        (define-key evil-normal-state-local-map (kbd "RET") 'neotree-enter)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package guide-key
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (setq guide-key/guide-key-sequence t)
 | 
				
			||||||
 | 
					            (guide-key-mode 1)
 | 
				
			||||||
 | 
					            ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package projectile
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (projectile-global-mode)
 | 
				
			||||||
 | 
					            (setq projectile-switch-project-action 'projectile-dired)
 | 
				
			||||||
 | 
					            ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package helm
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (use-package helm-config)
 | 
				
			||||||
 | 
					            (use-package helm-grep)
 | 
				
			||||||
 | 
					            (use-package helm-locate)
 | 
				
			||||||
 | 
					            (use-package helm-misc)
 | 
				
			||||||
 | 
					            (use-package helm-descbinds
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        (helm-descbinds-mode)
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            (use-package helm-projectile :ensure
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        (setq projectile-completion-system 'helm)
 | 
				
			||||||
 | 
					                        (helm-projectile-on)
 | 
				
			||||||
 | 
					                        ))
 | 
				
			||||||
 | 
					            (use-package helm-ag :ensure)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq helm-quick-update t)
 | 
				
			||||||
 | 
					            (setq helm-bookmark-show-location t)
 | 
				
			||||||
 | 
					            (setq helm-buffers-fuzzy-matching t)
 | 
				
			||||||
 | 
					            (defun smart-for-files ()
 | 
				
			||||||
 | 
					              "Call `helm-projectile' if `projectile-project-p', otherwise fallback to `helm-for-files'."
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (if (projectile-project-p)
 | 
				
			||||||
 | 
					                  (helm-projectile)
 | 
				
			||||||
 | 
					                (helm-for-files)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (defun smart-for-buffers ()
 | 
				
			||||||
 | 
					              "Call `helm-projectile' if `projectile-project-p', otherwise fallback to `helm-for-files'."
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (if (projectile-project-p)
 | 
				
			||||||
 | 
					                  (helm-projectile-switch-to-buffer)
 | 
				
			||||||
 | 
					                (switch-to-buffer)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        ;;; Save current position to mark ring
 | 
				
			||||||
 | 
					            (add-hook 'helm-goto-line-before-hook 'helm-save-current-pos-to-mark-ring)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; Better helm fonts
 | 
				
			||||||
 | 
					            (set-face-attribute 'helm-selection nil :background "gold" :foreground "black")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        ;;; Keyboard mappings 
 | 
				
			||||||
 | 
					            (global-set-key (kbd "M-y") 'helm-show-kill-ring)
 | 
				
			||||||
 | 
					            (global-set-key (kbd "C-x b") 'helm-mini)
 | 
				
			||||||
 | 
					            (global-set-key (kbd "C-x p") 'smart-for-files)
 | 
				
			||||||
 | 
					            (global-set-key (kbd "C-x C-f") 'helm-find-files)
 | 
				
			||||||
 | 
					            (global-set-key (kbd "C-h SPC") 'helm-all-mark-rings)
 | 
				
			||||||
 | 
					            (global-set-key (kbd "C-c h o") 'helm-occur)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (define-key helm-map (kbd "<tab>") 'helm-execute-persistent-action) ; rebihnd tab to do persistent action
 | 
				
			||||||
 | 
					            (define-key helm-map (kbd "C-i") 'helm-execute-persistent-action) ; make TAB works in terminal
 | 
				
			||||||
 | 
					            (define-key helm-map (kbd "C-z") 'helm-select-action) ; list actions using C-z
 | 
				
			||||||
 | 
					            (define-key helm-grep-mode-map (kbd "<return>") 'helm-grep-mode-jump-other-window)
 | 
				
			||||||
 | 
					            (define-key helm-grep-mode-map (kbd "n") 'helm-grep-mode-jump-other-window-forward)
 | 
				
			||||||
 | 
					            (define-key helm-grep-mode-map (kbd "p") 'helm-grep-mode-jump-other-window-backward)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map "\C-e" 'evil-end-of-line)
 | 
				
			||||||
 | 
					            (define-key evil-insert-state-map "\C-e" 'end-of-line)
 | 
				
			||||||
 | 
					            (define-key evil-visual-state-map "\C-e" 'evil-end-of-line)
 | 
				
			||||||
 | 
					            (define-key evil-motion-state-map "\C-e" 'evil-end-of-line)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map "\C-n" 'evil-next-line)
 | 
				
			||||||
 | 
					            (define-key evil-insert-state-map "\C-n" 'evil-next-line)
 | 
				
			||||||
 | 
					            (define-key evil-visual-state-map "\C-n" 'evil-next-line)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map "\C-p" 'evil-previous-line)
 | 
				
			||||||
 | 
					            (define-key evil-insert-state-map "\C-p" 'evil-previous-line)
 | 
				
			||||||
 | 
					            (define-key evil-visual-state-map "\C-p" 'evil-previous-line)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map "\C-k" 'kill-line)
 | 
				
			||||||
 | 
					            (define-key evil-insert-state-map "\C-k" 'kill-line)
 | 
				
			||||||
 | 
					            (define-key evil-visual-state-map "\C-k" 'kill-line)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map "Q" 'call-last-kbd-macro)
 | 
				
			||||||
 | 
					            (define-key evil-visual-state-map "Q" 'call-last-kbd-macro)
 | 
				
			||||||
 | 
					        ;;; Evil helm
 | 
				
			||||||
 | 
					            ;; (define-key evil-normal-state-map (kbd "C-p") 'helm-mini)
 | 
				
			||||||
 | 
					            (evil-leader/set-key "p" 'smart-for-files)
 | 
				
			||||||
 | 
					            (evil-leader/set-key "b" 'smart-for-buffers)
 | 
				
			||||||
 | 
					            (evil-leader/set-key "<SPC>" 'helm-M-x)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd ",s") 'helm-swoop)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd ",a") 'helm-ag)
 | 
				
			||||||
 | 
					            (define-key evil-normal-state-map (kbd ",y") 'helm-show-kill-ring)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        ;;; Keyboard
 | 
				
			||||||
 | 
					            (global-set-key (kbd "M-x") 'helm-M-x)
 | 
				
			||||||
 | 
					            (define-key helm-map (kbd "C-w") 'backward-kill-word)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; use helm to list eshell history
 | 
				
			||||||
 | 
					            (add-hook 'eshell-mode-hook
 | 
				
			||||||
 | 
					                      #'(lambda ()
 | 
				
			||||||
 | 
					                          (define-key eshell-mode-map (kbd "M-l") 'helm-eshell-history)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
				
			||||||
 | 
					            ;; PACKAGE: helm-swoop ;;
 | 
				
			||||||
 | 
					        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
				
			||||||
 | 
					            ;; Locate the helm-swoop folder to your path
 | 
				
			||||||
 | 
					            (use-package helm-swoop
 | 
				
			||||||
 | 
					              :ensure
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        ;; Change the keybinds to whatever you like :)
 | 
				
			||||||
 | 
					                        (global-set-key (kbd "C-c h o") 'helm-swoop)
 | 
				
			||||||
 | 
					                        (global-set-key (kbd "C-c s") 'helm-multi-swoop-all)
 | 
				
			||||||
 | 
					                        ;; When doing isearch, hand the word over to helm-swoop
 | 
				
			||||||
 | 
					                        (define-key isearch-mode-map (kbd "M-i") 'helm-swoop-from-isearch)
 | 
				
			||||||
 | 
					                        ;; From helm-swoop to helm-multi-swoop-all
 | 
				
			||||||
 | 
					                        (define-key helm-swoop-map (kbd "M-i") 'helm-multi-swoop-all-from-helm-swoop)
 | 
				
			||||||
 | 
					                        ;; Save buffer when helm-multi-swoop-edit complete
 | 
				
			||||||
 | 
					                        (setq helm-multi-swoop-edit-save t)
 | 
				
			||||||
 | 
					                        ;; If this value is t, split window inside the current window
 | 
				
			||||||
 | 
					                        (setq helm-swoop-split-with-multiple-windows t)
 | 
				
			||||||
 | 
					                        ;; Split direcion. 'split-window-vertically or 'split-window-horizontally
 | 
				
			||||||
 | 
					                        (setq helm-swoop-split-direction 'split-window-vertically)
 | 
				
			||||||
 | 
					                        ;; If nil, you can slightly boost invoke speed in exchange for text color
 | 
				
			||||||
 | 
					                        (setq helm-swoop-speed-or-color t)
 | 
				
			||||||
 | 
					                        ))
 | 
				
			||||||
 | 
					            (helm-mode 1)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package auto-complete
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (ac-config-default)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package flycheck
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (add-hook 'after-init-hook #'global-flycheck-mode)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package popwin
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (popwin-mode)
 | 
				
			||||||
 | 
					            ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package hlinum
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (hlinum-activate)
 | 
				
			||||||
 | 
					            (add-hook 'prog-mode-hook 'linum-mode)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package base16-theme
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (load-theme 'base16-tomorrow-night)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package slime
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (setq inferior-lisp "/usr/bin/sbcl")
 | 
				
			||||||
 | 
					            (setq inferior-lisp-program (executable-find "sbcl"))
 | 
				
			||||||
 | 
					            (setq slime-contribs '(slime-fancy))
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package python
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (use-package ob-ipython
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            (setq
 | 
				
			||||||
 | 
					         ;;     python-shell-interpreter "compose-run"
 | 
				
			||||||
 | 
						     ;; python-shell-interpreter-args "python ")
 | 
				
			||||||
 | 
					             python-shell-interpreter "ipython"
 | 
				
			||||||
 | 
					             python-shell-interpreter-args "--pylab"
 | 
				
			||||||
 | 
					             python-shell-prompt-regexp "In \\[[0-9]+\\]: "
 | 
				
			||||||
 | 
					             python-shell-prompt-output-regexp "Out\\[[0-9]+\\]: "
 | 
				
			||||||
 | 
					             python-shell-completion-setup-code
 | 
				
			||||||
 | 
					             "from IPython.core.completerlib import module_completion"
 | 
				
			||||||
 | 
					             python-shell-completion-module-string-code "';'.join(module_completion('''%s'''))\n"
 | 
				
			||||||
 | 
					             python-shell-completion-string-code "';'.join(get_ipython().Completer.all_completions('''%s'''))\n")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (add-hook 'python-mode-hook 'auto-complete-mode)
 | 
				
			||||||
 | 
					            (add-hook 'python-mode-hook '(lambda () (require 'nose)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (eval-after-load "python"
 | 
				
			||||||
 | 
					              '(progn
 | 
				
			||||||
 | 
					                 (define-key python-mode-map (kbd "C-c C-d") 'helm-pydoc)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (use-package jedi
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        (setq jedi:complete-on-dot t)
 | 
				
			||||||
 | 
					                        (setq jedi:get-in-function-call-delay 500)
 | 
				
			||||||
 | 
					                        (add-hook 'python-mode-hook 'jedi:setup)
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package go-mode
 | 
				
			||||||
 | 
					  :init (progn
 | 
				
			||||||
 | 
					          (use-package go-autocomplete :ensure
 | 
				
			||||||
 | 
					            :config (progn
 | 
				
			||||||
 | 
					                      (use-package auto-complete-config)
 | 
				
			||||||
 | 
					                      (ac-config-default)
 | 
				
			||||||
 | 
					                      )
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					          (use-package go-dlv :ensure
 | 
				
			||||||
 | 
						    )
 | 
				
			||||||
 | 
					          (defun my-go-mode-hook ()
 | 
				
			||||||
 | 
					                                        ; Use goimports instead of go-fmt
 | 
				
			||||||
 | 
					            ;; You need to do: go get golang.org/x/tools/cmd/goimports
 | 
				
			||||||
 | 
					            (setq gofmt-command "goimports")
 | 
				
			||||||
 | 
					                                        ; Call Gofmt before saving
 | 
				
			||||||
 | 
					            (add-hook 'before-save-hook 'gofmt-before-save)
 | 
				
			||||||
 | 
					                                        ; Customize compile command to run go build
 | 
				
			||||||
 | 
					            (if (not (string-match "go" compile-command))
 | 
				
			||||||
 | 
					                (set (make-local-variable 'compile-command)
 | 
				
			||||||
 | 
					                     "go build -v && go test -v && go vet"))
 | 
				
			||||||
 | 
					                                        ; Godef jump key binding
 | 
				
			||||||
 | 
					            (local-set-key (kbd "M-.") 'godef-jump)
 | 
				
			||||||
 | 
					            (auto-complete-for-go)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					          (defun auto-complete-for-go ()
 | 
				
			||||||
 | 
					            (auto-complete-mode 1))
 | 
				
			||||||
 | 
					          (add-hook 'go-mode-hook 'my-go-mode-hook)
 | 
				
			||||||
 | 
					          )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package flymake-go
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :init (progn
 | 
				
			||||||
 | 
					          )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package scala-mode
 | 
				
			||||||
 | 
					  :interpreter
 | 
				
			||||||
 | 
					  ("scala" . scala-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package ensime
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (setq ensime-startup-snapshot-notification nil)
 | 
				
			||||||
 | 
					            (use-package flycheck-cask
 | 
				
			||||||
 | 
					              :ensure t
 | 
				
			||||||
 | 
					              :commands flycheck-cask-setup
 | 
				
			||||||
 | 
					              :config (add-hook 'emacs-lisp-mode-hook (flycheck-cask-setup)))
 | 
				
			||||||
 | 
					            ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package org
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (use-package evil-org :ensure t)
 | 
				
			||||||
 | 
					            (define-key global-map "\C-cl" 'org-store-link)
 | 
				
			||||||
 | 
					            (define-key global-map "\C-ca" 'org-agenda)
 | 
				
			||||||
 | 
					            (evil-leader/set-key "a" 'org-agenda)
 | 
				
			||||||
 | 
					            (evil-org-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (add-hook 'org-capture-mode-hook 'evil-insert-state)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq org-log-done t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq org-directory "~/Dropbox/org")
 | 
				
			||||||
 | 
					            (setq org-mobile-inbox-for-pull "~/Dropbox/org/inbox.org")
 | 
				
			||||||
 | 
					            (setq org-mobile-directory "~/Dropbox/Apps/MobileOrg")
 | 
				
			||||||
 | 
					            (setq org-mobile-files '("~/Dropbox/org"))
 | 
				
			||||||
 | 
					            (setq org-default-notes-file (concat org-directory "/notes.org"))
 | 
				
			||||||
 | 
					            (setq org-agenda-files (list org-directory))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (define-key global-map "\C-cc" 'org-capture)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq org-clock-persist 'history)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; Set syntax highlight in org-mode babel
 | 
				
			||||||
 | 
					            (setq org-src-fontify-natively t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;;;don't prompt me to confirm everytime I want to evaluate a block
 | 
				
			||||||
 | 
					            (setq org-confirm-babel-evaluate nil) 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;;; display/update images in the buffer after I evaluate
 | 
				
			||||||
 | 
					            (add-hook 'org-babel-after-execute-hook 'org-display-inline-images 'append)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; 
 | 
				
			||||||
 | 
					            (setq org-tag-alist '(
 | 
				
			||||||
 | 
					                                  (:startgroup . nil)
 | 
				
			||||||
 | 
					                                  ("@phd" . ?p) ("@home" . ?h)
 | 
				
			||||||
 | 
					                                  (:endgroup . nil)
 | 
				
			||||||
 | 
					                                  (:startgroup . nil)
 | 
				
			||||||
 | 
					                                  ("reading" . ?r) ("coding" . ?c) ("writing" . "w")
 | 
				
			||||||
 | 
					                                  (:endgroup . nil)
 | 
				
			||||||
 | 
					                                  )
 | 
				
			||||||
 | 
					                  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (org-babel-do-load-languages
 | 
				
			||||||
 | 
					             'org-babel-load-languages
 | 
				
			||||||
 | 
					             '(
 | 
				
			||||||
 | 
					               (sh . t)
 | 
				
			||||||
 | 
					               (python . t)
 | 
				
			||||||
 | 
					               ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (defun org-archive-done-tasks ()
 | 
				
			||||||
 | 
					              (interactive)
 | 
				
			||||||
 | 
					              (org-map-entries
 | 
				
			||||||
 | 
					               (lambda ()
 | 
				
			||||||
 | 
					                 (org-archive-subtree)
 | 
				
			||||||
 | 
					                 (setq org-map-continue-from (outline-previous-heading)))
 | 
				
			||||||
 | 
					               "/DONE" 'file))
 | 
				
			||||||
 | 
					            (define-key org-mode-map "\C-cd" 'org-archive-done-tasks)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq org-capture-templates
 | 
				
			||||||
 | 
					                  (quote
 | 
				
			||||||
 | 
					                   (("i" "Ideas" entry
 | 
				
			||||||
 | 
					                     (file "ideas.org")
 | 
				
			||||||
 | 
					                     "* %?" nil nil)
 | 
				
			||||||
 | 
					                    ("t" "Tasks" entry
 | 
				
			||||||
 | 
					                     (file "tasks.org")
 | 
				
			||||||
 | 
					                     "* TODO %?\n\t%i"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (defadvice org-capture-finalize 
 | 
				
			||||||
 | 
					                (after delete-capture-frame activate)  
 | 
				
			||||||
 | 
					              "Advise capture-finalize to close the frame"  
 | 
				
			||||||
 | 
					              (if (equal "capture" (frame-parameter nil 'name))  
 | 
				
			||||||
 | 
					                  (delete-frame)))  
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            (defadvice org-capture-destroy 
 | 
				
			||||||
 | 
					                (after delete-capture-frame activate)  
 | 
				
			||||||
 | 
					              "Advise capture-destroy to close the frame"  
 | 
				
			||||||
 | 
					              (if (equal "capture" (frame-parameter nil 'name))  
 | 
				
			||||||
 | 
					                  (delete-frame)))  
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            ;; make the frame contain a single window. by default org-capture  
 | 
				
			||||||
 | 
					            ;; splits the window.  
 | 
				
			||||||
 | 
					            (add-hook 'org-capture-mode-hook  
 | 
				
			||||||
 | 
					                      'delete-other-windows)  
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            (defun make-capture-frame ()  
 | 
				
			||||||
 | 
					              "Create a new frame and run org-capture."  
 | 
				
			||||||
 | 
					              (interactive)  
 | 
				
			||||||
 | 
					              (make-frame '((name . "capture") 
 | 
				
			||||||
 | 
					                            (width . 120) 
 | 
				
			||||||
 | 
					                            (height . 15)))  
 | 
				
			||||||
 | 
					              (select-frame-by-name "capture") 
 | 
				
			||||||
 | 
					              (setq word-wrap 1)
 | 
				
			||||||
 | 
					              (setq truncate-lines nil)
 | 
				
			||||||
 | 
					              (org-capture)
 | 
				
			||||||
 | 
					              (delete-other-windows)
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package magit
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
						    (add-hook 'after-save-hook 'magit-after-save-refresh-status)
 | 
				
			||||||
 | 
						    (define-key evil-normal-state-map (kbd ",g") 'magit-status)
 | 
				
			||||||
 | 
						    (define-key evil-normal-state-map (kbd "C-c g") 'magit-status)
 | 
				
			||||||
 | 
						    )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package yaml-mode
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					        (add-to-list 'auto-mode-alist '("\\.yml$" . yaml-mode))
 | 
				
			||||||
 | 
					        (add-to-list 'auto-mode-alist '("\\.yaml$" . yaml-mode))
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package gist
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package n3-mode
 | 
				
			||||||
 | 
					  :mode ("\\.ttl" "\\.n3")
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package yasnippet
 | 
				
			||||||
 | 
					  :diminish yas-minor-mode
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (yas-global-mode 1)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package smartparens
 | 
				
			||||||
 | 
					  :diminish smartparens-mode
 | 
				
			||||||
 | 
					  :init
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (use-package evil-paredit
 | 
				
			||||||
 | 
					              :ensure
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        (use-package evil-smartparens :ensure)
 | 
				
			||||||
 | 
					                        (add-hook 'clojure-mode-hook 'smartparens-mode)
 | 
				
			||||||
 | 
					                        (add-hook 'cider-repl-mode-hook 'evil-smartparens-mode)
 | 
				
			||||||
 | 
					                        (add-hook 'lisp-mode-hook 'evil-smartparens-mode)
 | 
				
			||||||
 | 
					                        (add-hook 'emacs-lisp-mode-hook 'evil-smartparens-mode)
 | 
				
			||||||
 | 
					                        (add-hook 'lisp-interaction-mode-hook 'evil-smartparens-mode)
 | 
				
			||||||
 | 
					                        (add-hook 'ielm-mode-hook 'evil-smartparens-mode)
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package markdown-mode
 | 
				
			||||||
 | 
					  :init
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (setq markdown-command "pandoc -f markdown -t html -s")
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package go-mode
 | 
				
			||||||
 | 
					  :init
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package mu4e
 | 
				
			||||||
 | 
					  :init
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (use-package smtpmail
 | 
				
			||||||
 | 
					              :ensure)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq mu4e-contexts
 | 
				
			||||||
 | 
					                  `( ,(make-mu4e-context
 | 
				
			||||||
 | 
					                       :name "Private"
 | 
				
			||||||
 | 
					                       :enter-func (lambda () (mu4e-message "Switch to the GMAIL context"))
 | 
				
			||||||
 | 
					                       ;; leave-func not defined
 | 
				
			||||||
 | 
					                       :match-func (lambda (msg)
 | 
				
			||||||
 | 
					                                     (when msg 
 | 
				
			||||||
 | 
					                                       (mu4e-message-contact-field-matches msg 
 | 
				
			||||||
 | 
					                                                                           :to "jfsanchezrada@gmail.com")))
 | 
				
			||||||
 | 
					                       :vars '(
 | 
				
			||||||
 | 
					                               (smtpmail-starttls-credentials '("smtp.gmail.com" 587 nil nil))
 | 
				
			||||||
 | 
					                               (smtpmail-auth-credentials '(("smtp.gmail.com" 587 "jfsanchezrada@gmail.com" nil)))
 | 
				
			||||||
 | 
					                               (smtpmail-default-smtp-server "smtp.gmail.com")
 | 
				
			||||||
 | 
					                               (smtpmail-smtp-server "smtp.gmail.com")
 | 
				
			||||||
 | 
					                               (smtpmail-smtp-service 587)
 | 
				
			||||||
 | 
					                               (smtpmail-debug-info t)
 | 
				
			||||||
 | 
					                               ( user-mail-address	     . "jfsanchezrada@gmail.com"  )
 | 
				
			||||||
 | 
					                                 ( user-full-name	    . "J. Fernando Sánchez Rada" )
 | 
				
			||||||
 | 
					                                 ( mu4e-compose-signature . "J. Fernando Sánchez\n")))
 | 
				
			||||||
 | 
					                     ,(make-mu4e-context
 | 
				
			||||||
 | 
					                       :name "Sinpapel"
 | 
				
			||||||
 | 
					                       :enter-func (lambda () (mu4e-message "Switch to the Personal context"))
 | 
				
			||||||
 | 
					                       ;; leave-fun not defined
 | 
				
			||||||
 | 
					                       :match-func (lambda (msg)
 | 
				
			||||||
 | 
					                                     (when msg 
 | 
				
			||||||
 | 
					                                       (mu4e-message-contact-field-matches msg 
 | 
				
			||||||
 | 
					                                                                           :to "j@sinpapel.es")))
 | 
				
			||||||
 | 
					                       :vars '(
 | 
				
			||||||
 | 
					                               (smtpmail-starttls-credentials '(("smtp.sinpapel.es" 587 nil nil)))
 | 
				
			||||||
 | 
					                               (smtpmail-auth-credentials '(("smtp.sinpapel.es" 587 "j@sinpapel.es" nil)))
 | 
				
			||||||
 | 
					                               (smtpmail-default-smtp-server "smtp.sinpapel.es")
 | 
				
			||||||
 | 
					                               (smtpmail-smtp-server "smtp.sinpapel.es")
 | 
				
			||||||
 | 
					                               (smtpmail-smtp-service 587)
 | 
				
			||||||
 | 
					                               (smtpmail-debug-info t)
 | 
				
			||||||
 | 
					                               ( user-mail-address	     . "j@sinpapel.es"  )
 | 
				
			||||||
 | 
					                               ( user-full-name	    . "J. Fernando Sánchez Rada" )
 | 
				
			||||||
 | 
					                               ( mu4e-compose-signature . 
 | 
				
			||||||
 | 
					                                                        "J. Fernando Sánchez\n"))))
 | 
				
			||||||
 | 
					                  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq mu4e-compose-context-policy nil)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq message-send-mail-function 'smtpmail-send-it
 | 
				
			||||||
 | 
					                  starttls-use-gnutls t
 | 
				
			||||||
 | 
					                  smtpmail-debug-info t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (setq mu4e-maildir (expand-file-name "~/.mail/"))
 | 
				
			||||||
 | 
					            (setq mu4e-drafts-folder "/Drafts")
 | 
				
			||||||
 | 
					            (setq mu4e-sent-folder   "/Sent Items")
 | 
				
			||||||
 | 
					            (setq mu4e-trash-folder  "/Trash")
 | 
				
			||||||
 | 
					            (setq message-signature-file "~/.emacs.d/.signature") ; put your signature in this file
 | 
				
			||||||
 | 
					            (setq mu4e-get-mail-command "mbsync gmail-inbox balkian"
 | 
				
			||||||
 | 
					                  mu4e-html2text-command "w3m -T text/html"
 | 
				
			||||||
 | 
					                  mu4e-update-interval 300
 | 
				
			||||||
 | 
					                  mu4e-headers-auto-update t
 | 
				
			||||||
 | 
					                  mu4e-compose-signature-auto-include nil)
 | 
				
			||||||
 | 
					            (add-to-list 'mu4e-view-actions
 | 
				
			||||||
 | 
					                         '("ViewInBrowser" . mu4e-action-view-in-browser) t)
 | 
				
			||||||
 | 
					            (setq mu4e-maildir-shortcuts
 | 
				
			||||||
 | 
					                  '( ("/gmail/INBOX"               . ?i)
 | 
				
			||||||
 | 
					                     ("/Sent Items"   . ?s)
 | 
				
			||||||
 | 
					                     ("/Trash"       . ?t)
 | 
				
			||||||
 | 
					                     ("/Drafts"    . ?d)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; use imagemagick if available
 | 
				
			||||||
 | 
					            (when (fboundp 'imagemagick-register-types)
 | 
				
			||||||
 | 
					              (imagemagick-register-types))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; general emacs mail settings; used when composing e-mail
 | 
				
			||||||
 | 
					            ;; the non-mu4e-* stuff is inherited from emacs/message-mode
 | 
				
			||||||
 | 
					            (setq mu4e-reply-to-address "jfsanchezrada@gmail.com"
 | 
				
			||||||
 | 
					                  user-mail-address "jfsanchezrada@gmail.com"
 | 
				
			||||||
 | 
					                  user-full-name  "J. Fernando Sánchez")
 | 
				
			||||||
 | 
					            ;; show images
 | 
				
			||||||
 | 
					            (setq mu4e-show-images t
 | 
				
			||||||
 | 
					                  mu4e-show-addresses t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            ;; By default, mu4e only shows contact names
 | 
				
			||||||
 | 
					            (setq mu4e-view-show-addresses t)
 | 
				
			||||||
 | 
					            ;; don't save message to Sent Messages, IMAP takes care of this
 | 
				
			||||||
 | 
					            (setq mu4e-sent-messages-behavior 'delete)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (add-hook 'mu4e-compose-mode-hook
 | 
				
			||||||
 | 
					                      (defun my-do-compose-stuff ()
 | 
				
			||||||
 | 
					                        "My settings for message composition."
 | 
				
			||||||
 | 
					                        (set-fill-column 72)
 | 
				
			||||||
 | 
					                        (flyspell-mode)))
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Global emacs settings
 | 
				
			||||||
 | 
					;; disable splash screen
 | 
				
			||||||
 | 
					(setq inhibit-splash-screen t)
 | 
				
			||||||
 | 
					(setq initial-scratch-message "\
 | 
				
			||||||
 | 
					;; SCRATCHPAD
 | 
				
			||||||
 | 
					")
 | 
				
			||||||
 | 
					(setq truncate-partial-width-windows nil)
 | 
				
			||||||
 | 
					(set-default 'truncate-lines nil)
 | 
				
			||||||
 | 
					;;; Highlight line
 | 
				
			||||||
 | 
					(global-hl-line-mode)
 | 
				
			||||||
 | 
					(require 'color)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun set-hl-line-color-based-on-theme ()
 | 
				
			||||||
 | 
					"Set the hl-line face to have no foregorund and a background that is 10% darker than the default face's background."
 | 
				
			||||||
 | 
					(let ((background-color (color-lighten-name (face-background 'default) 10)))
 | 
				
			||||||
 | 
					  (set-face-attribute 'hl-line nil
 | 
				
			||||||
 | 
					                      :foreground nil
 | 
				
			||||||
 | 
					                      :background background-color)
 | 
				
			||||||
 | 
					  (set-face-attribute 'linum-highlight-face nil
 | 
				
			||||||
 | 
					                      :background (face-foreground 'default)
 | 
				
			||||||
 | 
					                      :foreground (face-background 'default))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-hook 'global-hl-line-mode-hook 'set-hl-line-color-based-on-theme)
 | 
				
			||||||
 | 
					                                        ;; (set-face-background 'hl-line 'highlight-color)
 | 
				
			||||||
 | 
					(setq-default indent-tabs-mode nil)
 | 
				
			||||||
 | 
					(setq tab-width 4)
 | 
				
			||||||
 | 
					(setq default-tab-width 4); 
 | 
				
			||||||
 | 
					(setq js-indent-level 2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(toggle-indicate-empty-lines)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Global modes
 | 
				
			||||||
 | 
					(scroll-bar-mode 0)
 | 
				
			||||||
 | 
					(tool-bar-mode 0)
 | 
				
			||||||
 | 
					(savehist-mode 1)
 | 
				
			||||||
 | 
					(show-paren-mode t)
 | 
				
			||||||
 | 
					(column-number-mode)
 | 
				
			||||||
 | 
					(when (fboundp 'winner-mode)
 | 
				
			||||||
 | 
					  (winner-mode 1))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Other key bindings
 | 
				
			||||||
 | 
					(define-key global-map "\C-ch" 'winner-undo)
 | 
				
			||||||
 | 
					(define-key global-map "\C-cl" 'winner-redo)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; set a default font
 | 
				
			||||||
 | 
					(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-12"))
 | 
				
			||||||
 | 
					;; emacs doesn't actually save undo history with revert-buffer
 | 
				
			||||||
 | 
					;; see http://lists.gnu.org/archive/html/bug-gnu-emacs/2011-04/msg00151.html
 | 
				
			||||||
 | 
					;; fix that.
 | 
				
			||||||
 | 
					(defun revert-buffer-keep-history (&optional IGNORE-AUTO NOCONFIRM PRESERVE-MODES)
 | 
				
			||||||
 | 
					  (interactive)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (setq tmp (point))
 | 
				
			||||||
 | 
					  ;; tell Emacs the modtime is fine, so we can edit the buffer
 | 
				
			||||||
 | 
					  (clear-visited-file-modtime)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ;; insert the current contents of the file on disk
 | 
				
			||||||
 | 
					  (widen)
 | 
				
			||||||
 | 
					  (delete-region (point-min) (point-max))
 | 
				
			||||||
 | 
					  (insert-file-contents (buffer-file-name))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ;; mark the buffer as not modified
 | 
				
			||||||
 | 
					  (not-modified)
 | 
				
			||||||
 | 
					  (set-visited-file-modtime)
 | 
				
			||||||
 | 
					  (goto-char tmp)
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq revert-buffer-function 'revert-buffer-keep-history)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package recentf
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (recentf-mode 1)
 | 
				
			||||||
 | 
					            (setq recentf-max-saved-items 300)
 | 
				
			||||||
 | 
					            (setq recentf-max-menu-items 20)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package exec-path-from-shell
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (exec-path-from-shell-initialize)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package password-store
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package docker
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (use-package docker-tramp
 | 
				
			||||||
 | 
					              :ensure
 | 
				
			||||||
 | 
					              :config (progn
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					              )
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package glab
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (defconst glab--domain ".lab.cluster.gsi.dit.upm.es")
 | 
				
			||||||
 | 
					            (defconst glab--root-endpoint "https://lab.cluster.gsi.dit.upm.es/api/v3")
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package highlight-indent-guides 
 | 
				
			||||||
 | 
					  :ensure
 | 
				
			||||||
 | 
					  :config (progn
 | 
				
			||||||
 | 
					            (setq highlight-indent-guides-method 'character)
 | 
				
			||||||
 | 
					            (add-hook 'prog-mode-hook 'highlight-indent-guides-mode)
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-hook 'prog-mode-hook 'hs-minor-mode)
 | 
				
			||||||
 | 
					;;
 | 
				
			||||||
 | 
					;; LATEX
 | 
				
			||||||
 | 
					;;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-hook 'LaTeX-mode-hook (lambda ()
 | 
				
			||||||
 | 
					  (push
 | 
				
			||||||
 | 
					    '("latexmk" "latexmk -pdf %s" TeX-run-TeX nil t
 | 
				
			||||||
 | 
					      :help "Run latexmk on file")
 | 
				
			||||||
 | 
					    TeX-command-list)))
 | 
				
			||||||
 | 
					(add-hook 'TeX-mode-hook '(lambda () (setq TeX-command-default "latexmk")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; ENDLATEX
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq PREVSHELL (getenv "SHELL")) ;; Workaround for tramp
 | 
				
			||||||
 | 
					(eval-after-load 'tramp '(setenv "SHELL" "/bin/bash"))
 | 
				
			||||||
 | 
					(setq tramp-default-method "ssh")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Don't clover my folders
 | 
				
			||||||
 | 
					(setq
 | 
				
			||||||
 | 
					   backup-by-copying t      ; don't clobber symlinks
 | 
				
			||||||
 | 
					   delete-old-versions t
 | 
				
			||||||
 | 
					   kept-new-versions 6
 | 
				
			||||||
 | 
					   kept-old-versions 2
 | 
				
			||||||
 | 
					   version-control t)       ; use versioned backups
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq backup-directory-alist
 | 
				
			||||||
 | 
					      `((".*" . ,temporary-file-directory)))
 | 
				
			||||||
 | 
					(setq auto-save-file-name-transforms
 | 
				
			||||||
 | 
					      `((".*" , temporary-file-directory t)))
 | 
				
			||||||
 | 
					;; Prevent #file#.txt files
 | 
				
			||||||
 | 
					(setq create-lockfiles nil)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Path
 | 
				
			||||||
 | 
					(setenv "PATH" (concat (getenv "PATH") ":" (getenv "HOME") "/.bin" ":" (getenv "HOME") "/.local/bin"))
 | 
				
			||||||
 | 
					(setq exec-path (append exec-path (list (concat (getenv "HOME") "/.bin") (concat (getenv "HOME") ".local/bin") "/usr/bin")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Launch terminal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun open-terminal ()
 | 
				
			||||||
 | 
					  "Open a terminal in the current working directory."
 | 
				
			||||||
 | 
					  (interactive)
 | 
				
			||||||
 | 
					  (call-process (or (getenv "XTERMINAL") "xterm") nil 0 nil "-e" PREVSHELL))
 | 
				
			||||||
 | 
					;; This does not work: (concat "echo -c 'cd " default-directory "'"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(global-set-key (kbd "C-c t") 'open-terminal)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(provide '.init)
 | 
				
			||||||
 | 
					;;; init.el ends here
 | 
				
			||||||
							
								
								
									
										427
									
								
								emacs/.spacemacs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										427
									
								
								emacs/.spacemacs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,427 @@
 | 
				
			|||||||
 | 
					;; -*- mode: emacs-lisp -*-
 | 
				
			||||||
 | 
					;; This file is loaded by Spacemacs at startup.
 | 
				
			||||||
 | 
					;; It must be stored in your home directory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/layers ()
 | 
				
			||||||
 | 
					  "Configuration Layers declaration.
 | 
				
			||||||
 | 
					You should not put any user code in this function besides modifying the variable
 | 
				
			||||||
 | 
					values."
 | 
				
			||||||
 | 
					  (setq-default
 | 
				
			||||||
 | 
					   ;; Base distribution to use. This is a layer contained in the directory
 | 
				
			||||||
 | 
					   ;; `+distribution'. For now available distributions are `spacemacs-base'
 | 
				
			||||||
 | 
					   ;; or `spacemacs'. (default 'spacemacs)
 | 
				
			||||||
 | 
					   dotspacemacs-distribution 'spacemacs
 | 
				
			||||||
 | 
					   ;; Lazy installation of layers (i.e. layers are installed only when a file
 | 
				
			||||||
 | 
					   ;; with a supported type is opened). Possible values are `all', `unused'
 | 
				
			||||||
 | 
					   ;; and `nil'. `unused' will lazy install only unused layers (i.e. layers
 | 
				
			||||||
 | 
					   ;; not listed in variable `dotspacemacs-configuration-layers'), `all' will
 | 
				
			||||||
 | 
					   ;; lazy install any layer that support lazy installation even the layers
 | 
				
			||||||
 | 
					   ;; listed in `dotspacemacs-configuration-layers'. `nil' disable the lazy
 | 
				
			||||||
 | 
					   ;; installation feature and you have to explicitly list a layer in the
 | 
				
			||||||
 | 
					   ;; variable `dotspacemacs-configuration-layers' to install it.
 | 
				
			||||||
 | 
					   ;; (default 'unused)
 | 
				
			||||||
 | 
					   dotspacemacs-enable-lazy-installation 'unused
 | 
				
			||||||
 | 
					   ;; If non-nil then Spacemacs will ask for confirmation before installing
 | 
				
			||||||
 | 
					   ;; a layer lazily. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-ask-for-lazy-installation t
 | 
				
			||||||
 | 
					   ;; If non-nil layers with lazy install support are lazy installed.
 | 
				
			||||||
 | 
					   ;; List of additional paths where to look for configuration layers.
 | 
				
			||||||
 | 
					   ;; Paths must have a trailing slash (i.e. `~/.mycontribs/')
 | 
				
			||||||
 | 
					   dotspacemacs-configuration-layer-path '()
 | 
				
			||||||
 | 
					   ;; List of configuration layers to load.
 | 
				
			||||||
 | 
					   dotspacemacs-configuration-layers
 | 
				
			||||||
 | 
					   '(
 | 
				
			||||||
 | 
					     rust
 | 
				
			||||||
 | 
					     typescript
 | 
				
			||||||
 | 
					     (auto-completion :variables
 | 
				
			||||||
 | 
					                      auto-completion-return-key-behavior 'complete
 | 
				
			||||||
 | 
					                      auto-completion-tab-key-behavior 'cycle
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence nil
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence-delay 0.1
 | 
				
			||||||
 | 
					                      auto-completion-private-snippets-directory nil)
 | 
				
			||||||
 | 
					     go
 | 
				
			||||||
 | 
					     clojure
 | 
				
			||||||
 | 
					     nginx
 | 
				
			||||||
 | 
					     csv
 | 
				
			||||||
 | 
					     javascript
 | 
				
			||||||
 | 
					     yaml
 | 
				
			||||||
 | 
					     html
 | 
				
			||||||
 | 
					     python
 | 
				
			||||||
 | 
					     (go :variables
 | 
				
			||||||
 | 
					         gofmt-command "goimports"
 | 
				
			||||||
 | 
					         )
 | 
				
			||||||
 | 
					     ;; ----------------------------------------------------------------
 | 
				
			||||||
 | 
					     ;; Example of useful layers you may want to use right away.
 | 
				
			||||||
 | 
					     ;; Uncomment some layer names and press <SPC f e R> (Vim style) or
 | 
				
			||||||
 | 
					     ;; <M-m f e R> (Emacs style) to install them.
 | 
				
			||||||
 | 
					     ;; ----------------------------------------------------------------
 | 
				
			||||||
 | 
					     helm
 | 
				
			||||||
 | 
					     (auto-completion :variables
 | 
				
			||||||
 | 
					                      auto-completion-return-key-behavior 'complete
 | 
				
			||||||
 | 
					                      auto-completion-tab-key-behavior 'cycle
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence nil
 | 
				
			||||||
 | 
					                      auto-completion-complete-with-key-sequence-delay 0.1
 | 
				
			||||||
 | 
					                      auto-completion-private-snippets-directory nil)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     ;; better-defaults
 | 
				
			||||||
 | 
					     emacs-lisp
 | 
				
			||||||
 | 
					     git
 | 
				
			||||||
 | 
					     latex
 | 
				
			||||||
 | 
					     (markdown :variables
 | 
				
			||||||
 | 
					               markdown-command "pandoc"
 | 
				
			||||||
 | 
					               )
 | 
				
			||||||
 | 
					     (org :variables org-projectile-file (or (getenv "ORG_FILE") "~/TODO.org") )
 | 
				
			||||||
 | 
					     themes-megapack
 | 
				
			||||||
 | 
					     (shell :variables
 | 
				
			||||||
 | 
					             shell-default-height 30
 | 
				
			||||||
 | 
					             shell-default-position 'bottom)
 | 
				
			||||||
 | 
					     spell-checking
 | 
				
			||||||
 | 
					     syntax-checking
 | 
				
			||||||
 | 
					     version-control
 | 
				
			||||||
 | 
					     yaml
 | 
				
			||||||
 | 
					     )
 | 
				
			||||||
 | 
					   ;; List of additional packages that will be installed without being
 | 
				
			||||||
 | 
					   ;; wrapped in a layer. If you need some configuration for these
 | 
				
			||||||
 | 
					   ;; packages, then consider creating a layer. You can also put the
 | 
				
			||||||
 | 
					   ;; configuration in `dotspacemacs/user-config'.
 | 
				
			||||||
 | 
					   dotspacemacs-additional-packages '(
 | 
				
			||||||
 | 
					                                      ag
 | 
				
			||||||
 | 
					                                      )
 | 
				
			||||||
 | 
					   ;; A list of packages that cannot be updated.
 | 
				
			||||||
 | 
					   dotspacemacs-frozen-packages '()
 | 
				
			||||||
 | 
					   ;; A list of packages that will not be installed and loaded.
 | 
				
			||||||
 | 
					   dotspacemacs-excluded-packages '()
 | 
				
			||||||
 | 
					   ;; Defines the behaviour of Spacemacs when installing packages.
 | 
				
			||||||
 | 
					   ;; Possible values are `used-only', `used-but-keep-unused' and `all'.
 | 
				
			||||||
 | 
					   ;; `used-only' installs only explicitly used packages and uninstall any
 | 
				
			||||||
 | 
					   ;; unused packages as well as their unused dependencies.
 | 
				
			||||||
 | 
					   ;; `used-but-keep-unused' installs only the used packages but won't uninstall
 | 
				
			||||||
 | 
					   ;; them if they become unused. `all' installs *all* packages supported by
 | 
				
			||||||
 | 
					   ;; Spacemacs and never uninstall them. (default is `used-only')
 | 
				
			||||||
 | 
					   dotspacemacs-install-packages 'used-only))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/init ()
 | 
				
			||||||
 | 
					  "Initialization function.
 | 
				
			||||||
 | 
					This function is called at the very startup of Spacemacs initialization
 | 
				
			||||||
 | 
					before layers configuration.
 | 
				
			||||||
 | 
					You should not put any user code in there besides modifying the variable
 | 
				
			||||||
 | 
					values."
 | 
				
			||||||
 | 
					  ;; This setq-default sexp is an exhaustive list of all the supported
 | 
				
			||||||
 | 
					  ;; spacemacs settings.
 | 
				
			||||||
 | 
					  (setq-default
 | 
				
			||||||
 | 
					   ;; If non nil ELPA repositories are contacted via HTTPS whenever it's
 | 
				
			||||||
 | 
					   ;; possible. Set it to nil if you have no way to use HTTPS in your
 | 
				
			||||||
 | 
					   ;; environment, otherwise it is strongly recommended to let it set to t.
 | 
				
			||||||
 | 
					   ;; This variable has no effect if Emacs is launched with the parameter
 | 
				
			||||||
 | 
					   ;; `--insecure' which forces the value of this variable to nil.
 | 
				
			||||||
 | 
					   ;; (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-https t
 | 
				
			||||||
 | 
					   ;; Maximum allowed time in seconds to contact an ELPA repository.
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-timeout 5
 | 
				
			||||||
 | 
					   ;; If non nil then spacemacs will check for updates at startup
 | 
				
			||||||
 | 
					   ;; when the current branch is not `develop'. Note that checking for
 | 
				
			||||||
 | 
					   ;; new versions works via git commands, thus it calls GitHub services
 | 
				
			||||||
 | 
					   ;; whenever you start Emacs. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-check-for-update nil
 | 
				
			||||||
 | 
					   ;; If non-nil, a form that evaluates to a package directory. For example, to
 | 
				
			||||||
 | 
					   ;; use different package directories for different Emacs versions, set this
 | 
				
			||||||
 | 
					   ;; to `emacs-version'.
 | 
				
			||||||
 | 
					   dotspacemacs-elpa-subdirectory nil
 | 
				
			||||||
 | 
					   ;; One of `vim', `emacs' or `hybrid'.
 | 
				
			||||||
 | 
					   ;; `hybrid' is like `vim' except that `insert state' is replaced by the
 | 
				
			||||||
 | 
					   ;; `hybrid state' with `emacs' key bindings. The value can also be a list
 | 
				
			||||||
 | 
					   ;; with `:variables' keyword (similar to layers). Check the editing styles
 | 
				
			||||||
 | 
					   ;; section of the documentation for details on available variables.
 | 
				
			||||||
 | 
					   ;; (default 'vim)
 | 
				
			||||||
 | 
					   dotspacemacs-editing-style 'vim
 | 
				
			||||||
 | 
					   ;; If non nil output loading progress in `*Messages*' buffer. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-verbose-loading nil
 | 
				
			||||||
 | 
					   ;; Specify the startup banner. Default value is `official', it displays
 | 
				
			||||||
 | 
					   ;; the official spacemacs logo. An integer value is the index of text
 | 
				
			||||||
 | 
					   ;; banner, `random' chooses a random text banner in `core/banners'
 | 
				
			||||||
 | 
					   ;; directory. A string value must be a path to an image format supported
 | 
				
			||||||
 | 
					   ;; by your Emacs build.
 | 
				
			||||||
 | 
					   ;; If the value is nil then no banner is displayed. (default 'official)
 | 
				
			||||||
 | 
					   dotspacemacs-startup-banner 'official
 | 
				
			||||||
 | 
					   ;; List of items to show in startup buffer or an association list of
 | 
				
			||||||
 | 
					   ;; the form `(list-type . list-size)`. If nil then it is disabled.
 | 
				
			||||||
 | 
					   ;; Possible values for list-type are:
 | 
				
			||||||
 | 
					   ;; `recents' `bookmarks' `projects' `agenda' `todos'."
 | 
				
			||||||
 | 
					   ;; List sizes may be nil, in which case
 | 
				
			||||||
 | 
					   ;; `spacemacs-buffer-startup-lists-length' takes effect.
 | 
				
			||||||
 | 
					   dotspacemacs-startup-lists '((recents . 5)
 | 
				
			||||||
 | 
					                                (projects . 7))
 | 
				
			||||||
 | 
					   ;; True if the home buffer should respond to resize events.
 | 
				
			||||||
 | 
					   dotspacemacs-startup-buffer-responsive t
 | 
				
			||||||
 | 
					   ;; Default major mode of the scratch buffer (default `text-mode')
 | 
				
			||||||
 | 
					   dotspacemacs-scratch-mode 'text-mode
 | 
				
			||||||
 | 
					   ;; List of themes, the first of the list is loaded when spacemacs starts.
 | 
				
			||||||
 | 
					   ;; Press <SPC> T n to cycle to the next theme in the list (works great
 | 
				
			||||||
 | 
					   ;; with 2 themes variants, one dark and one light)
 | 
				
			||||||
 | 
					   dotspacemacs-themes '(
 | 
				
			||||||
 | 
					                         monokai
 | 
				
			||||||
 | 
					                         leuven
 | 
				
			||||||
 | 
					                         spacemacs-dark
 | 
				
			||||||
 | 
					                         minimal-light
 | 
				
			||||||
 | 
					                         tango-plus
 | 
				
			||||||
 | 
					                         dichromacy
 | 
				
			||||||
 | 
					                         ample
 | 
				
			||||||
 | 
					                         sanityinc-tomorrow-night)
 | 
				
			||||||
 | 
					   ;; If non nil the cursor color matches the state color in GUI Emacs.
 | 
				
			||||||
 | 
					   dotspacemacs-colorize-cursor-according-to-state t
 | 
				
			||||||
 | 
					   ;; Default font, or prioritized list of fonts. `powerline-scale' allows to
 | 
				
			||||||
 | 
					   ;; quickly tweak the mode-line size to make separators look not too crappy.
 | 
				
			||||||
 | 
					   dotspacemacs-default-font '("DejaVu Sans Mono"
 | 
				
			||||||
 | 
					                               :size 14
 | 
				
			||||||
 | 
					                               :weight normal
 | 
				
			||||||
 | 
					                               :width normal :powerline-scale 1.5)
 | 
				
			||||||
 | 
					   ;; The leader key
 | 
				
			||||||
 | 
					   dotspacemacs-leader-key "SPC"
 | 
				
			||||||
 | 
					   ;; The key used for Emacs commands (M-x) (after pressing on the leader key).
 | 
				
			||||||
 | 
					   ;; (default "SPC")
 | 
				
			||||||
 | 
					   dotspacemacs-emacs-command-key "SPC"
 | 
				
			||||||
 | 
					   ;; The key used for Vim Ex commands (default ":")
 | 
				
			||||||
 | 
					   dotspacemacs-ex-command-key ":"
 | 
				
			||||||
 | 
					   ;; The leader key accessible in `emacs state' and `insert state'
 | 
				
			||||||
 | 
					   ;; (default "M-m")
 | 
				
			||||||
 | 
					   dotspacemacs-emacs-leader-key "M-m"
 | 
				
			||||||
 | 
					   ;; Major mode leader key is a shortcut key which is the equivalent of
 | 
				
			||||||
 | 
					   ;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",")
 | 
				
			||||||
 | 
					   dotspacemacs-major-mode-leader-key ","
 | 
				
			||||||
 | 
					   ;; Major mode leader key accessible in `emacs state' and `insert state'.
 | 
				
			||||||
 | 
					   ;; (default "C-M-m")
 | 
				
			||||||
 | 
					   dotspacemacs-major-mode-emacs-leader-key "C-M-m"
 | 
				
			||||||
 | 
					   ;; These variables control whether separate commands are bound in the GUI to
 | 
				
			||||||
 | 
					   ;; the key pairs C-i, TAB and C-m, RET.
 | 
				
			||||||
 | 
					   ;; Setting it to a non-nil value, allows for separate commands under <C-i>
 | 
				
			||||||
 | 
					   ;; and TAB or <C-m> and RET.
 | 
				
			||||||
 | 
					   ;; In the terminal, these pairs are generally indistinguishable, so this only
 | 
				
			||||||
 | 
					   ;; works in the GUI. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-distinguish-gui-tab nil
 | 
				
			||||||
 | 
					   ;; If non nil `Y' is remapped to `y$' in Evil states. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-remap-Y-to-y$ nil
 | 
				
			||||||
 | 
					   ;; If non-nil, the shift mappings `<' and `>' retain visual state if used
 | 
				
			||||||
 | 
					   ;; there. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-retain-visual-state-on-shift t
 | 
				
			||||||
 | 
					   ;; If non-nil, J and K move lines up and down when in visual mode.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-visual-line-move-text nil
 | 
				
			||||||
 | 
					   ;; If non nil, inverse the meaning of `g' in `:substitute' Evil ex-command.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-ex-substitute-global nil
 | 
				
			||||||
 | 
					   ;; Name of the default layout (default "Default")
 | 
				
			||||||
 | 
					   dotspacemacs-default-layout-name "Default"
 | 
				
			||||||
 | 
					   ;; If non nil the default layout name is displayed in the mode-line.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-display-default-layout nil
 | 
				
			||||||
 | 
					   ;; If non nil then the last auto saved layouts are resume automatically upon
 | 
				
			||||||
 | 
					   ;; start. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-auto-resume-layouts nil
 | 
				
			||||||
 | 
					   ;; Size (in MB) above which spacemacs will prompt to open the large file
 | 
				
			||||||
 | 
					   ;; literally to avoid performance issues. Opening a file literally means that
 | 
				
			||||||
 | 
					   ;; no major mode or minor modes are active. (default is 1)
 | 
				
			||||||
 | 
					   dotspacemacs-large-file-size 1
 | 
				
			||||||
 | 
					   ;; Location where to auto-save files. Possible values are `original' to
 | 
				
			||||||
 | 
					   ;; auto-save the file in-place, `cache' to auto-save the file to another
 | 
				
			||||||
 | 
					   ;; file stored in the cache directory and `nil' to disable auto-saving.
 | 
				
			||||||
 | 
					   ;; (default 'cache)
 | 
				
			||||||
 | 
					   dotspacemacs-auto-save-file-location 'cache
 | 
				
			||||||
 | 
					   ;; Maximum number of rollback slots to keep in the cache. (default 5)
 | 
				
			||||||
 | 
					   dotspacemacs-max-rollback-slots 5
 | 
				
			||||||
 | 
					   ;; If non nil, `helm' will try to minimize the space it uses. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-resize nil
 | 
				
			||||||
 | 
					   ;; if non nil, the helm header is hidden when there is only one source.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-no-header nil
 | 
				
			||||||
 | 
					   ;; define the position to display `helm', options are `bottom', `top',
 | 
				
			||||||
 | 
					   ;; `left', or `right'. (default 'bottom)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-position 'bottom
 | 
				
			||||||
 | 
					   ;; Controls fuzzy matching in helm. If set to `always', force fuzzy matching
 | 
				
			||||||
 | 
					   ;; in all non-asynchronous sources. If set to `source', preserve individual
 | 
				
			||||||
 | 
					   ;; source settings. Else, disable fuzzy matching in all sources.
 | 
				
			||||||
 | 
					   ;; (default 'always)
 | 
				
			||||||
 | 
					   dotspacemacs-helm-use-fuzzy 'always
 | 
				
			||||||
 | 
					   ;; If non nil the paste micro-state is enabled. When enabled pressing `p`
 | 
				
			||||||
 | 
					   ;; several times cycle between the kill ring content. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-enable-paste-transient-state nil
 | 
				
			||||||
 | 
					   ;; Which-key delay in seconds. The which-key buffer is the popup listing
 | 
				
			||||||
 | 
					   ;; the commands bound to the current keystroke sequence. (default 0.4)
 | 
				
			||||||
 | 
					   dotspacemacs-which-key-delay 0.4
 | 
				
			||||||
 | 
					   ;; Which-key frame position. Possible values are `right', `bottom' and
 | 
				
			||||||
 | 
					   ;; `right-then-bottom'. right-then-bottom tries to display the frame to the
 | 
				
			||||||
 | 
					   ;; right; if there is insufficient space it displays it at the bottom.
 | 
				
			||||||
 | 
					   ;; (default 'bottom)
 | 
				
			||||||
 | 
					   dotspacemacs-which-key-position 'bottom
 | 
				
			||||||
 | 
					   ;; If non nil a progress bar is displayed when spacemacs is loading. This
 | 
				
			||||||
 | 
					   ;; may increase the boot time on some systems and emacs builds, set it to
 | 
				
			||||||
 | 
					   ;; nil to boost the loading time. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-loading-progress-bar t
 | 
				
			||||||
 | 
					   ;; If non nil the frame is fullscreen when Emacs starts up. (default nil)
 | 
				
			||||||
 | 
					   ;; (Emacs 24.4+ only)
 | 
				
			||||||
 | 
					   dotspacemacs-fullscreen-at-startup nil
 | 
				
			||||||
 | 
					   ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen.
 | 
				
			||||||
 | 
					   ;; Use to disable fullscreen animations in OSX. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-fullscreen-use-non-native nil
 | 
				
			||||||
 | 
					   ;; If non nil the frame is maximized when Emacs starts up.
 | 
				
			||||||
 | 
					   ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil.
 | 
				
			||||||
 | 
					   ;; (default nil) (Emacs 24.4+ only)
 | 
				
			||||||
 | 
					   dotspacemacs-maximized-at-startup nil
 | 
				
			||||||
 | 
					   ;; A value from the range (0..100), in increasing opacity, which describes
 | 
				
			||||||
 | 
					   ;; the transparency level of a frame when it's active or selected.
 | 
				
			||||||
 | 
					   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
 | 
				
			||||||
 | 
					   dotspacemacs-active-transparency 90
 | 
				
			||||||
 | 
					   ;; A value from the range (0..100), in increasing opacity, which describes
 | 
				
			||||||
 | 
					   ;; the transparency level of a frame when it's inactive or deselected.
 | 
				
			||||||
 | 
					   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
 | 
				
			||||||
 | 
					   dotspacemacs-inactive-transparency 90
 | 
				
			||||||
 | 
					   ;; If non nil show the titles of transient states. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-show-transient-state-title t
 | 
				
			||||||
 | 
					   ;; If non nil show the color guide hint for transient state keys. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-show-transient-state-color-guide t
 | 
				
			||||||
 | 
					   ;; If non nil unicode symbols are displayed in the mode line. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-mode-line-unicode-symbols t
 | 
				
			||||||
 | 
					   ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
 | 
				
			||||||
 | 
					   ;; scrolling overrides the default behavior of Emacs which recenters point
 | 
				
			||||||
 | 
					   ;; when it reaches the top or bottom of the screen. (default t)
 | 
				
			||||||
 | 
					   dotspacemacs-smooth-scrolling t
 | 
				
			||||||
 | 
					   ;; Control line numbers activation.
 | 
				
			||||||
 | 
					   ;; If set to `t' or `relative' line numbers are turned on in all `prog-mode' and
 | 
				
			||||||
 | 
					   ;; `text-mode' derivatives. If set to `relative', line numbers are relative.
 | 
				
			||||||
 | 
					   ;; This variable can also be set to a property list for finer control:
 | 
				
			||||||
 | 
					   ;; '(:relative nil
 | 
				
			||||||
 | 
					   ;;   :disabled-for-modes dired-mode
 | 
				
			||||||
 | 
					   ;;                       doc-view-mode
 | 
				
			||||||
 | 
					   ;;                       markdown-mode
 | 
				
			||||||
 | 
					   ;;                       org-mode
 | 
				
			||||||
 | 
					   ;;                       pdf-view-mode
 | 
				
			||||||
 | 
					   ;;                       text-mode
 | 
				
			||||||
 | 
					   ;;   :size-limit-kb 1000)
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-line-numbers t
 | 
				
			||||||
 | 
					   ;; Code folding method. Possible values are `evil' and `origami'.
 | 
				
			||||||
 | 
					   ;; (default 'evil)
 | 
				
			||||||
 | 
					   dotspacemacs-folding-method 'evil
 | 
				
			||||||
 | 
					   ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-smartparens-strict-mode nil
 | 
				
			||||||
 | 
					   ;; If non-nil pressing the closing parenthesis `)' key in insert mode passes
 | 
				
			||||||
 | 
					   ;; over any automatically added closing parenthesis, bracket, quote, etc…
 | 
				
			||||||
 | 
					   ;; This can be temporary disabled by pressing `C-q' before `)'. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-smart-closing-parenthesis nil
 | 
				
			||||||
 | 
					   ;; Select a scope to highlight delimiters. Possible values are `any',
 | 
				
			||||||
 | 
					   ;; `current', `all' or `nil'. Default is `all' (highlight any scope and
 | 
				
			||||||
 | 
					   ;; emphasis the current one). (default 'all)
 | 
				
			||||||
 | 
					   dotspacemacs-highlight-delimiters 'all
 | 
				
			||||||
 | 
					   ;; If non nil, advise quit functions to keep server open when quitting.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-persistent-server nil
 | 
				
			||||||
 | 
					   ;; List of search tool executable names. Spacemacs uses the first installed
 | 
				
			||||||
 | 
					   ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'.
 | 
				
			||||||
 | 
					   ;; (default '("ag" "pt" "ack" "grep"))
 | 
				
			||||||
 | 
					   dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
 | 
				
			||||||
 | 
					   ;; The default package repository used if no explicit repository has been
 | 
				
			||||||
 | 
					   ;; specified with an installed package.
 | 
				
			||||||
 | 
					   ;; Not used for now. (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-default-package-repository nil
 | 
				
			||||||
 | 
					   ;; Delete whitespace while saving buffer. Possible values are `all'
 | 
				
			||||||
 | 
					   ;; to aggressively delete empty line and long sequences of whitespace,
 | 
				
			||||||
 | 
					   ;; `trailing' to delete only the whitespace at end of lines, `changed'to
 | 
				
			||||||
 | 
					   ;; delete only whitespace for changed lines or `nil' to disable cleanup.
 | 
				
			||||||
 | 
					   ;; (default nil)
 | 
				
			||||||
 | 
					   dotspacemacs-whitespace-cleanup nil
 | 
				
			||||||
 | 
					   latex-enable-auto-fill nil
 | 
				
			||||||
 | 
					   ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/user-init ()
 | 
				
			||||||
 | 
					  "Initialization function for user code.
 | 
				
			||||||
 | 
					It is called immediately after `dotspacemacs/init', before layer configuration
 | 
				
			||||||
 | 
					executes.
 | 
				
			||||||
 | 
					 This function is mostly useful for variables that need to be set
 | 
				
			||||||
 | 
					before packages are loaded. If you are unsure, you should try in setting them in
 | 
				
			||||||
 | 
					`dotspacemacs/user-config' first."
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defun dotspacemacs/user-config ()
 | 
				
			||||||
 | 
					  "Configuration function for user code.
 | 
				
			||||||
 | 
					This function is called at the very end of Spacemacs initialization after
 | 
				
			||||||
 | 
					layers configuration.
 | 
				
			||||||
 | 
					This is the place where most of your configurations should be done. Unless it is
 | 
				
			||||||
 | 
					explicitly specified that a variable should be set before a package is loaded,
 | 
				
			||||||
 | 
					you should place your code here."
 | 
				
			||||||
 | 
					  (with-eval-after-load 'helm
 | 
				
			||||||
 | 
					    (define-key helm-map (kbd "C-w") 'evil-delete-backward-word)
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (with-eval-after-load 'org-agenda
 | 
				
			||||||
 | 
					    (require 'org-projectile)
 | 
				
			||||||
 | 
					    (push (org-projectile:todo-files) org-agenda-files))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ;; Launch terminal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (defun open-terminal ()
 | 
				
			||||||
 | 
					    "Open a terminal in the current working directory."
 | 
				
			||||||
 | 
					    (interactive)
 | 
				
			||||||
 | 
					    (call-process (or (getenv "XTERMINAL") "xterm") nil 0 nil))
 | 
				
			||||||
 | 
					  ;; This does not work: (concat "echo -c 'cd " default-directory "'"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (global-set-key (kbd "C-c t") 'open-terminal)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (setq browse-url-generic-program "qutebrowser"
 | 
				
			||||||
 | 
					        browse-url-browser-function 'browse-url-generic
 | 
				
			||||||
 | 
					        browse-url-generic-args '("-r" "preview" ":tab-only" "--target" "auto"))
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Do not write anything past this comment. This is where Emacs will
 | 
				
			||||||
 | 
					;; auto-generate custom variable definitions.
 | 
				
			||||||
 | 
					(custom-set-variables
 | 
				
			||||||
 | 
					 ;; custom-set-variables was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 '(ansi-color-faces-vector
 | 
				
			||||||
 | 
					   [default bold shadow italic underline bold bold-italic bold])
 | 
				
			||||||
 | 
					 '(beacon-color "#cc6666")
 | 
				
			||||||
 | 
					 '(custom-safe-themes
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ("cd4d1a0656fee24dc062b997f54d6f9b7da8f6dc8053ac858f15820f9a04a679" "a8245b7cc985a0610d71f9852e9f2767ad1b852c2bdea6f4aadc12cce9c4d6d0" "c3d4af771cbe0501d5a865656802788a9a0ff9cf10a7df704ec8b8ef69017c68" "06f0b439b62164c6f8f84fdda32b62fb50b6d00e8b01c2208e55543a6337433a" "190a9882bef28d7e944aa610aa68fe1ee34ecea6127239178c7ac848754992df" "3e335d794ed3030fefd0dbd7ff2d3555e29481fe4bbb0106ea11c660d6001767" "cc0dbb53a10215b696d391a90de635ba1699072745bf653b53774706999208e3" "ed317c0a3387be628a48c4bbdb316b4fa645a414838149069210b66dd521733f" "938d8c186c4cb9ec4a8d8bc159285e0d0f07bad46edf20aa469a89d0d2a586ea" "fa2b58bb98b62c3b8cf3b6f02f058ef7827a8e497125de0254f56e373abee088" "bffa9739ce0752a37d9b1eee78fc00ba159748f50dc328af4be661484848e476" default)))
 | 
				
			||||||
 | 
					 '(evil-want-Y-yank-to-eol nil)
 | 
				
			||||||
 | 
					 '(fci-rule-color "#373b41" t)
 | 
				
			||||||
 | 
					 '(flycheck-color-mode-line-face-to-color (quote mode-line-buffer-id))
 | 
				
			||||||
 | 
					 '(frame-background-mode (quote dark))
 | 
				
			||||||
 | 
					 '(org-file-apps
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ((auto-mode . emacs)
 | 
				
			||||||
 | 
					     ("\\.mm\\'" . default)
 | 
				
			||||||
 | 
					     ("\\.x?html?\\'" . default)
 | 
				
			||||||
 | 
					     ("\\.pdf\\'" . "/usr/bin/evince %s"))))
 | 
				
			||||||
 | 
					 '(package-selected-packages
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    (transient espresso-theme django-theme autothemer darkokai-theme darkmine-theme darkburn-theme dakrone-theme color-theme-sanityinc-solarized clues-theme lv parseedn parseclj a cherry-blossom-theme busybee-theme bubbleberry-theme birds-of-paradise-plus-theme badwolf-theme ample-zen-theme ample-theme alect-themes afternoon-theme toml-mode racer flycheck-rust cargo rust-mode tide typescript-mode org-projectile-helm dracula-theme darktooth-theme cyberpunk-theme color-theme-sanityinc-tomorrow sesman apropospriate-theme anti-zenburn-theme ghub helm-gitlab gitlab company-quickhelp ag white-sand-theme rebecca-theme org-mime exotica-theme inkpot-theme heroku-theme hemisu-theme hc-zenburn-theme gruvbox-theme gruber-darker-theme grandshell-theme gotham-theme gandalf-theme flatui-theme flatland-theme farmhouse-theme zenburn-theme zen-and-art-theme underwater-theme ujelly-theme twilight-theme twilight-bright-theme twilight-anti-bright-theme toxi-theme tao-theme tangotango-theme tango-plus-theme tango-2-theme sunny-day-theme sublime-themes subatomic256-theme subatomic-theme spacegray-theme soothe-theme solarized-theme soft-stone-theme soft-morning-theme soft-charcoal-theme smyx-theme seti-theme reverse-theme railscasts-theme purple-haze-theme professional-theme planet-theme phoenix-dark-pink-theme phoenix-dark-mono-theme organic-green-theme omtose-phellack-theme oldlace-theme occidental-theme obsidian-theme noctilux-theme naquadah-theme mustang-theme monokai-theme monochrome-theme molokai-theme moe-theme minimal-theme material-theme majapahit-theme madhat2r-theme lush-theme light-soap-theme jbeans-theme jazz-theme ir-black-theme clojure-snippets clj-refactor inflections edn paredit peg cider-eval-sexp-fu cider seq queue clojure-mode nginx-mode auctex-latexmk company-auctex auctex csv-mode web-beautify livid-mode skewer-mode simple-httpd json-mode json-snatcher json-reformat js2-refactor multiple-cursors js2-mode js-doc company-tern dash-functional tern coffee-mode yaml-mode helm-company helm-c-yasnippet fuzzy company-web web-completion-data company-statistics company-go company-anaconda company auto-yasnippet yasnippet ac-ispell auto-complete web-mode tagedit slim-mode scss-mode sass-mode pug-mode less-css-mode helm-css-scss haml-mode emmet-mode smeargle orgit magit-gitflow helm-gitignore gitignore-mode gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link evil-magit magit magit-popup xterm-color shell-pop org-projectile org-category-capture org-present org-pomodoro alert log4e gntp org-download multi-term mmm-mode markdown-toc markdown-mode htmlize gnuplot git-gutter-fringe+ git-gutter-fringe fringe-helper git-gutter+ git-commit with-editor git-gutter gh-md flyspell-correct-helm flyspell-correct flycheck-pos-tip pos-tip flycheck eshell-z eshell-prompt-extras esh-help diff-hl auto-dictionary yapfify pyvenv pytest pyenv-mode py-isort pip-requirements live-py-mode hy-mode helm-pydoc cython-mode anaconda-mode pythonic go-guru go-eldoc go-mode ws-butler winum which-key volatile-highlights vi-tilde-fringe uuidgen use-package toc-org spaceline powerline restart-emacs request rainbow-delimiters popwin persp-mode pcre2el paradox spinner org-plus-contrib org-bullets open-junk-file neotree move-text macrostep lorem-ipsum linum-relative link-hint info+ indent-guide hydra hungry-delete hl-todo highlight-parentheses highlight-numbers parent-mode highlight-indentation hide-comnt help-fns+ helm-themes helm-swoop helm-projectile helm-mode-manager helm-make projectile pkg-info epl helm-flx helm-descbinds helm-ag google-translate golden-ratio flx-ido flx fill-column-indicator fancy-battery eyebrowse expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-lisp-state smartparens evil-indent-plus evil-iedit-state iedit evil-exchange evil-escape evil-ediff evil-args evil-anzu anzu evil goto-chg undo-tree eval-sexp-fu highlight elisp-slime-nav dumb-jump f s diminish define-word column-enforce-mode clean-aindent-mode bind-map bind-key auto-highlight-symbol auto-compile packed dash aggressive-indent adaptive-wrap ace-window ace-link ace-jump-helm-line helm avy helm-core popup async)))
 | 
				
			||||||
 | 
					 '(vc-annotate-background nil)
 | 
				
			||||||
 | 
					 '(vc-annotate-color-map
 | 
				
			||||||
 | 
					   (quote
 | 
				
			||||||
 | 
					    ((20 . "#cc6666")
 | 
				
			||||||
 | 
					     (40 . "#de935f")
 | 
				
			||||||
 | 
					     (60 . "#f0c674")
 | 
				
			||||||
 | 
					     (80 . "#b5bd68")
 | 
				
			||||||
 | 
					     (100 . "#8abeb7")
 | 
				
			||||||
 | 
					     (120 . "#81a2be")
 | 
				
			||||||
 | 
					     (140 . "#b294bb")
 | 
				
			||||||
 | 
					     (160 . "#cc6666")
 | 
				
			||||||
 | 
					     (180 . "#de935f")
 | 
				
			||||||
 | 
					     (200 . "#f0c674")
 | 
				
			||||||
 | 
					     (220 . "#b5bd68")
 | 
				
			||||||
 | 
					     (240 . "#8abeb7")
 | 
				
			||||||
 | 
					     (260 . "#81a2be")
 | 
				
			||||||
 | 
					     (280 . "#b294bb")
 | 
				
			||||||
 | 
					     (300 . "#cc6666")
 | 
				
			||||||
 | 
					     (320 . "#de935f")
 | 
				
			||||||
 | 
					     (340 . "#f0c674")
 | 
				
			||||||
 | 
					     (360 . "#b5bd68"))))
 | 
				
			||||||
 | 
					 '(vc-annotate-very-old-color nil))
 | 
				
			||||||
 | 
					(custom-set-faces
 | 
				
			||||||
 | 
					 ;; custom-set-faces was added by Custom.
 | 
				
			||||||
 | 
					 ;; If you edit it by hand, you could mess it up, so be careful.
 | 
				
			||||||
 | 
					 ;; Your init file should contain only one such instance.
 | 
				
			||||||
 | 
					 ;; If there is more than one, they won't work right.
 | 
				
			||||||
 | 
					 )
 | 
				
			||||||
@@ -16,7 +16,9 @@ lg1 = log --graph --all --format=format:'%C(yellow)%h%C(reset) - %C(green)(%ad)%
 | 
				
			|||||||
lg2 = log --graph --all --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n''          %C(white)%s%C(reset) %C(bold white)— %an%C(reset)' --abbrev-commit
 | 
					lg2 = log --graph --all --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n''          %C(white)%s%C(reset) %C(bold white)— %an%C(reset)' --abbrev-commit
 | 
				
			||||||
lg = !"git lg1"
 | 
					lg = !"git lg1"
 | 
				
			||||||
[core]
 | 
					[core]
 | 
				
			||||||
	excludesfile = /home/jfernando/.gitignore_global
 | 
						excludesfile = ~/.gitignore_global
 | 
				
			||||||
 | 
					[filter "lfs"]
 | 
				
			||||||
[include]
 | 
						clean = git-lfs clean -- %f
 | 
				
			||||||
        path = ~/.gitconfig_secret
 | 
						smudge = git-lfs smudge -- %f
 | 
				
			||||||
 | 
						process = git-lfs filter-process
 | 
				
			||||||
 | 
						required = true
 | 
				
			||||||
							
								
								
									
										338
									
								
								i3/.config/i3/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										338
									
								
								i3/.config/i3/config
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,338 @@
 | 
				
			|||||||
 | 
					# This file has been auto-generated by i3-config-wizard(1).
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# It will not be overwritten, so edit it as you like.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Should you change your keyboard layout somewhen, delete
 | 
				
			||||||
 | 
					# this file and re-run i3-config-wizard(1).
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# i3 config file (v4)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Please see http://i3wm.org/docs/userguide.html for a complete reference!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set $mod Mod4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# font for window titles. ISO 10646 = Unicode
 | 
				
			||||||
 | 
					# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
 | 
				
			||||||
 | 
					font xft:Deja Vu Sans 8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Use Mouse+$mod to drag floating windows to their wanted position
 | 
				
			||||||
 | 
					floating_modifier $mod
 | 
				
			||||||
 | 
					#/exec
 | 
				
			||||||
 | 
					# start a terminal
 | 
				
			||||||
 | 
					#bindsym $mod+Return exec --no-startup-id i3-one-tmux
 | 
				
			||||||
 | 
					bindsym $mod+Return [title="^scratch"] scratchpad show
 | 
				
			||||||
 | 
					bindsym Control+Mod1+t exec --no-startup-id i3-sensible-terminal
 | 
				
			||||||
 | 
					bindsym Control+Mod1+Shift+t exec --no-startup-id i3-sensible-terminal --title=scratch -e 'tmux new-session -A -s scratch'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# File manager
 | 
				
			||||||
 | 
					bindsym Control+Mod1+f exec --no-startup-id i3-sensible-terminal --title=filemanager -e 'zsh -c ranger'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# start lock
 | 
				
			||||||
 | 
					bindsym Control+Mod1+l exec --no-startup-id i3-exit.sh lock
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bindsym Control+Mod1+Shift+w exec --no-startup-id $BROWSER2
 | 
				
			||||||
 | 
					bindsym Control+Mod1+w exec --no-startup-id $BROWSER
 | 
				
			||||||
 | 
					bindsym Control+Mod1+v exec --no-startup-id pavucontrol
 | 
				
			||||||
 | 
					bindsym Control+Mod1+g exec --no-startup-id gvim
 | 
				
			||||||
 | 
					bindsym Control+Mod1+e exec --no-startup-id myemacs -c
 | 
				
			||||||
 | 
					bindsym $mod+Tab exec --no-startup-id winmenu.sh
 | 
				
			||||||
 | 
					bindsym Mod1+Tab exec --no-startup-id winmenu.sh
 | 
				
			||||||
 | 
					bindsym $mod+p [title="filemanager"] scratchpad show; [class="Nemo|Thunar"] scratchpad show
 | 
				
			||||||
 | 
					bindsym $mod+period [instance="emacs" title="^(?!myagenda$)"] scratchpad show
 | 
				
			||||||
 | 
					bindsym $mod+shift+comma exec --no-startup-id myemacs -nc --eval '(progn (find-file "~/Dropbox/Todo/org/rules.org") (org-agenda-list) (set-frame-name "myagenda"))'
 | 
				
			||||||
 | 
					bindsym $mod+c exec myemacs -n -e '(make-capture-frame)' 
 | 
				
			||||||
 | 
					bindsym $mod+comma [title="^myagenda"] scratchpad show
 | 
				
			||||||
 | 
					bindsym $mod+Control+s exec --no-startup-id flameshot gui
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Spotify
 | 
				
			||||||
 | 
					bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
 | 
				
			||||||
 | 
					bindsym XF86AudioNext exec --no-startup-id playerctl next
 | 
				
			||||||
 | 
					bindsym XF86AudioPrev exec --no-startup-id playerctl previous
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Volume
 | 
				
			||||||
 | 
					bindsym XF86AudioRaiseVolume exec --no-startup-id volume-up.sh
 | 
				
			||||||
 | 
					bindsym XF86AudioLowerVolume exec --no-startup-id volume-down.sh
 | 
				
			||||||
 | 
					bindsym XF86AudioMute exec --no-startup-id volume-toggle-mute.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Brightness
 | 
				
			||||||
 | 
					#bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight +5
 | 
				
			||||||
 | 
					#bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# kill focused window
 | 
				
			||||||
 | 
					bindsym $mod+q kill
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# start dmenu (a program launcher)
 | 
				
			||||||
 | 
					#bindsym $mod+Space exec --no-startup-id dmenu_run
 | 
				
			||||||
 | 
					bindsym $mod+space exec --no-startup-id runmenu
 | 
				
			||||||
 | 
					bindsym $mod+o exec --no-startup-id filemenu $HOME
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Arandr magic
 | 
				
			||||||
 | 
					bindsym Mod1+F5 exec --no-startup-id monitors single
 | 
				
			||||||
 | 
					bindsym Mod1+F6 exec --no-startup-id monitors single-hdmi
 | 
				
			||||||
 | 
					bindsym Mod1+F7 exec --no-startup-id monitors dual-mirror
 | 
				
			||||||
 | 
					bindsym Mod1+F8 exec --no-startup-id monitors dual-home
 | 
				
			||||||
 | 
					bindsym Mod1+F9 exec --no-startup-id monitors dual
 | 
				
			||||||
 | 
					bindsym Mod1+F10 exec --no-startup-id xrandr --auto
 | 
				
			||||||
 | 
					bindsym Mod1+F11 exec --no-startup-id monitors # auto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Move to displays
 | 
				
			||||||
 | 
					bindsym $mod+Mod1+j move workspace to output down
 | 
				
			||||||
 | 
					bindsym $mod+Mod1+k move workspace to output up
 | 
				
			||||||
 | 
					bindsym $mod+Mod1+l move workspace to output right
 | 
				
			||||||
 | 
					bindsym $mod+Mod1+h move workspace to output left
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Move windows in tiled mode
 | 
				
			||||||
 | 
					bindsym $mod+Shift+H move left 100px
 | 
				
			||||||
 | 
					bindsym $mod+Shift+J move down 100px
 | 
				
			||||||
 | 
					bindsym $mod+Shift+K move up 100px
 | 
				
			||||||
 | 
					bindsym $mod+Shift+L move right 100px
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# change focus
 | 
				
			||||||
 | 
					bindsym $mod+h focus left
 | 
				
			||||||
 | 
					bindsym $mod+j focus down
 | 
				
			||||||
 | 
					bindsym $mod+k focus up
 | 
				
			||||||
 | 
					bindsym $mod+l focus right
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# alternatively, you can use the cursor keys:
 | 
				
			||||||
 | 
					bindsym $mod+Left focus left
 | 
				
			||||||
 | 
					bindsym $mod+Down focus down
 | 
				
			||||||
 | 
					bindsym $mod+Up focus up
 | 
				
			||||||
 | 
					bindsym $mod+Right focus right
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# move focused window
 | 
				
			||||||
 | 
					bindsym $mod+m mode "move" 
 | 
				
			||||||
 | 
					# alternatively, you can use the cursor keys:
 | 
				
			||||||
 | 
					bindsym $mod+Shift+Left move left
 | 
				
			||||||
 | 
					bindsym $mod+Shift+Down move down
 | 
				
			||||||
 | 
					bindsym $mod+Shift+Up move up
 | 
				
			||||||
 | 
					bindsym $mod+Shift+Right move right
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# split in horizontal orientation
 | 
				
			||||||
 | 
					bindsym $mod+Shift+g split h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# split in vertical orientation
 | 
				
			||||||
 | 
					bindsym $mod+Shift+v split v
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# enter fullscreen mode for the focused container
 | 
				
			||||||
 | 
					bindsym $mod+f fullscreen
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# change container layout (stacked, tabbed, default)
 | 
				
			||||||
 | 
					bindsym $mod+s layout stacking
 | 
				
			||||||
 | 
					bindsym $mod+w layout tabbed
 | 
				
			||||||
 | 
					bindsym $mod+e layout default
 | 
				
			||||||
 | 
					bindsym $mod+g layout splith
 | 
				
			||||||
 | 
					bindsym $mod+v layout splitv
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# toggle tiling / floating
 | 
				
			||||||
 | 
					bindsym $mod+Shift+space floating toggle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# change focus between tiling / floating windows
 | 
				
			||||||
 | 
					bindsym $mod+i focus mode_toggle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Make the currently focused window a scratchpad
 | 
				
			||||||
 | 
					bindsym $mod+Shift+minus move scratchpad
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Show the first scratchpad window
 | 
				
			||||||
 | 
					bindsym $mod+minus [instance="*"] scratchpad show
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the parent container
 | 
				
			||||||
 | 
					bindsym $mod+u focus parent
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the child container
 | 
				
			||||||
 | 
					bindsym $mod+d focus child
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# switch to workspace
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bindsym $mod+grave workspace 0: Personal
 | 
				
			||||||
 | 
					bindsym $mod+1 workspace 1: Term
 | 
				
			||||||
 | 
					bindsym $mod+2 workspace 2: Web
 | 
				
			||||||
 | 
					bindsym $mod+3 workspace 3: Edit
 | 
				
			||||||
 | 
					bindsym $mod+4 workspace 4: Viewer
 | 
				
			||||||
 | 
					bindsym $mod+5 workspace 5: Files
 | 
				
			||||||
 | 
					bindsym $mod+6 workspace 6: Music
 | 
				
			||||||
 | 
					bindsym $mod+7 workspace 7: Chat
 | 
				
			||||||
 | 
					bindsym $mod+8 workspace 8: Misc Big
 | 
				
			||||||
 | 
					bindsym $mod+9 workspace 9: Misc Small
 | 
				
			||||||
 | 
					bindsym $mod+0 workspace number 10
 | 
				
			||||||
 | 
					bindsym $mod+Control+h workspace prev
 | 
				
			||||||
 | 
					bindsym $mod+Control+l workspace next 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# move focused container to workspace
 | 
				
			||||||
 | 
					bindsym $mod+Shift+grave move container to workspace             0: Personal
 | 
				
			||||||
 | 
					bindsym $mod+Shift+exclam move container to workspace            1: Term
 | 
				
			||||||
 | 
					bindsym $mod+Shift+at move container to workspace                2: Web
 | 
				
			||||||
 | 
					bindsym $mod+Shift+numbersign move container to workspace        3: Edit
 | 
				
			||||||
 | 
					bindsym $mod+Shift+dollar move container to workspace            4: Viewer
 | 
				
			||||||
 | 
					bindsym $mod+Shift+percent move container to workspace           5: Files
 | 
				
			||||||
 | 
					bindsym $mod+Shift+asciicircum move container to workspace       6: Music
 | 
				
			||||||
 | 
					bindsym $mod+Shift+ampersand move container to workspace         7: Chat
 | 
				
			||||||
 | 
					bindsym $mod+Shift+asterisk move container to workspace          8: Misc Big
 | 
				
			||||||
 | 
					bindsym $mod+Shift+parenleft move container to workspace         9: Misc Small
 | 
				
			||||||
 | 
					bindsym $mod+Shift+parenright move container to workspace        number 10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# reload the configuration file
 | 
				
			||||||
 | 
					bindsym $mod+Shift+C reload
 | 
				
			||||||
 | 
					# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
 | 
				
			||||||
 | 
					bindsym $mod+Shift+R restart
 | 
				
			||||||
 | 
					# exit i3 (logs you out of your X session)
 | 
				
			||||||
 | 
					bindsym $mod+Shift+E exec --no-startup-id i3-exit.sh logout
 | 
				
			||||||
 | 
					bindsym $mod+Mod1+s exec --no-startup-id i3-exit.sh suspend
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bindsym $mod+Shift+p exec passmenu
 | 
				
			||||||
 | 
					bindsym $mod+Shift+n exec netmenu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# move with finer grain
 | 
				
			||||||
 | 
					mode "move" {
 | 
				
			||||||
 | 
						bindsym H move left 100px
 | 
				
			||||||
 | 
						bindsym J move down 100px
 | 
				
			||||||
 | 
						bindsym K move up 100px
 | 
				
			||||||
 | 
						bindsym L move right 100px
 | 
				
			||||||
 | 
					        bindsym Shift+H move left 10 px
 | 
				
			||||||
 | 
					        bindsym Shift+J move down 10px
 | 
				
			||||||
 | 
					        bindsym Shift+K move up 10 px
 | 
				
			||||||
 | 
					        bindsym Shift+L move right 10 px
 | 
				
			||||||
 | 
					        # back to normal: Enter or Escape
 | 
				
			||||||
 | 
					        bindsym Return mode "default"
 | 
				
			||||||
 | 
					        bindsym Escape mode "default"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# resize window (you can also use the mouse for that)
 | 
				
			||||||
 | 
					mode "resize" {
 | 
				
			||||||
 | 
					        # These bindings trigger as soon as you enter the resize mode
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # Pressing left will shrink the window’s width.
 | 
				
			||||||
 | 
					        # Pressing right will grow the window’s width.
 | 
				
			||||||
 | 
					        # Pressing up will shrink the window’s height.
 | 
				
			||||||
 | 
					        # Pressing down will grow the window’s height.
 | 
				
			||||||
 | 
					        bindsym H resize shrink width 100 px or 100 ppt
 | 
				
			||||||
 | 
					        bindsym J resize grow height 100 px or 100 ppt
 | 
				
			||||||
 | 
					        bindsym K resize shrink height 100 px or 100 ppt
 | 
				
			||||||
 | 
					        bindsym L resize grow width 100 px or 100 ppt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        bindsym Shift+H resize shrink width 10 px or 10 ppt
 | 
				
			||||||
 | 
					        bindsym Shift+J resize grow height 10 px or 10 ppt
 | 
				
			||||||
 | 
					        bindsym Shift+K resize shrink height 10 px or 10 ppt
 | 
				
			||||||
 | 
					        bindsym Shift+L resize grow width 10 px or 10 ppt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # back to normal: Enter or Escape
 | 
				
			||||||
 | 
					        bindsym Return mode "default"
 | 
				
			||||||
 | 
					        bindsym Escape mode "default"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bindsym $mod+r mode "resize"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bindsym $mod+n exec i3-input -F 'rename workspace to %s' -P 'New name: '
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Start i3bar to display a workspace bar (plus the system information i3status
 | 
				
			||||||
 | 
					# finds out, if available)
 | 
				
			||||||
 | 
					#bar {
 | 
				
			||||||
 | 
					#status_command i3status
 | 
				
			||||||
 | 
					#}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# bar {
 | 
				
			||||||
 | 
					#     mode dock
 | 
				
			||||||
 | 
					#     position top
 | 
				
			||||||
 | 
					#     font pango:DejaVu Sans 10
 | 
				
			||||||
 | 
					#     workspace_buttons yes
 | 
				
			||||||
 | 
					#     # status_command ~/.config/i3/status.sh
 | 
				
			||||||
 | 
					#     status_command i3status -c ~/.config/i3status/conf
 | 
				
			||||||
 | 
					#     colors {
 | 
				
			||||||
 | 
					#         background #101010
 | 
				
			||||||
 | 
					#         statusline #ffffff
 | 
				
			||||||
 | 
					#         focused_workspace #101010 #586e75 #fdf6e3
 | 
				
			||||||
 | 
					#         active_workspace #101010 #101010 #cb4b16
 | 
				
			||||||
 | 
					#         inactive_workspace #101010 #101010 #93a1a1
 | 
				
			||||||
 | 
					#         urgent_workspace #fdf6e3 #dc322f
 | 
				
			||||||
 | 
					#     }
 | 
				
			||||||
 | 
					# }
 | 
				
			||||||
 | 
					# class                 border  backgr. text    indicator
 | 
				
			||||||
 | 
					client.focused          #4c7899 #4c7899 #fefef #93a1a1 #2e9ef4
 | 
				
			||||||
 | 
					client.focused_inactive #4c7899 #101010 #93a1a1 #484e50
 | 
				
			||||||
 | 
					client.unfocused        #ffffff #101010 #93a1a1 #292d2e
 | 
				
			||||||
 | 
					client.urgent           #2f343a #101010 #93a1a1 #900000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					default_border pixel 3
 | 
				
			||||||
 | 
					# smart_borders on
 | 
				
			||||||
 | 
					workspace_layout tabbed
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					for_window [title="^floatingwin"] floating enable; 
 | 
				
			||||||
 | 
					for_window [title="^capture"] floating enable; 
 | 
				
			||||||
 | 
					for_window [title="^myagenda"] move to scratchpad
 | 
				
			||||||
 | 
					for_window [class="^Google-chrome$"] border none
 | 
				
			||||||
 | 
					for_window [class="^Chromium"] border none
 | 
				
			||||||
 | 
					for_window [class="^Pavucontrol"] floating enable
 | 
				
			||||||
 | 
					assign [class="Google-chrome" window_role="browser"] 2: Web
 | 
				
			||||||
 | 
					assign [class="Chromium" window_role="browser"] 2: Web
 | 
				
			||||||
 | 
					for_window [class="^Firefox$"] border none
 | 
				
			||||||
 | 
					for_window [class="^Polybar"] border none
 | 
				
			||||||
 | 
					assign [class="Firefox" window_role="browser"] 2: Web
 | 
				
			||||||
 | 
					for_window [class="^Xfce4-notifyd$"] floating enable; border none; focus mode_toggle 
 | 
				
			||||||
 | 
					for_window [class="^termite"] border 1px
 | 
				
			||||||
 | 
					for_window [class="^lxterminal"] border 1px
 | 
				
			||||||
 | 
					for_window [class="^xfce4-terminal"] border 1px
 | 
				
			||||||
 | 
					for_window [title="^scratch"] move to scratchpad
 | 
				
			||||||
 | 
					assign [class="^Nemo|Thunar|Ranger"] 5: Files
 | 
				
			||||||
 | 
					for_window [title="^filemanager$"] move to scratchpad;
 | 
				
			||||||
 | 
					#KDE
 | 
				
			||||||
 | 
					for_window [class="Plasma-desktop"] border none
 | 
				
			||||||
 | 
					for_window [class="krunner"] border none
 | 
				
			||||||
 | 
					for_window [class="Kmix"] floating enable;
 | 
				
			||||||
 | 
					for_window [class="Plasmoidviewer"] floating enable;
 | 
				
			||||||
 | 
					for_window [class="Klipper"] floating enable; border none
 | 
				
			||||||
 | 
					for_window [class="Spotify"] move to workspace 6: Music
 | 
				
			||||||
 | 
					#assign [class="^Gvim$"] 3: Edit
 | 
				
			||||||
 | 
					#assign [class="^Evince$"] 4: Viewer
 | 
				
			||||||
 | 
					assign [class="^Audacious$"] 6: Music
 | 
				
			||||||
 | 
					assign [class="^Xchat$"] 7: Chat
 | 
				
			||||||
 | 
					#for_window [class="Pcmanfm"] floating enable
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					workspace "0: Personal" output DP-2
 | 
				
			||||||
 | 
					workspace "1: Term" output DP-1
 | 
				
			||||||
 | 
					workspace "2: Web" output DP-1
 | 
				
			||||||
 | 
					workspace "3: Edit" output DP-1
 | 
				
			||||||
 | 
					workspace "4: Viewer" output eDP-1
 | 
				
			||||||
 | 
					workspace "5: Files" output eDP-1
 | 
				
			||||||
 | 
					workspace "6: Music" output eDP-1
 | 
				
			||||||
 | 
					workspace "7: Chat" output eDP-1
 | 
				
			||||||
 | 
					workspace "8: Misc Big" output DP-1
 | 
				
			||||||
 | 
					workspace "9: Misc Small" output eDP-1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					gaps inner 8
 | 
				
			||||||
 | 
					gaps outer 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
 | 
				
			||||||
 | 
					mode "$mode_system" {
 | 
				
			||||||
 | 
					        bindsym l exec --no-startup-id i3-exit.sh lock, mode "default"
 | 
				
			||||||
 | 
					        bindsym e exec --no-startup-id i3-exit.sh logout #, mode "default"
 | 
				
			||||||
 | 
					        bindsym s exec --no-startup-id i3-exit.sh suspend #, mode "default"
 | 
				
			||||||
 | 
					        bindsym h exec --no-startup-id i3-exit.sh hibernate, mode "default"
 | 
				
			||||||
 | 
					        bindsym r exec --no-startup-id i3-exit.sh reboot, mode "default"
 | 
				
			||||||
 | 
					        bindsym Shift+s exec --no-startup-id i3-exit.sh shutdown, mode "default"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# back to normal: Enter or Escape
 | 
				
			||||||
 | 
					        bindsym Return mode "default"
 | 
				
			||||||
 | 
					        bindsym Escape mode "default"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					bindsym $mod+Delete mode "$mode_system"
 | 
				
			||||||
 | 
					bindsym $mod+Escape exec xfce4-session-logout
 | 
				
			||||||
 | 
					#exec --no-startup-id xautolock -corners '----' -time 10 -locker 'dm-tool lock' # lightdm
 | 
				
			||||||
 | 
					#exec xautolock -time 10 -corners "----" -locker 'i3lock -t -c 000000 -i ~/Pictures/Wallpapers/Game\ Over\ Hacker.png' &
 | 
				
			||||||
 | 
					exec --no-startup-id compton -b --config ~/.compton.conf 
 | 
				
			||||||
 | 
					exec --no-startup-id dropbox start
 | 
				
			||||||
 | 
					exec --no-startup-id i3-sensible-terminal --title=filemanager -e 'ranger'
 | 
				
			||||||
 | 
					exec --no-startup-id nitrogen --restore
 | 
				
			||||||
 | 
					exec --no-startup-id nm-applet
 | 
				
			||||||
 | 
					exec --no-startup-id pasystray 
 | 
				
			||||||
 | 
					exec --no-startup-id syndaemon -i 0.5 -d
 | 
				
			||||||
 | 
					exec --no-startup-id i3-sensible-terminal --title=scratch -e 'tmux new-session -A -s scratch'
 | 
				
			||||||
 | 
					exec --no-startup-id i3-exit.sh autolock
 | 
				
			||||||
 | 
					exec --no-startup-id xfce4-power-manager
 | 
				
			||||||
 | 
					#exec --no-startup-id xfsettingsd --sm-client-disable &
 | 
				
			||||||
 | 
					exec --no-startup-id clipit -n
 | 
				
			||||||
 | 
					exec --no-startup-id owncloud
 | 
				
			||||||
 | 
					exec --no-startup-id udiskie --no-notify --tray --use-udisks2  
 | 
				
			||||||
 | 
					exec --no-startup-id polybar.sh
 | 
				
			||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					#!/bin/sh
 | 
				
			||||||
echo "{\"version\":1}"
 | 
					echo "{\"version\":1}"
 | 
				
			||||||
echo "[[] ,"
 | 
					echo "[[] ,"
 | 
				
			||||||
conky -c ~/.i3/conkyrc
 | 
					conky -c ~/.config/i3/conkyrc
 | 
				
			||||||
@@ -1,18 +1,20 @@
 | 
				
			|||||||
out_to_x no
 | 
					conky.config = {
 | 
				
			||||||
own_window no
 | 
					out_to_x=no,
 | 
				
			||||||
out_to_console yes
 | 
					own_window=no,
 | 
				
			||||||
background no
 | 
					out_to_console=yes,
 | 
				
			||||||
max_text_width 0
 | 
					background=no,
 | 
				
			||||||
# Update interval in seconds
 | 
					max_text_width=0,
 | 
				
			||||||
update_interval 2.0
 | 
					--Update interval in seconds
 | 
				
			||||||
total_run_times 0
 | 
					update_interval=2.0,
 | 
				
			||||||
override_utf8_locale yes
 | 
					total_run_times=0,
 | 
				
			||||||
 | 
					override_utf8_locale=yes
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TEXT
 | 
					conky.text = [[
 | 
				
			||||||
 | 
					 { "full_text" : "Phys" , "color" : "\#b58900" } ,
 | 
				
			||||||
# [{ "full_text" : "MPD" , "color" : "\#b58900" } ,
 | 
					 { "full_text" : "${execi 10 sensors | grep 'Phys' | cut -d" " -f 5}", "color" :"\#93a1a1" } , 
 | 
				
			||||||
# { "full_text" : "${if_mpd_playing}${mpd_smart 50} ${mpd_elapsed}/${mpd_length}${else}${mpd_status}${endif}" , "color" :"\#93a1a1" } ,  
 | 
					 { "full_text" : "ACPI" , "color" : "\#b58900" } ,
 | 
				
			||||||
 [
 | 
					 { "full_text" : "${execi 10 sensors | grep 'temp1' | cut -d" " -f 9}", "color" :"\#93a1a1" } , 
 | 
				
			||||||
 { "full_text" : "HD" , "color" : "\#b58900" } ,
 | 
					 { "full_text" : "HD" , "color" : "\#b58900" } ,
 | 
				
			||||||
 { "full_text" : "home: ${fs_free /home}/${fs_size /home}  root: ${fs_free /}/${fs_size /}" , "color" :"\#93a1a1" } , 
 | 
					 { "full_text" : "home: ${fs_free /home}/${fs_size /home}  root: ${fs_free /}/${fs_size /}" , "color" :"\#93a1a1" } , 
 | 
				
			||||||
 { "full_text" : "Ram" , "color" : "\#b58900" } ,
 | 
					 { "full_text" : "Ram" , "color" : "\#b58900" } ,
 | 
				
			||||||
@@ -23,4 +25,5 @@ TEXT
 | 
				
			|||||||
 { "full_text" : "${battery BAT0}" , "color" : 
 | 
					 { "full_text" : "${battery BAT0}" , "color" : 
 | 
				
			||||||
  ${if_match ${battery_percent BAT0}<20}"\#b95670"${else}"\#5f5f5f"${endif} } ,
 | 
					  ${if_match ${battery_percent BAT0}<20}"\#b95670"${else}"\#5f5f5f"${endif} } ,
 | 
				
			||||||
 { "full_text" : "Date" , "color" : "\#b58900" } , 
 | 
					 { "full_text" : "Date" , "color" : "\#b58900" } , 
 | 
				
			||||||
 { "full_text" : "${time %b %d %Y %I:%M%P}", "color" :"\#93a1a1" }]  ,
 | 
					 { "full_text" : "${time %b %d %Y %I:%M%P}", "color" :"\#93a1a1" }
 | 
				
			||||||
 | 
					 ]]
 | 
				
			||||||
							
								
								
									
										1
									
								
								i3/.config/i3/i3blocks-contrib
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								i3/.config/i3/i3blocks-contrib
									
									
									
									
									
										Submodule
									
								
							 Submodule i3/.config/i3/i3blocks-contrib added at 343f881878
									
								
							
							
								
								
									
										160
									
								
								i3/.config/i3/i3blocks.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										160
									
								
								i3/.config/i3/i3blocks.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,160 @@
 | 
				
			|||||||
 | 
					# i3blocks config file
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Please see man i3blocks for a complete reference!
 | 
				
			||||||
 | 
					# The man page is also hosted at http://vivien.github.io/i3blocks
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# List of valid properties:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# align
 | 
				
			||||||
 | 
					# color
 | 
				
			||||||
 | 
					# command
 | 
				
			||||||
 | 
					# full_text
 | 
				
			||||||
 | 
					# instance
 | 
				
			||||||
 | 
					# interval
 | 
				
			||||||
 | 
					# label
 | 
				
			||||||
 | 
					# min_width
 | 
				
			||||||
 | 
					# name
 | 
				
			||||||
 | 
					# separator
 | 
				
			||||||
 | 
					# separator_block_width
 | 
				
			||||||
 | 
					# short_text
 | 
				
			||||||
 | 
					# signal
 | 
				
			||||||
 | 
					# urgent
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Global properties
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The top properties below are applied to every block, but can be overridden.
 | 
				
			||||||
 | 
					# Each block command defaults to the script name to avoid boilerplate.
 | 
				
			||||||
 | 
					command=$SCRIPT_DIR/$BLOCK_NAME
 | 
				
			||||||
 | 
					separator_block_width=15
 | 
				
			||||||
 | 
					markup=pango
 | 
				
			||||||
 | 
					color=#FFFFFF
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Volume indicator
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The first parameter sets the step (and units to display)
 | 
				
			||||||
 | 
					# The second parameter overrides the mixer selection
 | 
				
			||||||
 | 
					# See the script for details.
 | 
				
			||||||
 | 
					#[volume 1 pulse]
 | 
				
			||||||
 | 
					##label=VOL
 | 
				
			||||||
 | 
					#label=♪
 | 
				
			||||||
 | 
					#instance=Main
 | 
				
			||||||
 | 
					##instance=PCM
 | 
				
			||||||
 | 
					#interval=once
 | 
				
			||||||
 | 
					#signal=10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Temperature
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Support multiple chips, though lm-sensors.
 | 
				
			||||||
 | 
					# The script may be called with -w and -c switches to specify thresholds,
 | 
				
			||||||
 | 
					# see the script for details.
 | 
				
			||||||
 | 
					[temperature temp1]
 | 
				
			||||||
 | 
					label=TEMP
 | 
				
			||||||
 | 
					interval=10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Memory usage
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The type defaults to "mem" if the instance is not specified.
 | 
				
			||||||
 | 
					[memory]
 | 
				
			||||||
 | 
					label=MemFree
 | 
				
			||||||
 | 
					separator=true
 | 
				
			||||||
 | 
					interval=30
 | 
				
			||||||
 | 
					instance=MemFree:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[memory]
 | 
				
			||||||
 | 
					#label=SWAP
 | 
				
			||||||
 | 
					#instance=swap
 | 
				
			||||||
 | 
					#separator=false
 | 
				
			||||||
 | 
					#interval=30
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Disk usage
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The directory defaults to $HOME if the instance is not specified.
 | 
				
			||||||
 | 
					# The script may be called with a optional argument to set the alert
 | 
				
			||||||
 | 
					# (defaults to 10 for 10%).
 | 
				
			||||||
 | 
					[disk 1]
 | 
				
			||||||
 | 
					label=/home
 | 
				
			||||||
 | 
					#instance=/mnt/data
 | 
				
			||||||
 | 
					interval=30
 | 
				
			||||||
 | 
					separator=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[disk]
 | 
				
			||||||
 | 
					label=/ 
 | 
				
			||||||
 | 
					instance=/
 | 
				
			||||||
 | 
					interval=30
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Network interface monitoring
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# If the instance is not specified, use the interface used for default route.
 | 
				
			||||||
 | 
					# The address can be forced to IPv4 or IPv6 with -4 or -6 switches.
 | 
				
			||||||
 | 
					[iface]
 | 
				
			||||||
 | 
					instance=wlp1s0
 | 
				
			||||||
 | 
					interval=10
 | 
				
			||||||
 | 
					separator=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[wifi]
 | 
				
			||||||
 | 
					instance=wlp2s0
 | 
				
			||||||
 | 
					interval=10
 | 
				
			||||||
 | 
					separator=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[bandwidth]
 | 
				
			||||||
 | 
					#instance=eth0
 | 
				
			||||||
 | 
					interval=5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# CPU usage
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The script may be called with -w and -c switches to specify thresholds,
 | 
				
			||||||
 | 
					# see the script for details.
 | 
				
			||||||
 | 
					[cpu_usage]
 | 
				
			||||||
 | 
					label=CPU
 | 
				
			||||||
 | 
					interval=10
 | 
				
			||||||
 | 
					min_width=CPU: 100.00%
 | 
				
			||||||
 | 
					#separator=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[load_average]
 | 
				
			||||||
 | 
					#interval=10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Battery indicator
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The battery instance defaults to 0.
 | 
				
			||||||
 | 
					[battery]
 | 
				
			||||||
 | 
					#label=BAT
 | 
				
			||||||
 | 
					label=⚡
 | 
				
			||||||
 | 
					instance=1
 | 
				
			||||||
 | 
					interval=30
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Date Time
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					[time]
 | 
				
			||||||
 | 
					command=date '+%Y-%m-%d %H:%M:%S'
 | 
				
			||||||
 | 
					interval=5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Generic media player support
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This displays "ARTIST - SONG" if a music is playing.
 | 
				
			||||||
 | 
					# Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others.
 | 
				
			||||||
 | 
					#[mediaplayer]
 | 
				
			||||||
 | 
					#instance=spotify
 | 
				
			||||||
 | 
					#interval=5
 | 
				
			||||||
 | 
					#signal=10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# OpenVPN support
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Support multiple VPN, with colors.
 | 
				
			||||||
 | 
					# [openvpn]
 | 
				
			||||||
 | 
					# interval=20
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Key indicators
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Add the following bindings to i3 config file:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks
 | 
				
			||||||
 | 
					# bindsym --release Num_Lock  exec pkill -SIGRTMIN+11 i3blocks
 | 
				
			||||||
 | 
					#[keyindicator]
 | 
				
			||||||
 | 
					#instance=CAPS
 | 
				
			||||||
 | 
					#interval=once
 | 
				
			||||||
 | 
					#signal=11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[keyindicator]
 | 
				
			||||||
 | 
					#instance=NUM
 | 
				
			||||||
 | 
					#interval=once
 | 
				
			||||||
 | 
					#signal=11
 | 
				
			||||||
							
								
								
									
										77
									
								
								i3/.config/i3/status.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								i3/.config/i3/status.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,77 @@
 | 
				
			|||||||
 | 
					general {
 | 
				
			||||||
 | 
					        output_format = "dzen2"
 | 
				
			||||||
 | 
					        colors = true
 | 
				
			||||||
 | 
					        interval = 5
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					order += "ipv6"
 | 
				
			||||||
 | 
					order += "disk /"
 | 
				
			||||||
 | 
					order += "run_watch DHCP"
 | 
				
			||||||
 | 
					order += "run_watch VPNC"
 | 
				
			||||||
 | 
					order += "path_exists VPN"
 | 
				
			||||||
 | 
					order += "wireless wlan0"
 | 
				
			||||||
 | 
					order += "ethernet eth0"
 | 
				
			||||||
 | 
					order += "battery 0"
 | 
				
			||||||
 | 
					# order += "cpu_temperature 0"
 | 
				
			||||||
 | 
					order += "load"
 | 
				
			||||||
 | 
					order += "tztime local"
 | 
				
			||||||
 | 
					order += "tztime berlin"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					wireless wlan0 {
 | 
				
			||||||
 | 
					        format_up = "W: (%quality at %essid, %bitrate) %ip"
 | 
				
			||||||
 | 
					        format_down = "W: down"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ethernet eth0 {
 | 
				
			||||||
 | 
					        # if you use %speed, i3status requires the cap_net_admin capability
 | 
				
			||||||
 | 
					        format_up = "E: %ip (%speed)           "
 | 
				
			||||||
 | 
					        format_down = "E: down"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					battery 0 {
 | 
				
			||||||
 | 
					        format = "%status %percentage %remaining %emptytime"
 | 
				
			||||||
 | 
					        format_down = "No battery"
 | 
				
			||||||
 | 
					        status_chr = "⚡ CHR"
 | 
				
			||||||
 | 
					        status_bat = "🔋 BAT"
 | 
				
			||||||
 | 
					        status_unk = "? UNK"
 | 
				
			||||||
 | 
					        status_full = "☻ FULL"
 | 
				
			||||||
 | 
					        path = "/sys/class/power_supply/BAT0/uevent"
 | 
				
			||||||
 | 
					        low_threshold = 10
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					run_watch DHCP {
 | 
				
			||||||
 | 
					        pidfile = "/var/run/dhclient*.pid"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					run_watch VPNC {
 | 
				
			||||||
 | 
					        # file containing the PID of a vpnc process
 | 
				
			||||||
 | 
					        pidfile = "/var/run/vpnc/pid"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					path_exists VPN {
 | 
				
			||||||
 | 
					        # path exists when a VPN tunnel launched by nmcli/nm-applet is active
 | 
				
			||||||
 | 
					        path = "/proc/sys/net/ipv4/conf/tun0"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tztime local {
 | 
				
			||||||
 | 
					        format = "%Y-%m-%d %H:%M:%S"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tztime berlin {
 | 
				
			||||||
 | 
					        format = "%Y-%m-%d %H:%M:%S %Z"
 | 
				
			||||||
 | 
					        timezone = "Europe/Berlin"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					load {
 | 
				
			||||||
 | 
					        format = "%5min"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cpu_temperature 0 {
 | 
				
			||||||
 | 
					#         format = "T: %degrees °C"
 | 
				
			||||||
 | 
					#         path = "/sys/devices/platform/coretemp.0/temp1_input"
 | 
				
			||||||
 | 
					# }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					disk "/" {
 | 
				
			||||||
 | 
					        format = "%free"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										6
									
								
								i3/.config/i3/status.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										6
									
								
								i3/.config/i3/status.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					#1/bin/sh
 | 
				
			||||||
 | 
					SCRIPT_DIR=/usr/lib/i3blocks
 | 
				
			||||||
 | 
					if [ ! -d "$SCRIPT_DIR" ]; then
 | 
				
			||||||
 | 
					  SCRIPT_DIR=/usr/share/i3blocks
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					CONTRIB_PATH=$HOME/.config/i3/i3blocks-contrib SCRIPT_DIR=$SCRIPT_DIR i3blocks -c $HOME/.config/i3/i3blocks.conf
 | 
				
			||||||
							
								
								
									
										62
									
								
								i3/.config/i3status/conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								i3/.config/i3status/conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
				
			|||||||
 | 
					general {
 | 
				
			||||||
 | 
					        colors = true
 | 
				
			||||||
 | 
					        interval = 5
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					order += "disk /"
 | 
				
			||||||
 | 
					order += "disk /home"
 | 
				
			||||||
 | 
					order += "path_exists VPN"
 | 
				
			||||||
 | 
					order += "wireless wlp2s0"
 | 
				
			||||||
 | 
					order += "ethernet eth0"
 | 
				
			||||||
 | 
					order += "battery 0"
 | 
				
			||||||
 | 
					order += "cpu_temperature 0"
 | 
				
			||||||
 | 
					order += "load"
 | 
				
			||||||
 | 
					order += "tztime local"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					wireless wlp2s0 {
 | 
				
			||||||
 | 
					        format_up = "%essid %ip %quality %bitrate"
 | 
				
			||||||
 | 
					        format_down = "Wireless down"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ethernet eth0 {
 | 
				
			||||||
 | 
					        # if you use %speed, i3status requires the cap_net_admin capability
 | 
				
			||||||
 | 
					        format_up = "E: %ip (%speed)           "
 | 
				
			||||||
 | 
					        format_down = "E: down"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					battery 0 {
 | 
				
			||||||
 | 
					        format = "%status %percentage %remaining %emptytime"
 | 
				
			||||||
 | 
					        format_down = "No battery"
 | 
				
			||||||
 | 
					        status_chr = "⚡ CHR"
 | 
				
			||||||
 | 
					        status_bat = "🔋 BAT"
 | 
				
			||||||
 | 
					        status_unk = "? UNK"
 | 
				
			||||||
 | 
					        status_chr = "⚡ FULL"
 | 
				
			||||||
 | 
					        path = "/sys/class/power_supply/BAT%d/uevent"
 | 
				
			||||||
 | 
					        low_threshold = 10
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					path_exists VPN {
 | 
				
			||||||
 | 
					        # path exists when a VPN tunnel launched by nmcli/nm-applet is active
 | 
				
			||||||
 | 
					        path = "/proc/sys/net/ipv4/conf/ppp0"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tztime local {
 | 
				
			||||||
 | 
					        format = "%H:%M %d/%m/%Y"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					load {
 | 
				
			||||||
 | 
					        format = "%5min"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cpu_temperature 0 {
 | 
				
			||||||
 | 
					#         format = "T: %degrees °C"
 | 
				
			||||||
 | 
					#         path = "/sys/devices/platform/coretemp.0/temp1_input"
 | 
				
			||||||
 | 
					# }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					disk "/" {
 | 
				
			||||||
 | 
					        format = "%free / "
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					disk "/home" {
 | 
				
			||||||
 | 
					        format = "%free /home "
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										3
									
								
								i3/.dmenurc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								i3/.dmenurc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					DMENU_FONT='-*-*-medium-r-*-*-18-*-*-*-*-*-*-*'
 | 
				
			||||||
 | 
					DMENU="dmenu -i -fn $DMENU_FONT -nb #1E2320 -nf #DBDBDB -sb #3f3f3f -sf #ffffff"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										275
									
								
								i3/config
									
									
									
									
									
								
							
							
						
						
									
										275
									
								
								i3/config
									
									
									
									
									
								
							@@ -1,275 +0,0 @@
 | 
				
			|||||||
# This file has been auto-generated by i3-config-wizard(1).
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# It will not be overwritten, so edit it as you like.
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Should you change your keyboard layout somewhen, delete
 | 
					 | 
				
			||||||
# this file and re-run i3-config-wizard(1).
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# i3 config file (v4)
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
set $mod Mod4
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# font for window titles. ISO 10646 = Unicode
 | 
					 | 
				
			||||||
# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
 | 
					 | 
				
			||||||
font xft:Deja Vu Sans 8
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Use Mouse+$mod to drag floating windows to their wanted position
 | 
					 | 
				
			||||||
floating_modifier $mod
 | 
					 | 
				
			||||||
#/exec
 | 
					 | 
				
			||||||
# start a terminal
 | 
					 | 
				
			||||||
#bindsym $mod+Return exec i3-one-tmux
 | 
					 | 
				
			||||||
bindsym $mod+Return [instance="tmux"] scratchpad show
 | 
					 | 
				
			||||||
bindsym Control+Mod1+t exec urxvt
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# start lock
 | 
					 | 
				
			||||||
bindsym Control+Mod1+l exec i3-exit.sh lock
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindsym Control+Mod1+w exec i3-one-instance firefox
 | 
					 | 
				
			||||||
bindsym Control+Mod1+g exec i3-one-instance gvim
 | 
					 | 
				
			||||||
bindsym Control+Mod1+e exec myemacs
 | 
					 | 
				
			||||||
bindsym $mod+o exec i3-winmenu.py
 | 
					 | 
				
			||||||
bindsym Control+Mod1+f exec pcmanfm
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Spotify
 | 
					 | 
				
			||||||
bindsym XF86AudioPlay exec spotify-remote.py -a playPause
 | 
					 | 
				
			||||||
bindsym XF86AudioNext exec spotify-remote.py -a next 
 | 
					 | 
				
			||||||
bindsym XF86AudioPrev exec spotify-remote.py -a previous
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Volume
 | 
					 | 
				
			||||||
bindsym XF86AudioRaiseVolume exec volume-up.sh
 | 
					 | 
				
			||||||
bindsym XF86AudioLowerVolume exec volume-down.sh
 | 
					 | 
				
			||||||
bindsym XF86AudioMute exec volume-toggle-mute.sh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Brightness
 | 
					 | 
				
			||||||
#bindsym XF86MonBrightnessUp exec xbacklight +5
 | 
					 | 
				
			||||||
#bindsym XF86MonBrightnessDown exec xbacklight -5
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# kill focused window
 | 
					 | 
				
			||||||
bindsym $mod+q kill
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# start dmenu (a program launcher)
 | 
					 | 
				
			||||||
#bindsym Mod1+F2 exec dmenu_run
 | 
					 | 
				
			||||||
bindsym Mod1+F2 exec dmenu_run -fn  "-*-cure-medium-*-*-*-11-*-*-*-*-*-*-*" -nb "#101010" -nf "#5f5f5f" -sb "#191919" -sf "#b72f62" -b
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Arandr magic
 | 
					 | 
				
			||||||
bindsym Mod1+F5 exec monitors single
 | 
					 | 
				
			||||||
bindsym Mod1+F6 exec monitors dual
 | 
					 | 
				
			||||||
bindsym Mod1+F7 exec monitors dual home
 | 
					 | 
				
			||||||
bindsym Mod1+F8 exec i3-secondary-to-primary
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Move to displays
 | 
					 | 
				
			||||||
bindsym $mod+Mod1+j move workspace to output down
 | 
					 | 
				
			||||||
bindsym $mod+Mod1+k move workspace to output up
 | 
					 | 
				
			||||||
bindsym $mod+Mod1+l move workspace to output right
 | 
					 | 
				
			||||||
bindsym $mod+Mod1+h move workspace to output left
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# change focus
 | 
					 | 
				
			||||||
bindsym $mod+h focus left
 | 
					 | 
				
			||||||
bindsym $mod+j focus down
 | 
					 | 
				
			||||||
bindsym $mod+k focus up
 | 
					 | 
				
			||||||
bindsym $mod+l focus right
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# alternatively, you can use the cursor keys:
 | 
					 | 
				
			||||||
bindsym $mod+Left focus left
 | 
					 | 
				
			||||||
bindsym $mod+Down focus down
 | 
					 | 
				
			||||||
bindsym $mod+Up focus up
 | 
					 | 
				
			||||||
bindsym $mod+Right focus right
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# move focused window
 | 
					 | 
				
			||||||
bindsym $mod+Shift+H move left
 | 
					 | 
				
			||||||
bindsym $mod+Shift+J move down
 | 
					 | 
				
			||||||
bindsym $mod+Shift+K move up
 | 
					 | 
				
			||||||
bindsym $mod+Shift+L move right
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# alternatively, you can use the cursor keys:
 | 
					 | 
				
			||||||
bindsym $mod+Shift+Left move left
 | 
					 | 
				
			||||||
bindsym $mod+Shift+Down move down
 | 
					 | 
				
			||||||
bindsym $mod+Shift+Up move up
 | 
					 | 
				
			||||||
bindsym $mod+Shift+Right move right
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# split in horizontal orientation
 | 
					 | 
				
			||||||
bindsym $mod+Shift+g split h
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# split in vertical orientation
 | 
					 | 
				
			||||||
bindsym $mod+Shift+v split v
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# enter fullscreen mode for the focused container
 | 
					 | 
				
			||||||
bindsym $mod+f fullscreen
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# change container layout (stacked, tabbed, default)
 | 
					 | 
				
			||||||
bindsym $mod+s layout stacking
 | 
					 | 
				
			||||||
bindsym $mod+w layout tabbed
 | 
					 | 
				
			||||||
bindsym $mod+e layout default
 | 
					 | 
				
			||||||
bindsym $mod+g layout splith
 | 
					 | 
				
			||||||
bindsym $mod+v layout splitv
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# toggle tiling / floating
 | 
					 | 
				
			||||||
bindsym $mod+Shift+space floating toggle
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# change focus between tiling / floating windows
 | 
					 | 
				
			||||||
bindsym $mod+space focus mode_toggle
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Make the currently focused window a scratchpad
 | 
					 | 
				
			||||||
bindsym $mod+Shift+minus move scratchpad
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Show the first scratchpad window
 | 
					 | 
				
			||||||
bindsym $mod+minus scratchpad show
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# focus the parent container
 | 
					 | 
				
			||||||
bindsym $mod+u focus parent
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# focus the child container
 | 
					 | 
				
			||||||
bindsym $mod+d focus child
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# switch to workspace
 | 
					 | 
				
			||||||
bindsym $mod+1 workspace 1: Term
 | 
					 | 
				
			||||||
bindsym $mod+2 workspace 2: Web
 | 
					 | 
				
			||||||
bindsym $mod+3 workspace 3: Edit
 | 
					 | 
				
			||||||
bindsym $mod+4 workspace 4: Viewer
 | 
					 | 
				
			||||||
bindsym $mod+5 workspace 5: Files
 | 
					 | 
				
			||||||
bindsym $mod+6 workspace 6: Music
 | 
					 | 
				
			||||||
bindsym $mod+7 workspace 7: Chat
 | 
					 | 
				
			||||||
bindsym $mod+8 workspace 8: Misc Big
 | 
					 | 
				
			||||||
bindsym $mod+9 workspace 9: Misc Small
 | 
					 | 
				
			||||||
bindsym $mod+0 workspace number 10
 | 
					 | 
				
			||||||
bindsym $mod+Control+h workspace prev
 | 
					 | 
				
			||||||
bindsym $mod+Control+l workspace next 
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# move focused container to workspace
 | 
					 | 
				
			||||||
bindsym $mod+Shift+exclam move container to workspace            1: Term
 | 
					 | 
				
			||||||
bindsym $mod+Shift+at move container to workspace                2: Web
 | 
					 | 
				
			||||||
bindsym $mod+Shift+numbersign move container to workspace        3: Edit
 | 
					 | 
				
			||||||
bindsym $mod+Shift+dollar move container to workspace            4: Viewer
 | 
					 | 
				
			||||||
bindsym $mod+Shift+percent move container to workspace           5: Files
 | 
					 | 
				
			||||||
bindsym $mod+Shift+asciicircum move container to workspace       6: Music
 | 
					 | 
				
			||||||
bindsym $mod+Shift+ampersand move container to workspace         7: Chat
 | 
					 | 
				
			||||||
bindsym $mod+Shift+asterisk move container to workspace          8: Misc Big
 | 
					 | 
				
			||||||
bindsym $mod+Shift+parenleft move container to workspace         9: Misc Small
 | 
					 | 
				
			||||||
bindsym $mod+Shift+parenright move container to workspace        number 10
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# reload the configuration file
 | 
					 | 
				
			||||||
bindsym $mod+Shift+C reload
 | 
					 | 
				
			||||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
 | 
					 | 
				
			||||||
bindsym $mod+Shift+R restart
 | 
					 | 
				
			||||||
# exit i3 (logs you out of your X session)
 | 
					 | 
				
			||||||
bindsym $mod+Shift+E exec i3-exit.sh logout
 | 
					 | 
				
			||||||
bindsym $mod+Mod1+s exec i3-exit.sh suspend
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindsym $mod+Shift+p exec passmenu
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# resize window (you can also use the mouse for that)
 | 
					 | 
				
			||||||
mode "resize" {
 | 
					 | 
				
			||||||
        # These bindings trigger as soon as you enter the resize mode
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        # Pressing left will shrink the window’s width.
 | 
					 | 
				
			||||||
        # Pressing right will grow the window’s width.
 | 
					 | 
				
			||||||
        # Pressing up will shrink the window’s height.
 | 
					 | 
				
			||||||
        # Pressing down will grow the window’s height.
 | 
					 | 
				
			||||||
        bindsym h resize shrink width 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym j resize grow height 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym k resize shrink height 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym l resize grow width 10 px or 10 ppt
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        # same bindings, but for the arrow keys
 | 
					 | 
				
			||||||
        bindsym 113 resize shrink width 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym 116 resize grow height 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym 111 resize shrink height 10 px or 10 ppt
 | 
					 | 
				
			||||||
        bindsym 114 resize grow width 10 px or 10 ppt
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        # back to normal: Enter or Escape
 | 
					 | 
				
			||||||
        bindsym Return mode "default"
 | 
					 | 
				
			||||||
        bindsym Escape mode "default"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindsym $mod+r mode "resize"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindsym $mod+n exec i3-input -F 'rename workspace to %s' -P 'New name: '
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Start i3bar to display a workspace bar (plus the system information i3status
 | 
					 | 
				
			||||||
# finds out, if available)
 | 
					 | 
				
			||||||
#bar {
 | 
					 | 
				
			||||||
        #status_command i3status
 | 
					 | 
				
			||||||
#}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bar {
 | 
					 | 
				
			||||||
    mode dock
 | 
					 | 
				
			||||||
    position top
 | 
					 | 
				
			||||||
    workspace_buttons yes
 | 
					 | 
				
			||||||
    status_command ~/.i3/conky.sh
 | 
					 | 
				
			||||||
    colors {
 | 
					 | 
				
			||||||
        background #101010
 | 
					 | 
				
			||||||
        statusline #101010
 | 
					 | 
				
			||||||
        focused_workspace #101010 #586e75 #fdf6e3
 | 
					 | 
				
			||||||
        active_workspace #101010 #101010 #cb4b16
 | 
					 | 
				
			||||||
        inactive_workspace #101010 #101010 #93a1a1
 | 
					 | 
				
			||||||
        urgent_workspace #fdf6e3 #dc322f
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
# class                 border  backgr. text    indicator
 | 
					 | 
				
			||||||
client.focused          #4c7899 #101010 #93a1a1 #2e9ef4
 | 
					 | 
				
			||||||
client.focused_inactive #4c7899 #101010 #93a1a1 #484e50
 | 
					 | 
				
			||||||
client.unfocused        #333333 #101010 #93a1a1 #292d2e
 | 
					 | 
				
			||||||
client.urgent           #2f343a #101010 #93a1a1 #900000
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
for_window [class="^Google-chrome$"] border none
 | 
					 | 
				
			||||||
assign [class="Google-chrome" window_role="browser"] 2: Web
 | 
					 | 
				
			||||||
for_window [class="^Firefox$"] border none
 | 
					 | 
				
			||||||
assign [class="Firefox" window_role="browser"] 2: Web
 | 
					 | 
				
			||||||
for_window [class="Xfce4-notifyd"] floating enable; border none; focus mode_toggle
 | 
					 | 
				
			||||||
for_window [class="^URxvt$"] border 1px
 | 
					 | 
				
			||||||
for_window [title="^tmux$"] move to scratchpad;
 | 
					 | 
				
			||||||
#KDE
 | 
					 | 
				
			||||||
for_window [class="Plasma-desktop"] border none
 | 
					 | 
				
			||||||
for_window [class="krunner"] border none
 | 
					 | 
				
			||||||
for_window [class="Kmix"] floating enable;
 | 
					 | 
				
			||||||
for_window [class="Plasmoidviewer"] floating enable;
 | 
					 | 
				
			||||||
for_window [class="Klipper"] floating enable; border none
 | 
					 | 
				
			||||||
#assign [class="^Gvim$"] 3: Edit
 | 
					 | 
				
			||||||
#assign [class="^Evince$"] 4: Viewer
 | 
					 | 
				
			||||||
assign [class="^Spotify$"] 6: Music
 | 
					 | 
				
			||||||
assign [class="^Audacious$"] 6: Music
 | 
					 | 
				
			||||||
assign [class="^Xchat$"] 7: Chat
 | 
					 | 
				
			||||||
#for_window [class="Pcmanfm"] floating enable
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
workspace "1: Term" output DP1
 | 
					 | 
				
			||||||
workspace "2: Web" output DP1
 | 
					 | 
				
			||||||
workspace "3: Edit" output DP1
 | 
					 | 
				
			||||||
workspace "4: Viewer" output eDP1
 | 
					 | 
				
			||||||
workspace "5: Files" output eDP1
 | 
					 | 
				
			||||||
workspace "6: Music" output eDP1
 | 
					 | 
				
			||||||
workspace "7: Chat" output eDP1
 | 
					 | 
				
			||||||
workspace "8: Misc Big" output DP1
 | 
					 | 
				
			||||||
workspace "9: Misc Small" output eDP1
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
exec --no-startup-id nm-applet
 | 
					 | 
				
			||||||
exec --no-startup-id dropbox start
 | 
					 | 
				
			||||||
exec --no-startup-id volti
 | 
					 | 
				
			||||||
exec --no-startup-id clipit
 | 
					 | 
				
			||||||
exec --no-startup-id syndaemon -i 0.5 -d
 | 
					 | 
				
			||||||
exec --no-startup-id synapse -s
 | 
					 | 
				
			||||||
exec xautolock -time 10 -corners "----" -locker 'i3lock -t -c 000000 -i ~/Pictures/Wallpapers/Game\ Over\ Hacker.png' &
 | 
					 | 
				
			||||||
#exec --no-startup-id xautolock -corners '----' -time 10 -locker 'dm-tool lock' # lightdm
 | 
					 | 
				
			||||||
exec urxvt -name tmux -e tmux attach
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
 | 
					 | 
				
			||||||
mode "$mode_system" {
 | 
					 | 
				
			||||||
        bindsym l exec --no-startup-id i3-exit.sh lock, mode "default"
 | 
					 | 
				
			||||||
        bindsym e exec --no-startup-id i3-exit.sh logout #, mode "default"
 | 
					 | 
				
			||||||
        bindsym s exec --no-startup-id i3-exit.sh suspend #, mode "default"
 | 
					 | 
				
			||||||
        bindsym h exec --no-startup-id i3-exit.sh hibernate, mode "default"
 | 
					 | 
				
			||||||
        bindsym r exec --no-startup-id i3-exit.sh reboot, mode "default"
 | 
					 | 
				
			||||||
        bindsym Shift+s exec --no-startup-id i3-exit.sh shutdown, mode "default"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# back to normal: Enter or Escape
 | 
					 | 
				
			||||||
        bindsym Return mode "default"
 | 
					 | 
				
			||||||
        bindsym Escape mode "default"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
bindsym $mod+Delete mode "$mode_system"
 | 
					 | 
				
			||||||
exec --no-startup-id nitrogen --restore & 
 | 
					 | 
				
			||||||
exec --no-startup-id xfce4-power-manager
 | 
					 | 
				
			||||||
#exec --no-startup-id compton -b --config ~/.compton.conf 
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
							
								
								
									
										1
									
								
								keep/.keep/commands.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keep/.keep/commands.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					{"pandoc --filter pandoc-include-code -i index.md --metadata pagetitle=yourtitle -s --highlight-style=pygments -o index.docx": {"desc": "generate docx (Word, Office) from a markdown file with code highlighting", "alias": "md2doc"}}
 | 
				
			||||||
							
								
								
									
										1
									
								
								keep/.keep/update_check.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keep/.keep/update_check.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					06/21/2019
 | 
				
			||||||
							
								
								
									
										62
									
								
								lightdm/etc/lightdm/lightdm-gtk-greeter.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								lightdm/etc/lightdm/lightdm-gtk-greeter.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
				
			|||||||
 | 
					# LightDM GTK+ Configuration
 | 
				
			||||||
 | 
					# Available configuration options listed below.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Appearance:
 | 
				
			||||||
 | 
					#  theme-name = GTK+ theme to use
 | 
				
			||||||
 | 
					#  icon-theme-name = Icon theme to use
 | 
				
			||||||
 | 
					#  background = Background file to use, either an image path or a color (e.g. #772953)
 | 
				
			||||||
 | 
					#  user-background = false|true ("true" by default)  Display user background (if available)
 | 
				
			||||||
 | 
					#  transition-duration = Length of time (in milliseconds) to transition between background images ("500" by default)
 | 
				
			||||||
 | 
					#  transition-type = ease-in-out|linear|none  ("ease-in-out" by default)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Fonts:
 | 
				
			||||||
 | 
					#  font-name = Font to use
 | 
				
			||||||
 | 
					#  xft-antialias = false|true  Whether to antialias Xft fonts
 | 
				
			||||||
 | 
					#  xft-dpi = Resolution for Xft in dots per inch (e.g. 96)
 | 
				
			||||||
 | 
					#  xft-hintstyle = none|slight|medium|hintfull  What degree of hinting to use
 | 
				
			||||||
 | 
					#  xft-rgba = none|rgb|bgr|vrgb|vbgr  Type of subpixel antialiasing
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Login window:
 | 
				
			||||||
 | 
					#  active-monitor = Monitor to display greeter window (name or number). Use #cursor value to display greeter at monitor with cursor. Can be a semicolon separated list
 | 
				
			||||||
 | 
					#  position = x y ("50% 50%" by default)  Login window position
 | 
				
			||||||
 | 
					#  default-user-image = Image used as default user icon, path or #icon-name
 | 
				
			||||||
 | 
					#  hide-user-image = false|true ("false" by default)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Panel:
 | 
				
			||||||
 | 
					#  panel-position = top|bottom ("top" by default)
 | 
				
			||||||
 | 
					#  clock-format = strftime-format string, e.g. %H:%M
 | 
				
			||||||
 | 
					#  indicators = semi-colon ";" separated list of allowed indicator modules. Built-in indicators include "~a11y", "~language", "~session", "~power", "~clock", "~host", "~spacer". Unity indicators can be represented by short name (e.g. "sound", "power"), service file name, or absolute path
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Accessibility:
 | 
				
			||||||
 | 
					#  a11y-states = states of accessibility features: "name" - save state on exit, "-name" - disabled at start (default value for unlisted), "+name" - enabled at start. Allowed names: contrast, font, keyboard, reader.
 | 
				
			||||||
 | 
					#  keyboard = command to launch on-screen keyboard (e.g. "onboard")
 | 
				
			||||||
 | 
					#  keyboard-position = x y[;width height] ("50%,center -0;50% 25%" by default)  Works only for "onboard"
 | 
				
			||||||
 | 
					#  reader = command to launch screen reader (e.g. "orca")
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Security:
 | 
				
			||||||
 | 
					#  allow-debugging = false|true ("false" by default)
 | 
				
			||||||
 | 
					#  screensaver-timeout = Timeout (in seconds) until the screen blanks when the greeter is called as lockscreen
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Template for per-monitor configuration:
 | 
				
			||||||
 | 
					#  [monitor: name]
 | 
				
			||||||
 | 
					#  background = overrides default value
 | 
				
			||||||
 | 
					#  user-background = overrides default value
 | 
				
			||||||
 | 
					#  laptop = false|true ("false" by default) Marks monitor as laptop display
 | 
				
			||||||
 | 
					#  transition-duration = overrides default value
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					[greeter]
 | 
				
			||||||
 | 
					background=/etc/lightdm/wallpaper.jpg
 | 
				
			||||||
 | 
					#user-background=
 | 
				
			||||||
 | 
					#theme-name=
 | 
				
			||||||
 | 
					#icon-theme-name=
 | 
				
			||||||
 | 
					#font-name=
 | 
				
			||||||
 | 
					#xft-antialias=
 | 
				
			||||||
 | 
					#xft-dpi=
 | 
				
			||||||
 | 
					#xft-hintstyle=
 | 
				
			||||||
 | 
					#xft-rgba=
 | 
				
			||||||
 | 
					#indicators=
 | 
				
			||||||
 | 
					#clock-format=
 | 
				
			||||||
 | 
					#keyboard=
 | 
				
			||||||
 | 
					#reader=
 | 
				
			||||||
 | 
					#position=
 | 
				
			||||||
 | 
					#screensaver-timeout=
 | 
				
			||||||
							
								
								
									
										33
									
								
								make.sh
									
									
									
									
									
								
							
							
						
						
									
										33
									
								
								make.sh
									
									
									
									
									
								
							@@ -1,33 +0,0 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					 | 
				
			||||||
############################
 | 
					 | 
				
			||||||
# .make.sh
 | 
					 | 
				
			||||||
# This script creates symlinks from the home directory to any desired dotfiles in ~/dotfiles
 | 
					 | 
				
			||||||
############################
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
########## Variables
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# change to the dotfiles directory
 | 
					 | 
				
			||||||
cd `dirname $0`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
########## Don't forget the submodules
 | 
					 | 
				
			||||||
git submodule init
 | 
					 | 
				
			||||||
git submodule update --recursive
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
olddir=~/dotfiles$(date +%Y-%m-%d_%H:%M:%S) # old dotfiles backup directory
 | 
					 | 
				
			||||||
files=$(ls --ignore="not_dots" --ignore="README.md" --ignore="make.sh" --ignore="Docker" $PWD)  # list of files/folders to symlink in homedir
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
##########
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# create dotfiles_old in homedir
 | 
					 | 
				
			||||||
echo "** Creating $olddir for backup: of any existing dotfiles in ~"
 | 
					 | 
				
			||||||
mkdir -p $olddir
 | 
					 | 
				
			||||||
echo "...done"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# move any existing dotfiles in homedir to dotfiles_old directory, then create symlinks 
 | 
					 | 
				
			||||||
echo "** Creating symlinks. Any existing dotfiles will be moved to: $olddir"
 | 
					 | 
				
			||||||
for file in $files; do
 | 
					 | 
				
			||||||
    mv ~/.$file $olddir && echo "Backed up: ~/.$file"
 | 
					 | 
				
			||||||
    ln -s $PWD/$file ~/.$file
 | 
					 | 
				
			||||||
done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
rmdir $olddir 2>/dev/null && echo "Backup dir empty. Removed"
 | 
					 | 
				
			||||||
							
								
								
									
										11
									
								
								not_dots/50-synaptics.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								not_dots/50-synaptics.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					Section "InputClass"
 | 
				
			||||||
 | 
						Identifier "touchpad catchall"
 | 
				
			||||||
 | 
						Driver "synaptics"
 | 
				
			||||||
 | 
						MatchIsTouchpad "on"
 | 
				
			||||||
 | 
						MatchDevicePath "/dev/input/event*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						Option "TapButton1" "1"
 | 
				
			||||||
 | 
						Option "TapButton2" "3"
 | 
				
			||||||
 | 
						Option "TapButton3" "2"
 | 
				
			||||||
 | 
					EndSection
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										25
									
								
								not_dots/50-udiskie.rules
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								not_dots/50-udiskie.rules
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					polkit.addRule(function(action, subject) {
 | 
				
			||||||
 | 
					  var YES = polkit.Result.YES;
 | 
				
			||||||
 | 
					  // NOTE: there must be a comma at the end of each line except for the last:
 | 
				
			||||||
 | 
					  var permission = {
 | 
				
			||||||
 | 
					    // required for udisks1:
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks.filesystem-mount": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks.luks-unlock": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks.drive-eject": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks.drive-detach": YES,
 | 
				
			||||||
 | 
					    // required for udisks2:
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.filesystem-mount": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.encrypted-unlock": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.eject-media": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.power-off-drive": YES,
 | 
				
			||||||
 | 
					    // required for udisks2 if using udiskie from another seat (e.g. systemd):
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.filesystem-mount-other-seat": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.filesystem-unmount-others": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.encrypted-unlock-other-seat": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.eject-media-other-seat": YES,
 | 
				
			||||||
 | 
					    "org.freedesktop.udisks2.power-off-drive-other-seat": YES
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					  if (subject.isInGroup("storage")) {
 | 
				
			||||||
 | 
					    return permission[action.id];
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
							
								
								
									
										15
									
								
								not_dots/52-tablet.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								not_dots/52-tablet.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					# Config for the HUION tablet
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## Install:
 | 
				
			||||||
 | 
					# yay linux-headers
 | 
				
			||||||
 | 
					# yay digimend
 | 
				
			||||||
 | 
					## To also control the buttons, install wacom and use xsetwacom
 | 
				
			||||||
 | 
					# 	yay wacom 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Section "InputClass"
 | 
				
			||||||
 | 
						Identifier "Huion on wacom"
 | 
				
			||||||
 | 
						# MatchIsTablet "on"
 | 
				
			||||||
 | 
						MatchProduct "HUION"
 | 
				
			||||||
 | 
						MatchDevicePath "/dev/input/event*"
 | 
				
			||||||
 | 
						Driver "wacom"
 | 
				
			||||||
 | 
					EndSection
 | 
				
			||||||
@@ -1,73 +0,0 @@
 | 
				
			|||||||
# Lines configured by zsh-newuser-install
 | 
					 | 
				
			||||||
HISTFILE=~/.histfile
 | 
					 | 
				
			||||||
HISTSIZE=1000
 | 
					 | 
				
			||||||
SAVEHIST=1000
 | 
					 | 
				
			||||||
setopt appendhistory autocd extendedglob nomatch notify share_history
 | 
					 | 
				
			||||||
bindkey -v
 | 
					 | 
				
			||||||
# End of lines configured by zsh-newuser-install
 | 
					 | 
				
			||||||
# The following lines were added by compinstall
 | 
					 | 
				
			||||||
zstyle :compinstall filename '/home/balkian/.zshrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
autoload -Uz compinit
 | 
					 | 
				
			||||||
compinit
 | 
					 | 
				
			||||||
# End of lines added by compinstall
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
autoload -U colors
 | 
					 | 
				
			||||||
colors
 | 
					 | 
				
			||||||
setopt prompt_subst
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
local smiley="%B%(?,%{$fg[green]%}☠%{$reset_color%},%{$fg[red]%}☠%{$reset_color%})%b"
 | 
					 | 
				
			||||||
PS0='${debian_chroot:+($debian_chroot)}%n@%M'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
parse_git_branch()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
git name-rev HEAD 2> /dev/null | sed 's#HEAD\ \(.*\)#(git::\1)#'
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if ( dircolors --help && ls --color ) &> /dev/null; then
 | 
					 | 
				
			||||||
# For some reason, the unixs machines need me to use $HOME instead of ~
 | 
					 | 
				
			||||||
# List files from highest priority to lowest.  As soon as the loop finds one that works, it will exit.
 | 
					 | 
				
			||||||
function precmd {
 | 
					 | 
				
			||||||
PROMPT="$PS0:%~ %{$fg[green]%}%B$(parse_git_branch)%b%{$reset_color%}
 | 
					 | 
				
			||||||
${smiley} ";
 | 
					 | 
				
			||||||
RPROMPT="%T";
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
for POSSIBLE_DIR_COLORS in "$HOME/.dir_colors" "/etc/DIR_COLORS"; do
 | 
					 | 
				
			||||||
    [[ -f "$POSSIBLE_DIR_COLORS" ]] && [[ -r "$POSSIBLE_DIR_COLORS" ]] && eval `dircolors -b "$POSSIBLE_DIR_COLORS"` && break
 | 
					 | 
				
			||||||
done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
alias ls="ls --color=auto"
 | 
					 | 
				
			||||||
alias ll="ls --color=auto -l"
 | 
					 | 
				
			||||||
alias grep='grep --color=auto'
 | 
					 | 
				
			||||||
alias fgrep='fgrep --color=auto'
 | 
					 | 
				
			||||||
alias egrep='egrep --color=auto'
 | 
					 | 
				
			||||||
else
 | 
					 | 
				
			||||||
# No color, so put a slash at the end of directory names, etc. to differentiate.
 | 
					 | 
				
			||||||
alias ll="ls -lF"
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
## Completions
 | 
					 | 
				
			||||||
#autoload -U compinit
 | 
					 | 
				
			||||||
#compinit -C
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
### case-insensitive (all),partial-word and then substring completion
 | 
					 | 
				
			||||||
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' \
 | 
					 | 
				
			||||||
       'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindkey -M vicmd 'r' history-incremental-search-backward
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export PATH=$PATH:"/home/balkian/code/personal-scripts/"
 | 
					 | 
				
			||||||
#export CDPATH=$CDPATH:"/media/Data/"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# TMUX
 | 
					 | 
				
			||||||
# if [[ -z "$KONSOLE_DBUS_SERVICE" & `which tmux` ]]; then
 | 
					 | 
				
			||||||
         # if no session is started, start a new session
 | 
					 | 
				
			||||||
         if [[ -z "$KONSOLE_DBUS_SERVICE" && -n $(which tmux) ]]; then
 | 
					 | 
				
			||||||
     stty -ixon
 | 
					 | 
				
			||||||
     test -z ${TMUX} && tmux attach
 | 
					 | 
				
			||||||
     # when quitting tmux, try to attach
 | 
					 | 
				
			||||||
     if [[ -z ${TMUX} ]]; then
 | 
					 | 
				
			||||||
         exit;
 | 
					 | 
				
			||||||
     fi
 | 
					 | 
				
			||||||
 fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@@ -1,73 +0,0 @@
 | 
				
			|||||||
# Lines configured by zsh-newuser-install
 | 
					 | 
				
			||||||
HISTFILE=~/.histfile
 | 
					 | 
				
			||||||
HISTSIZE=1000
 | 
					 | 
				
			||||||
SAVEHIST=1000
 | 
					 | 
				
			||||||
setopt appendhistory autocd extendedglob nomatch notify share_history
 | 
					 | 
				
			||||||
bindkey -v
 | 
					 | 
				
			||||||
# End of lines configured by zsh-newuser-install
 | 
					 | 
				
			||||||
# The following lines were added by compinstall
 | 
					 | 
				
			||||||
zstyle :compinstall filename '/home/balkian/.zshrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
autoload -Uz compinit
 | 
					 | 
				
			||||||
compinit
 | 
					 | 
				
			||||||
# End of lines added by compinstall
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
autoload -U colors
 | 
					 | 
				
			||||||
colors
 | 
					 | 
				
			||||||
setopt prompt_subst
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
local smiley="%B%(?,%{$fg[green]%}☠%{$reset_color%},%{$fg[red]%}☠%{$reset_color%})%b"
 | 
					 | 
				
			||||||
PS0='${debian_chroot:+($debian_chroot)}%n@%M'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
parse_git_branch()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
git name-rev HEAD 2> /dev/null | sed 's#HEAD\ \(.*\)#(git::\1)#'
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if ( dircolors --help && ls --color ) &> /dev/null; then
 | 
					 | 
				
			||||||
# For some reason, the unixs machines need me to use $HOME instead of ~
 | 
					 | 
				
			||||||
# List files from highest priority to lowest.  As soon as the loop finds one that works, it will exit.
 | 
					 | 
				
			||||||
function precmd {
 | 
					 | 
				
			||||||
PROMPT="$PS0:%~ %{$fg[green]%}%B$(parse_git_branch)%b%{$reset_color%}
 | 
					 | 
				
			||||||
${smiley} ";
 | 
					 | 
				
			||||||
RPROMPT="%T";
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
for POSSIBLE_DIR_COLORS in "$HOME/.dir_colors" "/etc/DIR_COLORS"; do
 | 
					 | 
				
			||||||
    [[ -f "$POSSIBLE_DIR_COLORS" ]] && [[ -r "$POSSIBLE_DIR_COLORS" ]] && eval `dircolors -b "$POSSIBLE_DIR_COLORS"` && break
 | 
					 | 
				
			||||||
done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
alias ls="ls --color=auto"
 | 
					 | 
				
			||||||
alias ll="ls --color=auto -l"
 | 
					 | 
				
			||||||
alias grep='grep --color=auto'
 | 
					 | 
				
			||||||
alias fgrep='fgrep --color=auto'
 | 
					 | 
				
			||||||
alias egrep='egrep --color=auto'
 | 
					 | 
				
			||||||
else
 | 
					 | 
				
			||||||
# No color, so put a slash at the end of directory names, etc. to differentiate.
 | 
					 | 
				
			||||||
alias ll="ls -lF"
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
## Completions
 | 
					 | 
				
			||||||
#autoload -U compinit
 | 
					 | 
				
			||||||
#compinit -C
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
### case-insensitive (all),partial-word and then substring completion
 | 
					 | 
				
			||||||
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' \
 | 
					 | 
				
			||||||
       'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bindkey -M vicmd 'r' history-incremental-search-backward
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export PATH=$PATH:"/home/balkian/code/personal-scripts/"
 | 
					 | 
				
			||||||
#export CDPATH=$CDPATH:"/media/Data/"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# TMUX
 | 
					 | 
				
			||||||
# if [[ -z "$KONSOLE_DBUS_SERVICE" & `which tmux` ]]; then
 | 
					 | 
				
			||||||
         # if no session is started, start a new session
 | 
					 | 
				
			||||||
         if [[ -z "$KONSOLE_DBUS_SERVICE" && -n $(which tmux) ]]; then
 | 
					 | 
				
			||||||
     stty -ixon
 | 
					 | 
				
			||||||
     test -z ${TMUX} && tmux attach
 | 
					 | 
				
			||||||
     # when quitting tmux, try to attach
 | 
					 | 
				
			||||||
     if [[ -z ${TMUX} ]]; then
 | 
					 | 
				
			||||||
         exit;
 | 
					 | 
				
			||||||
     fi
 | 
					 | 
				
			||||||
 fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 Submodule oh-my-zsh deleted from 5663d3a1fe
									
								
							
							
								
								
									
										137
									
								
								pythonrc.py
									
									
									
									
									
								
							
							
						
						
									
										137
									
								
								pythonrc.py
									
									
									
									
									
								
							@@ -1,137 +0,0 @@
 | 
				
			|||||||
"""
 | 
					 | 
				
			||||||
This file is executed when the Python interactive shell is started if
 | 
					 | 
				
			||||||
$PYTHONSTARTUP is in your environment and points to this file. It's just
 | 
					 | 
				
			||||||
regular Python commands, so do what you will. Your ~/.inputrc file can greatly
 | 
					 | 
				
			||||||
complement this file.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
"""
 | 
					 | 
				
			||||||
import os
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
try:
 | 
					 | 
				
			||||||
    import readline
 | 
					 | 
				
			||||||
    import rlcompleter
 | 
					 | 
				
			||||||
    import atexit
 | 
					 | 
				
			||||||
except ImportError:
 | 
					 | 
				
			||||||
    print("You need readline, rlcompleter, and atexit")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
readline.parse_and_bind("tab: complete")
 | 
					 | 
				
			||||||
#readline.parse_and_bind ("bind ^I rl_complete")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class Completer(object):
 | 
					 | 
				
			||||||
    def __init__(self):
 | 
					 | 
				
			||||||
        # Enable a History
 | 
					 | 
				
			||||||
        self.HISTFILE=os.path.expanduser("%s/.pyhistory" % os.environ["HOME"])
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        # Read the existing history if there is one
 | 
					 | 
				
			||||||
        if os.path.exists(self.HISTFILE):
 | 
					 | 
				
			||||||
            readline.read_history_file(self.HISTFILE)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        # Set maximum number of items that will be written to the history file
 | 
					 | 
				
			||||||
        readline.set_history_length(300)
 | 
					 | 
				
			||||||
        atexit.register(self.savehist)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    def savehist(self):
 | 
					 | 
				
			||||||
        import readline
 | 
					 | 
				
			||||||
        readline.write_history_file(self.HISTFILE)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
c = Completer()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
WELCOME=''
 | 
					 | 
				
			||||||
# Color Support
 | 
					 | 
				
			||||||
class TermColors(dict):
 | 
					 | 
				
			||||||
    """Gives easy access to ANSI color codes. Attempts to fall back to no color
 | 
					 | 
				
			||||||
    for certain TERM values. (Mostly stolen from IPython.)"""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    COLOR_TEMPLATES = (
 | 
					 | 
				
			||||||
        ("Black"       , "0;30"),
 | 
					 | 
				
			||||||
        ("Red"         , "0;31"),
 | 
					 | 
				
			||||||
        ("Green"       , "0;32"),
 | 
					 | 
				
			||||||
        ("Brown"       , "0;33"),
 | 
					 | 
				
			||||||
        ("Blue"        , "0;34"),
 | 
					 | 
				
			||||||
        ("Purple"      , "0;35"),
 | 
					 | 
				
			||||||
        ("Cyan"        , "0;36"),
 | 
					 | 
				
			||||||
        ("LightGray"   , "0;37"),
 | 
					 | 
				
			||||||
        ("DarkGray"    , "1;30"), ("LightRed"    , "1;31"),
 | 
					 | 
				
			||||||
        ("LightGreen"  , "1;32"),
 | 
					 | 
				
			||||||
        ("Yellow"      , "1;33"),
 | 
					 | 
				
			||||||
        ("LightBlue"   , "1;34"),
 | 
					 | 
				
			||||||
        ("LightPurple" , "1;35"),
 | 
					 | 
				
			||||||
        ("LightCyan"   , "1;36"),
 | 
					 | 
				
			||||||
        ("White"       , "1;37"),
 | 
					 | 
				
			||||||
        ("Normal"      , "0"),
 | 
					 | 
				
			||||||
    )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    NoColor = ''
 | 
					 | 
				
			||||||
    _base  = '\001\033[%sm\002'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    def __init__(self):
 | 
					 | 
				
			||||||
        if os.environ.get('TERM') in ('xterm-color', 'xterm-256color', 'linux',
 | 
					 | 
				
			||||||
                                    'screen', 'screen-256color', 'screen-bce'):
 | 
					 | 
				
			||||||
            self.update(dict([(k, self._base % v) for k,v in self.COLOR_TEMPLATES]))
 | 
					 | 
				
			||||||
        else:
 | 
					 | 
				
			||||||
            self.update(dict([(k, self.NoColor) for k,v in self.COLOR_TEMPLATES]))
 | 
					 | 
				
			||||||
_c = TermColors()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import sys
 | 
					 | 
				
			||||||
# Enable Color Prompts
 | 
					 | 
				
			||||||
sys.ps1 = '%s>>> %s' % (_c['Green'], _c['Normal'])
 | 
					 | 
				
			||||||
sys.ps2 = '%s... %s' % (_c['Red'], _c['Normal'])
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Enable Pretty Printing for stdout
 | 
					 | 
				
			||||||
def my_displayhook(value):
 | 
					 | 
				
			||||||
    if value is not None:
 | 
					 | 
				
			||||||
        try:
 | 
					 | 
				
			||||||
            import __builtin__
 | 
					 | 
				
			||||||
            __builtin__._ = value
 | 
					 | 
				
			||||||
        except ImportError:
 | 
					 | 
				
			||||||
            __builtins__._ = value
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        import pprint
 | 
					 | 
				
			||||||
        pprint.pprint(value)
 | 
					 | 
				
			||||||
        del pprint
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
sys.displayhook = my_displayhook
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
EDITOR = os.environ.get('EDITOR', 'vim')
 | 
					 | 
				
			||||||
EDIT_CMD = '\e'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from tempfile import mkstemp
 | 
					 | 
				
			||||||
from code import InteractiveConsole
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class EditableBufferInteractiveConsole(InteractiveConsole):
 | 
					 | 
				
			||||||
    def __init__(self, *args, **kwargs):
 | 
					 | 
				
			||||||
        self.last_buffer = [] # This holds the last executed statement
 | 
					 | 
				
			||||||
        InteractiveConsole.__init__(self, *args, **kwargs)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    def runsource(self, source, *args):
 | 
					 | 
				
			||||||
        self.last_buffer = [ source.encode('latin-1') ]
 | 
					 | 
				
			||||||
        return InteractiveConsole.runsource(self, source, *args)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    def raw_input(self, *args):
 | 
					 | 
				
			||||||
        line = InteractiveConsole.raw_input(self, *args)
 | 
					 | 
				
			||||||
        if line == EDIT_CMD:
 | 
					 | 
				
			||||||
            fd, tmpfl = mkstemp('.py')
 | 
					 | 
				
			||||||
            os.write(fd, b'\n'.join(self.last_buffer))
 | 
					 | 
				
			||||||
            os.close(fd)
 | 
					 | 
				
			||||||
            os.system('%s %s' % (EDITOR, tmpfl))
 | 
					 | 
				
			||||||
            line = open(tmpfl).read()
 | 
					 | 
				
			||||||
            os.unlink(tmpfl)
 | 
					 | 
				
			||||||
            tmpfl = ''
 | 
					 | 
				
			||||||
            lines = line.split( '\n' )
 | 
					 | 
				
			||||||
            for i in range(len(lines) - 1): self.push( lines[i] )
 | 
					 | 
				
			||||||
            line = lines[-1]
 | 
					 | 
				
			||||||
        return line
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# clean up namespace
 | 
					 | 
				
			||||||
del sys
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if __name__ == "__main__":
 | 
					 | 
				
			||||||
    c = EditableBufferInteractiveConsole(locals=locals())
 | 
					 | 
				
			||||||
    c.interact(banner=WELCOME)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Exit the Python shell on exiting the InteractiveConsole
 | 
					 | 
				
			||||||
    import sys
 | 
					 | 
				
			||||||
    sys.exit()
 | 
					 | 
				
			||||||
							
								
								
									
										2
									
								
								ranger/.config/ranger/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ranger/.config/ranger/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					history
 | 
				
			||||||
 | 
					tagged
 | 
				
			||||||
							
								
								
									
										11
									
								
								ranger/.config/ranger/bookmarks
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								ranger/.config/ranger/bookmarks
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					F:/home/j
 | 
				
			||||||
 | 
					f:/home/j
 | 
				
			||||||
 | 
					m:/home/j/Downloads
 | 
				
			||||||
 | 
					p:/home/j/Doctorado/Papers
 | 
				
			||||||
 | 
					s:/home/j/Doctorado/Papers/SocialContext
 | 
				
			||||||
 | 
					d:/home/j/Downloads
 | 
				
			||||||
 | 
					D:/home/j/Doctorado
 | 
				
			||||||
 | 
					o:/home/j/Downloads
 | 
				
			||||||
 | 
					g:/home/j/git/balkian
 | 
				
			||||||
 | 
					G:/home/j/GSI
 | 
				
			||||||
 | 
					j:/home/j/Downloads
 | 
				
			||||||
							
								
								
									
										61
									
								
								ranger/.config/ranger/commands.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								ranger/.config/ranger/commands.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,61 @@
 | 
				
			|||||||
 | 
					# This is a sample commands.py.  You can add your own commands here.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Please refer to commands_full.py for all the default commands and a complete
 | 
				
			||||||
 | 
					# documentation.  Do NOT add them all here, or you may end up with defunct
 | 
				
			||||||
 | 
					# commands when upgrading ranger.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# You always need to import ranger.api.commands here to get the Command class:
 | 
				
			||||||
 | 
					from ranger.api.commands import *
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# A simple command for demonstration purposes follows.
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# You can import any python module as needed.
 | 
				
			||||||
 | 
					import os
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Any class that is a subclass of "Command" will be integrated into ranger as a
 | 
				
			||||||
 | 
					# command.  Try typing ":my_edit<ENTER>" in ranger!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class my_edit(Command):
 | 
				
			||||||
 | 
					    # The so-called doc-string of the class will be visible in the built-in
 | 
				
			||||||
 | 
					    # help that is accessible by typing "?c" inside ranger.
 | 
				
			||||||
 | 
					    """:my_edit <filename>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    A sample command for demonstration purposes that opens a file in an editor.
 | 
				
			||||||
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The execute method is called when you run this command in ranger.
 | 
				
			||||||
 | 
					    def execute(self):
 | 
				
			||||||
 | 
					        # self.arg(1) is the first (space-separated) argument to the function.
 | 
				
			||||||
 | 
					        # This way you can write ":my_edit somefilename<ENTER>".
 | 
				
			||||||
 | 
					        if self.arg(1):
 | 
				
			||||||
 | 
					            # self.rest(1) contains self.arg(1) and everything that follows
 | 
				
			||||||
 | 
					            target_filename = self.rest(1)
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            # self.fm is a ranger.core.filemanager.FileManager object and gives
 | 
				
			||||||
 | 
					            # you access to internals of ranger.
 | 
				
			||||||
 | 
					            # self.fm.thisfile is a ranger.container.file.File object and is a
 | 
				
			||||||
 | 
					            # reference to the currently selected file.
 | 
				
			||||||
 | 
					            target_filename = self.fm.thisfile.path
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # This is a generic function to print text in ranger.
 | 
				
			||||||
 | 
					        self.fm.notify("Let's edit the file " + target_filename + "!")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # Using bad=True in fm.notify allows you to print error messages:
 | 
				
			||||||
 | 
					        if not os.path.exists(target_filename):
 | 
				
			||||||
 | 
					            self.fm.notify("The given file does not exist!", bad=True)
 | 
				
			||||||
 | 
					            return
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # This executes a function from ranger.core.acitons, a module with a
 | 
				
			||||||
 | 
					        # variety of subroutines that can help you construct commands.
 | 
				
			||||||
 | 
					        # Check out the source, or run "pydoc ranger.core.actions" for a list.
 | 
				
			||||||
 | 
					        self.fm.edit_file(target_filename)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The tab method is called when you press tab, and should return a list of
 | 
				
			||||||
 | 
					    # suggestions that the user will tab through.
 | 
				
			||||||
 | 
					    # tabnum is 1 for <TAB> and -1 for <S-TAB> by default
 | 
				
			||||||
 | 
					    def tab(self, tabnum):
 | 
				
			||||||
 | 
					        # This is a generic tab-completion function that iterates through the
 | 
				
			||||||
 | 
					        # content of the current directory.
 | 
				
			||||||
 | 
					        return self._tab_directory_content()
 | 
				
			||||||
							
								
								
									
										1486
									
								
								ranger/.config/ranger/commands_full.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1486
									
								
								ranger/.config/ranger/commands_full.py
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										623
									
								
								ranger/.config/ranger/rc.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										623
									
								
								ranger/.config/ranger/rc.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,623 @@
 | 
				
			|||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# This file contains the default startup commands for ranger.
 | 
				
			||||||
 | 
					# To change them, it is recommended to create the file
 | 
				
			||||||
 | 
					# ~/.config/ranger/rc.conf and add your custom commands there.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# If you copy this whole file there, you may want to set the environment
 | 
				
			||||||
 | 
					# variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The purpose of this file is mainly to define keybindings and settings.
 | 
				
			||||||
 | 
					# For running more complex python code, please create a plugin in "plugins/" or
 | 
				
			||||||
 | 
					# a command in "commands.py".
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Each line is a command that will be run before the user interface
 | 
				
			||||||
 | 
					# is initialized.  As a result, you can not use commands which rely
 | 
				
			||||||
 | 
					# on the UI such as :delete or :mark.
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Options
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Which viewmode should be used?  Possible values are:
 | 
				
			||||||
 | 
					#     miller: Use miller columns which show multiple levels of the hierarchy
 | 
				
			||||||
 | 
					#     multipane: Midnight-commander like multipane view showing all tabs next
 | 
				
			||||||
 | 
					#                to each other
 | 
				
			||||||
 | 
					set viewmode miller
 | 
				
			||||||
 | 
					#set viewmode multipane
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# How many columns are there, and what are their relative widths?
 | 
				
			||||||
 | 
					set column_ratios 1,3,4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Which files should be hidden? (regular expression)
 | 
				
			||||||
 | 
					set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Show hidden files? You can toggle this by typing 'zh'
 | 
				
			||||||
 | 
					set show_hidden false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Ask for a confirmation when running the "delete" command?
 | 
				
			||||||
 | 
					# Valid values are "always", "never", "multiple" (default)
 | 
				
			||||||
 | 
					# With "multiple", ranger will ask only if you delete multiple files at once.
 | 
				
			||||||
 | 
					set confirm_on_delete multiple
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Which script is used to generate file previews?
 | 
				
			||||||
 | 
					# ranger ships with scope.sh, a script that calls external programs (see
 | 
				
			||||||
 | 
					# README.md for dependencies) to preview images, archives, etc.
 | 
				
			||||||
 | 
					set preview_script ~/.config/ranger/scope.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Use the external preview script or display simple plain text or image previews?
 | 
				
			||||||
 | 
					set use_preview_script true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Automatically count files in the directory, even before entering them?
 | 
				
			||||||
 | 
					set automatically_count_files true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Open all images in this directory when running certain image viewers
 | 
				
			||||||
 | 
					# like feh or sxiv?  You can still open selected files by marking them.
 | 
				
			||||||
 | 
					set open_all_images true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Be aware of version control systems and display information.
 | 
				
			||||||
 | 
					set vcs_aware true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# State of the three backends git, hg, bzr. The possible states are
 | 
				
			||||||
 | 
					# disabled, local (only show local info), enabled (show local and remote
 | 
				
			||||||
 | 
					# information).
 | 
				
			||||||
 | 
					set vcs_backend_git enabled
 | 
				
			||||||
 | 
					set vcs_backend_hg disabled
 | 
				
			||||||
 | 
					set vcs_backend_bzr disabled
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Use one of the supported image preview protocols
 | 
				
			||||||
 | 
					set preview_images true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Set the preview image method. Supported methods:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# * w3m (default):
 | 
				
			||||||
 | 
					#   Preview images in full color with the external command "w3mimgpreview"?
 | 
				
			||||||
 | 
					#   This requires the console web browser "w3m" and a supported terminal.
 | 
				
			||||||
 | 
					#   It has been successfully tested with "xterm" and "urxvt" without tmux.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# * iterm2:
 | 
				
			||||||
 | 
					#   Preview images in full color using iTerm2 image previews
 | 
				
			||||||
 | 
					#   (http://iterm2.com/images.html). This requires using iTerm2 compiled
 | 
				
			||||||
 | 
					#   with image preview support.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# * urxvt:
 | 
				
			||||||
 | 
					#   Preview images in full color using urxvt image backgrounds. This
 | 
				
			||||||
 | 
					#   requires using urxvt compiled with pixbuf support.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# * urxvt-full:
 | 
				
			||||||
 | 
					#   The same as urxvt but utilizing not only the preview pane but the
 | 
				
			||||||
 | 
					#   whole terminal window.
 | 
				
			||||||
 | 
					set preview_images_method w3m
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Use a unicode "..." character to mark cut-off filenames?
 | 
				
			||||||
 | 
					set unicode_ellipsis false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Show dotfiles in the bookmark preview box?
 | 
				
			||||||
 | 
					set show_hidden_bookmarks true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Which colorscheme to use?  These colorschemes are available by default:
 | 
				
			||||||
 | 
					# default, jungle, snow, solarized
 | 
				
			||||||
 | 
					set colorscheme default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Preview files on the rightmost column?
 | 
				
			||||||
 | 
					# And collapse (shrink) the last column if there is nothing to preview?
 | 
				
			||||||
 | 
					set preview_files true
 | 
				
			||||||
 | 
					set preview_directories true
 | 
				
			||||||
 | 
					set collapse_preview true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Save the console history on exit?
 | 
				
			||||||
 | 
					set save_console_history true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Draw the status bar on top of the browser window (default: bottom)
 | 
				
			||||||
 | 
					set status_bar_on_top false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Draw a progress bar in the status bar which displays the average state of all
 | 
				
			||||||
 | 
					# currently running tasks which support progress bars?
 | 
				
			||||||
 | 
					set draw_progress_bar_in_status_bar true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Draw borders around columns?
 | 
				
			||||||
 | 
					set draw_borders true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Display the directory name in tabs?
 | 
				
			||||||
 | 
					set dirname_in_tabs true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Enable the mouse support?
 | 
				
			||||||
 | 
					set mouse_enabled true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Display the file size in the main column or status bar?
 | 
				
			||||||
 | 
					set display_size_in_main_column true
 | 
				
			||||||
 | 
					set display_size_in_status_bar true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Display files tags in all columns or only in main column?
 | 
				
			||||||
 | 
					set display_tags_in_all_columns true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Set a title for the window?
 | 
				
			||||||
 | 
					set update_title false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Set the title to "ranger" in the tmux program?
 | 
				
			||||||
 | 
					set update_tmux_title false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Shorten the title if it gets long?  The number defines how many
 | 
				
			||||||
 | 
					# directories are displayed at once, 0 turns off this feature.
 | 
				
			||||||
 | 
					set shorten_title 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
 | 
				
			||||||
 | 
					set tilde_in_titlebar false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# How many directory-changes or console-commands should be kept in history?
 | 
				
			||||||
 | 
					set max_history_size 20
 | 
				
			||||||
 | 
					set max_console_history_size 50
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Try to keep so much space between the top/bottom border when scrolling:
 | 
				
			||||||
 | 
					set scroll_offset 8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Flush the input after each key hit?  (Noticeable when ranger lags)
 | 
				
			||||||
 | 
					set flushinput true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Padding on the right when there's no preview?
 | 
				
			||||||
 | 
					# This allows you to click into the space to run the file.
 | 
				
			||||||
 | 
					set padding_right true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Save bookmarks (used with mX and `X) instantly?
 | 
				
			||||||
 | 
					# This helps to synchronize bookmarks between multiple ranger
 | 
				
			||||||
 | 
					# instances but leads to *slight* performance loss.
 | 
				
			||||||
 | 
					# When false, bookmarks are saved when ranger is exited.
 | 
				
			||||||
 | 
					set autosave_bookmarks true
 | 
				
			||||||
 | 
					set save_backtick_bookmark false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# You can display the "real" cumulative size of directories by using the
 | 
				
			||||||
 | 
					# command :get_cumulative_size or typing "dc".  The size is expensive to
 | 
				
			||||||
 | 
					# calculate and will not be updated automatically.  You can choose
 | 
				
			||||||
 | 
					# to update it automatically though by turning on this option:
 | 
				
			||||||
 | 
					set autoupdate_cumulative_size false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Turning this on makes sense for screen readers:
 | 
				
			||||||
 | 
					set show_cursor false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# One of: size, natural, basename, atime, ctime, mtime, type, random
 | 
				
			||||||
 | 
					set sort natural
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Additional sorting options
 | 
				
			||||||
 | 
					set sort_reverse false
 | 
				
			||||||
 | 
					set sort_case_insensitive true
 | 
				
			||||||
 | 
					set sort_directories_first true
 | 
				
			||||||
 | 
					set sort_unicode false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Enable this if key combinations with the Alt Key don't work for you.
 | 
				
			||||||
 | 
					# (Especially on xterm)
 | 
				
			||||||
 | 
					set xterm_alt_key false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Whether to include bookmarks in cd command
 | 
				
			||||||
 | 
					set cd_bookmarks true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Avoid previewing files larger than this size, in bytes.  Use a value of 0 to
 | 
				
			||||||
 | 
					# disable this feature.
 | 
				
			||||||
 | 
					set preview_max_size 10000000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Add the highlighted file to the path in the titlebar
 | 
				
			||||||
 | 
					set show_selection_in_titlebar true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The delay that ranger idly waits for user input, in milliseconds, with a
 | 
				
			||||||
 | 
					# resolution of 100ms.  Lower delay reduces lag between directory updates but
 | 
				
			||||||
 | 
					# increases CPU load.
 | 
				
			||||||
 | 
					set idle_delay 2000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# When the metadata manager module looks for metadata, should it only look for
 | 
				
			||||||
 | 
					# a ".metadata.json" file in the current directory, or do a deep search and
 | 
				
			||||||
 | 
					# check all directories above the current one as well?
 | 
				
			||||||
 | 
					set metadata_deep_search false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Clear all existing filters when leaving a directory
 | 
				
			||||||
 | 
					set clear_filters_on_dir_change false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Disable displaying line numbers in main column
 | 
				
			||||||
 | 
					set line_numbers false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Local Options
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# You can set local options that only affect a single directory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Examples:
 | 
				
			||||||
 | 
					# setlocal path=~/downloads sort mtime
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Command Aliases in the Console
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					alias e    edit
 | 
				
			||||||
 | 
					alias q    quit
 | 
				
			||||||
 | 
					alias q!   quitall
 | 
				
			||||||
 | 
					alias qa   quitall
 | 
				
			||||||
 | 
					alias qall quitall
 | 
				
			||||||
 | 
					alias setl setlocal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					alias filter     scout -prt
 | 
				
			||||||
 | 
					alias find       scout -feit
 | 
				
			||||||
 | 
					alias mark       scout -mr
 | 
				
			||||||
 | 
					alias unmark     scout -Mr
 | 
				
			||||||
 | 
					alias search     scout -rs
 | 
				
			||||||
 | 
					alias search_inc scout -rts
 | 
				
			||||||
 | 
					alias travel     scout -aefiklst
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Define keys for the browser
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Basic
 | 
				
			||||||
 | 
					unmap     Q
 | 
				
			||||||
 | 
					#quit!
 | 
				
			||||||
 | 
					unmap     q
 | 
				
			||||||
 | 
					#quit
 | 
				
			||||||
 | 
					copymap q ZZ ZQ
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map R     reload_cwd
 | 
				
			||||||
 | 
					map <C-r> reset
 | 
				
			||||||
 | 
					map <C-l> redraw_window
 | 
				
			||||||
 | 
					map <C-c> abort
 | 
				
			||||||
 | 
					map <esc> change_mode normal
 | 
				
			||||||
 | 
					map ~ set viewmode!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map i display_file
 | 
				
			||||||
 | 
					map ? help
 | 
				
			||||||
 | 
					map W display_log
 | 
				
			||||||
 | 
					map w taskview_open
 | 
				
			||||||
 | 
					map S shell $SHELL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map :  console
 | 
				
			||||||
 | 
					map ;  console
 | 
				
			||||||
 | 
					map !  console shell%space
 | 
				
			||||||
 | 
					map @  console -p6 shell  %%s
 | 
				
			||||||
 | 
					map #  console shell -p%space
 | 
				
			||||||
 | 
					map s  console shell%space
 | 
				
			||||||
 | 
					map r  chain draw_possible_programs; console open_with%%space
 | 
				
			||||||
 | 
					map f  console find%space
 | 
				
			||||||
 | 
					map cd console cd%space
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Change the line mode
 | 
				
			||||||
 | 
					map Mf linemode filename
 | 
				
			||||||
 | 
					map Mi linemode fileinfo
 | 
				
			||||||
 | 
					map Mm linemode mtime
 | 
				
			||||||
 | 
					map Mp linemode permissions
 | 
				
			||||||
 | 
					map Ms linemode sizemtime
 | 
				
			||||||
 | 
					map Mt linemode metatitle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Tagging / Marking
 | 
				
			||||||
 | 
					map t       tag_toggle
 | 
				
			||||||
 | 
					map ut      tag_remove
 | 
				
			||||||
 | 
					map "<any>  tag_toggle tag=%any
 | 
				
			||||||
 | 
					map <Space> mark_files toggle=True
 | 
				
			||||||
 | 
					map v       mark_files all=True toggle=True
 | 
				
			||||||
 | 
					map uv      mark_files all=True val=False
 | 
				
			||||||
 | 
					map V       toggle_visual_mode
 | 
				
			||||||
 | 
					map uV      toggle_visual_mode reverse=True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For the nostalgics: Midnight Commander bindings
 | 
				
			||||||
 | 
					map <F1> help
 | 
				
			||||||
 | 
					map <F3> display_file
 | 
				
			||||||
 | 
					map <F4> edit
 | 
				
			||||||
 | 
					map <F5> copy
 | 
				
			||||||
 | 
					map <F6> cut
 | 
				
			||||||
 | 
					map <F7> console mkdir%space
 | 
				
			||||||
 | 
					map <F8> console delete
 | 
				
			||||||
 | 
					map <F10> exit
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# In case you work on a keyboard with dvorak layout
 | 
				
			||||||
 | 
					map <UP>       move up=1
 | 
				
			||||||
 | 
					map <DOWN>     move down=1
 | 
				
			||||||
 | 
					map <LEFT>     move left=1
 | 
				
			||||||
 | 
					map <RIGHT>    move right=1
 | 
				
			||||||
 | 
					map <HOME>     move to=0
 | 
				
			||||||
 | 
					map <END>      move to=-1
 | 
				
			||||||
 | 
					map <PAGEDOWN> move down=1   pages=True
 | 
				
			||||||
 | 
					map <PAGEUP>   move up=1     pages=True
 | 
				
			||||||
 | 
					map <CR>       move right=1
 | 
				
			||||||
 | 
					map <DELETE>   console delete
 | 
				
			||||||
 | 
					map <INSERT>   console touch%space
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# VIM-like
 | 
				
			||||||
 | 
					copymap <UP>       k
 | 
				
			||||||
 | 
					copymap <DOWN>     j
 | 
				
			||||||
 | 
					copymap <LEFT>     h
 | 
				
			||||||
 | 
					copymap <RIGHT>    l
 | 
				
			||||||
 | 
					copymap <HOME>     gg
 | 
				
			||||||
 | 
					copymap <END>      G
 | 
				
			||||||
 | 
					copymap <PAGEDOWN> <C-F>
 | 
				
			||||||
 | 
					copymap <PAGEUP>   <C-B>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map J  move down=0.5  pages=True
 | 
				
			||||||
 | 
					map K  move up=0.5    pages=True
 | 
				
			||||||
 | 
					copymap J <C-D>
 | 
				
			||||||
 | 
					copymap K <C-U>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Jumping around
 | 
				
			||||||
 | 
					map H     history_go -1
 | 
				
			||||||
 | 
					map L     history_go 1
 | 
				
			||||||
 | 
					map ]     move_parent 1
 | 
				
			||||||
 | 
					map [     move_parent -1
 | 
				
			||||||
 | 
					map }     traverse
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map gh cd ~
 | 
				
			||||||
 | 
					map ge cd /etc
 | 
				
			||||||
 | 
					map gu cd /usr
 | 
				
			||||||
 | 
					map gd cd /dev
 | 
				
			||||||
 | 
					map gl cd -r .
 | 
				
			||||||
 | 
					map gL cd -r %f
 | 
				
			||||||
 | 
					map go cd /opt
 | 
				
			||||||
 | 
					map gv cd /var
 | 
				
			||||||
 | 
					map gm cd /media
 | 
				
			||||||
 | 
					map gM cd /mnt
 | 
				
			||||||
 | 
					map gs cd /srv
 | 
				
			||||||
 | 
					map gr cd /
 | 
				
			||||||
 | 
					map gR eval fm.cd(ranger.RANGERDIR)
 | 
				
			||||||
 | 
					map g/ cd /
 | 
				
			||||||
 | 
					map g? cd /usr/share/doc/ranger
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# External Programs
 | 
				
			||||||
 | 
					map E  edit
 | 
				
			||||||
 | 
					map du shell -p du --max-depth=1 -h --apparent-size
 | 
				
			||||||
 | 
					map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
 | 
				
			||||||
 | 
					map yp shell -f echo -n %d/%f | xsel -i; xsel -o | xsel -i -b
 | 
				
			||||||
 | 
					map yd shell -f echo -n %d    | xsel -i; xsel -o | xsel -i -b
 | 
				
			||||||
 | 
					map yn shell -f echo -n %f    | xsel -i; xsel -o | xsel -i -b
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Filesystem Operations
 | 
				
			||||||
 | 
					map =  chmod
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map cw console rename%space
 | 
				
			||||||
 | 
					map a  rename_append
 | 
				
			||||||
 | 
					map A  eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"))
 | 
				
			||||||
 | 
					map I  eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map pp paste
 | 
				
			||||||
 | 
					map po paste overwrite=True
 | 
				
			||||||
 | 
					map pP paste append=True
 | 
				
			||||||
 | 
					map pO paste overwrite=True append=True
 | 
				
			||||||
 | 
					map pl paste_symlink relative=False
 | 
				
			||||||
 | 
					map pL paste_symlink relative=True
 | 
				
			||||||
 | 
					map phl paste_hardlink
 | 
				
			||||||
 | 
					map pht paste_hardlinked_subtree
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map dD console delete
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map dd cut
 | 
				
			||||||
 | 
					map ud uncut
 | 
				
			||||||
 | 
					map da cut mode=add
 | 
				
			||||||
 | 
					map dr cut mode=remove
 | 
				
			||||||
 | 
					map dt cut mode=toggle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map yy copy
 | 
				
			||||||
 | 
					map uy uncut
 | 
				
			||||||
 | 
					map ya copy mode=add
 | 
				
			||||||
 | 
					map yr copy mode=remove
 | 
				
			||||||
 | 
					map yt copy mode=toggle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Temporary workarounds
 | 
				
			||||||
 | 
					map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
 | 
				
			||||||
 | 
					map dG  eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
 | 
				
			||||||
 | 
					map dj  eval fm.cut(dirarg=dict(down=1), narg=quantifier)
 | 
				
			||||||
 | 
					map dk  eval fm.cut(dirarg=dict(up=1), narg=quantifier)
 | 
				
			||||||
 | 
					map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
 | 
				
			||||||
 | 
					map yG  eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
 | 
				
			||||||
 | 
					map yj  eval fm.copy(dirarg=dict(down=1), narg=quantifier)
 | 
				
			||||||
 | 
					map yk  eval fm.copy(dirarg=dict(up=1), narg=quantifier)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Searching
 | 
				
			||||||
 | 
					map /  console search%space
 | 
				
			||||||
 | 
					map n  search_next
 | 
				
			||||||
 | 
					map N  search_next forward=False
 | 
				
			||||||
 | 
					map ct search_next order=tag
 | 
				
			||||||
 | 
					map cs search_next order=size
 | 
				
			||||||
 | 
					map ci search_next order=mimetype
 | 
				
			||||||
 | 
					map cc search_next order=ctime
 | 
				
			||||||
 | 
					map cm search_next order=mtime
 | 
				
			||||||
 | 
					map ca search_next order=atime
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map <C-t>     terminal
 | 
				
			||||||
 | 
					# Tabs
 | 
				
			||||||
 | 
					map <C-n>     tab_new ~
 | 
				
			||||||
 | 
					map <C-w>     tab_close
 | 
				
			||||||
 | 
					map <TAB>     tab_move 1
 | 
				
			||||||
 | 
					map <S-TAB>   tab_move -1
 | 
				
			||||||
 | 
					map <A-Right> tab_move 1
 | 
				
			||||||
 | 
					map <A-Left>  tab_move -1
 | 
				
			||||||
 | 
					map gt        tab_move 1
 | 
				
			||||||
 | 
					map gT        tab_move -1
 | 
				
			||||||
 | 
					map gn        tab_new ~
 | 
				
			||||||
 | 
					map gc        tab_close
 | 
				
			||||||
 | 
					map uq        tab_restore
 | 
				
			||||||
 | 
					map <a-1>     tab_open 1
 | 
				
			||||||
 | 
					map <a-2>     tab_open 2
 | 
				
			||||||
 | 
					map <a-3>     tab_open 3
 | 
				
			||||||
 | 
					map <a-4>     tab_open 4
 | 
				
			||||||
 | 
					map <a-5>     tab_open 5
 | 
				
			||||||
 | 
					map <a-6>     tab_open 6
 | 
				
			||||||
 | 
					map <a-7>     tab_open 7
 | 
				
			||||||
 | 
					map <a-8>     tab_open 8
 | 
				
			||||||
 | 
					map <a-9>     tab_open 9
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Sorting
 | 
				
			||||||
 | 
					map or set sort_reverse!
 | 
				
			||||||
 | 
					map oz set sort=random
 | 
				
			||||||
 | 
					map os chain set sort=size;      set sort_reverse=False
 | 
				
			||||||
 | 
					map ob chain set sort=basename;  set sort_reverse=False
 | 
				
			||||||
 | 
					map on chain set sort=natural;   set sort_reverse=False
 | 
				
			||||||
 | 
					map om chain set sort=mtime;     set sort_reverse=False
 | 
				
			||||||
 | 
					map oc chain set sort=ctime;     set sort_reverse=False
 | 
				
			||||||
 | 
					map oa chain set sort=atime;     set sort_reverse=False
 | 
				
			||||||
 | 
					map ot chain set sort=type;      set sort_reverse=False
 | 
				
			||||||
 | 
					map oe chain set sort=extension; set sort_reverse=False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map oS chain set sort=size;      set sort_reverse=True
 | 
				
			||||||
 | 
					map oB chain set sort=basename;  set sort_reverse=True
 | 
				
			||||||
 | 
					map oN chain set sort=natural;   set sort_reverse=True
 | 
				
			||||||
 | 
					map oM chain set sort=mtime;     set sort_reverse=True
 | 
				
			||||||
 | 
					map oC chain set sort=ctime;     set sort_reverse=True
 | 
				
			||||||
 | 
					map oA chain set sort=atime;     set sort_reverse=True
 | 
				
			||||||
 | 
					map oT chain set sort=type;      set sort_reverse=True
 | 
				
			||||||
 | 
					map oE chain set sort=extension; set sort_reverse=True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map dc get_cumulative_size
 | 
				
			||||||
 | 
					map dC chain mark_files all=True val=True; get_cumulative_size; chain mark_files all=True val=False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Settings
 | 
				
			||||||
 | 
					map zc    set collapse_preview!
 | 
				
			||||||
 | 
					map zd    set sort_directories_first!
 | 
				
			||||||
 | 
					map zh    set show_hidden!
 | 
				
			||||||
 | 
					map <C-h> set show_hidden!
 | 
				
			||||||
 | 
					map zI    set flushinput!
 | 
				
			||||||
 | 
					map zi    set preview_images!
 | 
				
			||||||
 | 
					map zm    set mouse_enabled!
 | 
				
			||||||
 | 
					map zp    set preview_files!
 | 
				
			||||||
 | 
					map zP    set preview_directories!
 | 
				
			||||||
 | 
					map zs    set sort_case_insensitive!
 | 
				
			||||||
 | 
					map zu    set autoupdate_cumulative_size!
 | 
				
			||||||
 | 
					map zv    set use_preview_script!
 | 
				
			||||||
 | 
					map zf    console filter%space
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Bookmarks
 | 
				
			||||||
 | 
					map `<any>  enter_bookmark %any
 | 
				
			||||||
 | 
					map '<any>  enter_bookmark %any
 | 
				
			||||||
 | 
					map m<any>  set_bookmark %any
 | 
				
			||||||
 | 
					map um<any> unset_bookmark %any
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					map m<bg>   draw_bookmarks
 | 
				
			||||||
 | 
					copymap m<bg>  um<bg> `<bg> '<bg>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Generate all the chmod bindings with some python help:
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map +u{0} shell -f chmod u+{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map +g{0} shell -f chmod g+{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map +o{0} shell -f chmod o+{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map +a{0} shell -f chmod a+{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map +{0}  shell -f chmod u+{0} %s".format(arg))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map -u{0} shell -f chmod u-{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map -g{0} shell -f chmod g-{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map -o{0} shell -f chmod o-{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map -a{0} shell -f chmod a-{0} %s".format(arg))
 | 
				
			||||||
 | 
					eval for arg in "rwxXst": cmd("map -{0}  shell -f chmod u-{0} %s".format(arg))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Define keys for the console
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# Note: Unmapped keys are passed directly to the console.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Basic
 | 
				
			||||||
 | 
					cmap <tab>   eval fm.ui.console.tab()
 | 
				
			||||||
 | 
					cmap <s-tab> eval fm.ui.console.tab(-1)
 | 
				
			||||||
 | 
					cmap <ESC>   eval fm.ui.console.close()
 | 
				
			||||||
 | 
					cmap <CR>    eval fm.ui.console.execute()
 | 
				
			||||||
 | 
					cmap <C-l>   redraw_window
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					copycmap <ESC> <C-c>
 | 
				
			||||||
 | 
					copycmap <CR>  <C-j>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Move around
 | 
				
			||||||
 | 
					cmap <up>    eval fm.ui.console.history_move(-1)
 | 
				
			||||||
 | 
					cmap <down>  eval fm.ui.console.history_move(1)
 | 
				
			||||||
 | 
					cmap <left>  eval fm.ui.console.move(left=1)
 | 
				
			||||||
 | 
					cmap <right> eval fm.ui.console.move(right=1)
 | 
				
			||||||
 | 
					cmap <home>  eval fm.ui.console.move(right=0, absolute=True)
 | 
				
			||||||
 | 
					cmap <end>   eval fm.ui.console.move(right=-1, absolute=True)
 | 
				
			||||||
 | 
					cmap <a-left>   eval fm.ui.console.move_word(left=1)
 | 
				
			||||||
 | 
					cmap <a-right>  eval fm.ui.console.move_word(right=1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Line Editing
 | 
				
			||||||
 | 
					cmap <backspace>  eval fm.ui.console.delete(-1)
 | 
				
			||||||
 | 
					cmap <delete>     eval fm.ui.console.delete(0)
 | 
				
			||||||
 | 
					cmap <C-w>        eval fm.ui.console.delete_word()
 | 
				
			||||||
 | 
					cmap <A-d>        eval fm.ui.console.delete_word(backward=False)
 | 
				
			||||||
 | 
					cmap <C-k>        eval fm.ui.console.delete_rest(1)
 | 
				
			||||||
 | 
					cmap <C-u>        eval fm.ui.console.delete_rest(-1)
 | 
				
			||||||
 | 
					cmap <C-y>        eval fm.ui.console.paste()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# And of course the emacs way
 | 
				
			||||||
 | 
					copycmap <up>        <C-p>
 | 
				
			||||||
 | 
					copycmap <down>      <C-n>
 | 
				
			||||||
 | 
					copycmap <left>      <C-b>
 | 
				
			||||||
 | 
					copycmap <right>     <C-f>
 | 
				
			||||||
 | 
					copycmap <home>      <C-a>
 | 
				
			||||||
 | 
					copycmap <end>       <C-e>
 | 
				
			||||||
 | 
					copycmap <delete>    <C-d>
 | 
				
			||||||
 | 
					copycmap <backspace> <C-h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Note: There are multiple ways to express backspaces.  <backspace> (code 263)
 | 
				
			||||||
 | 
					# and <backspace2> (code 127).  To be sure, use both.
 | 
				
			||||||
 | 
					copycmap <backspace> <backspace2>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# This special expression allows typing in numerals:
 | 
				
			||||||
 | 
					cmap <allow_quantifiers> false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Pager Keybindings
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Movement
 | 
				
			||||||
 | 
					pmap  <down>      pager_move  down=1
 | 
				
			||||||
 | 
					pmap  <up>        pager_move  up=1
 | 
				
			||||||
 | 
					pmap  <left>      pager_move  left=4
 | 
				
			||||||
 | 
					pmap  <right>     pager_move  right=4
 | 
				
			||||||
 | 
					pmap  <home>      pager_move  to=0
 | 
				
			||||||
 | 
					pmap  <end>       pager_move  to=-1
 | 
				
			||||||
 | 
					pmap  <pagedown>  pager_move  down=1.0  pages=True
 | 
				
			||||||
 | 
					pmap  <pageup>    pager_move  up=1.0    pages=True
 | 
				
			||||||
 | 
					pmap  <C-d>       pager_move  down=0.5  pages=True
 | 
				
			||||||
 | 
					pmap  <C-u>       pager_move  up=0.5    pages=True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					copypmap <UP>       k  <C-p>
 | 
				
			||||||
 | 
					copypmap <DOWN>     j  <C-n> <CR>
 | 
				
			||||||
 | 
					copypmap <LEFT>     h
 | 
				
			||||||
 | 
					copypmap <RIGHT>    l
 | 
				
			||||||
 | 
					copypmap <HOME>     g
 | 
				
			||||||
 | 
					copypmap <END>      G
 | 
				
			||||||
 | 
					copypmap <C-d>      d
 | 
				
			||||||
 | 
					copypmap <C-u>      u
 | 
				
			||||||
 | 
					copypmap <PAGEDOWN> n  f  <C-F>  <Space>
 | 
				
			||||||
 | 
					copypmap <PAGEUP>   p  b  <C-B>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Basic
 | 
				
			||||||
 | 
					pmap     <C-l> redraw_window
 | 
				
			||||||
 | 
					pmap     <ESC> pager_close
 | 
				
			||||||
 | 
					copypmap <ESC> q Q i <F3>
 | 
				
			||||||
 | 
					pmap E      edit_file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					# == Taskview Keybindings
 | 
				
			||||||
 | 
					# ===================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Movement
 | 
				
			||||||
 | 
					tmap <up>        taskview_move up=1
 | 
				
			||||||
 | 
					tmap <down>      taskview_move down=1
 | 
				
			||||||
 | 
					tmap <home>      taskview_move to=0
 | 
				
			||||||
 | 
					tmap <end>       taskview_move to=-1
 | 
				
			||||||
 | 
					tmap <pagedown>  taskview_move down=1.0  pages=True
 | 
				
			||||||
 | 
					tmap <pageup>    taskview_move up=1.0    pages=True
 | 
				
			||||||
 | 
					tmap <C-d>       taskview_move down=0.5  pages=True
 | 
				
			||||||
 | 
					tmap <C-u>       taskview_move up=0.5    pages=True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					copytmap <UP>       k  <C-p>
 | 
				
			||||||
 | 
					copytmap <DOWN>     j  <C-n> <CR>
 | 
				
			||||||
 | 
					copytmap <HOME>     g
 | 
				
			||||||
 | 
					copytmap <END>      G
 | 
				
			||||||
 | 
					copytmap <C-u>      u
 | 
				
			||||||
 | 
					copytmap <PAGEDOWN> n  f  <C-F>  <Space>
 | 
				
			||||||
 | 
					copytmap <PAGEUP>   p  b  <C-B>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Changing priority and deleting tasks
 | 
				
			||||||
 | 
					tmap J          eval -q fm.ui.taskview.task_move(-1)
 | 
				
			||||||
 | 
					tmap K          eval -q fm.ui.taskview.task_move(0)
 | 
				
			||||||
 | 
					tmap dd         eval -q fm.ui.taskview.task_remove()
 | 
				
			||||||
 | 
					tmap <pagedown> eval -q fm.ui.taskview.task_move(-1)
 | 
				
			||||||
 | 
					tmap <pageup>   eval -q fm.ui.taskview.task_move(0)
 | 
				
			||||||
 | 
					tmap <delete>   eval -q fm.ui.taskview.task_remove()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Basic
 | 
				
			||||||
 | 
					tmap <C-l> redraw_window
 | 
				
			||||||
 | 
					tmap <ESC> taskview_close
 | 
				
			||||||
 | 
					copytmap <ESC> q Q w <C-c>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# RSYNC
 | 
				
			||||||
 | 
					#sync buffer'd files into curr dir :links only
 | 
				
			||||||
 | 
					map ps shell -f rsync -rult %c %d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										211
									
								
								ranger/.config/ranger/rifle.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										211
									
								
								ranger/.config/ranger/rifle.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,211 @@
 | 
				
			|||||||
 | 
					# vim: ft=cfg
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This is the configuration file of "rifle", ranger's file executor/opener.
 | 
				
			||||||
 | 
					# Each line consists of conditions and a command.  For each line the conditions
 | 
				
			||||||
 | 
					# are checked and if they are met, the respective command is run.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Syntax:
 | 
				
			||||||
 | 
					#   <condition1> , <condition2> , ... = command
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# The command can contain these environment variables:
 | 
				
			||||||
 | 
					#   $1-$9 | The n-th selected file
 | 
				
			||||||
 | 
					#   $@    | All selected files
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# If you use the special command "ask", rifle will ask you what program to run.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Prefixing a condition with "!" will negate its result.
 | 
				
			||||||
 | 
					# These conditions are currently supported:
 | 
				
			||||||
 | 
					#   match <regexp> | The regexp matches $1
 | 
				
			||||||
 | 
					#   ext <regexp>   | The regexp matches the extension of $1
 | 
				
			||||||
 | 
					#   mime <regexp>  | The regexp matches the mime type of $1
 | 
				
			||||||
 | 
					#   name <regexp>  | The regexp matches the basename of $1
 | 
				
			||||||
 | 
					#   path <regexp>  | The regexp matches the absolute path of $1
 | 
				
			||||||
 | 
					#   has <program>  | The program is installed (i.e. located in $PATH)
 | 
				
			||||||
 | 
					#   env <variable> | The environment variable "variable" is non-empty
 | 
				
			||||||
 | 
					#   file           | $1 is a file
 | 
				
			||||||
 | 
					#   directory      | $1 is a directory
 | 
				
			||||||
 | 
					#   number <n>     | change the number of this command to n
 | 
				
			||||||
 | 
					#   terminal       | stdin, stderr and stdout are connected to a terminal
 | 
				
			||||||
 | 
					#   X              | $DISPLAY is not empty (i.e. Xorg runs)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# There are also pseudo-conditions which have a "side effect":
 | 
				
			||||||
 | 
					#   flag <flags>  | Change how the program is run. See below.
 | 
				
			||||||
 | 
					#   label <label> | Assign a label or name to the command so it can
 | 
				
			||||||
 | 
					#                 | be started with :open_with <label> in ranger
 | 
				
			||||||
 | 
					#                 | or `rifle -p <label>` in the standalone executable.
 | 
				
			||||||
 | 
					#   else          | Always true.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Flags are single characters which slightly transform the command:
 | 
				
			||||||
 | 
					#   f | Fork the program, make it run in the background.
 | 
				
			||||||
 | 
					#     |   New command = setsid $command >& /dev/null &
 | 
				
			||||||
 | 
					#   r | Execute the command with root permissions
 | 
				
			||||||
 | 
					#     |   New command = sudo $command
 | 
				
			||||||
 | 
					#   t | Run the program in a new terminal.  If $TERMCMD is not defined,
 | 
				
			||||||
 | 
					#     | rifle will attempt to extract it from $TERM.
 | 
				
			||||||
 | 
					#     |   New command = $TERMCMD -e $command
 | 
				
			||||||
 | 
					# Note: The "New command" serves only as an illustration, the exact
 | 
				
			||||||
 | 
					# implementation may differ.
 | 
				
			||||||
 | 
					# Note: When using rifle in ranger, there is an additional flag "c" for
 | 
				
			||||||
 | 
					# only running the current file even if you have marked multiple files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Websites
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Rarely installed browsers get higher priority; It is assumed that if you
 | 
				
			||||||
 | 
					# install a rare browser, you probably use it.  Firefox/konqueror/w3m on the
 | 
				
			||||||
 | 
					# other hand are often only installed as fallback browsers.
 | 
				
			||||||
 | 
					ext x?html?, has surf,           X, flag f = surf -- file://"$1"
 | 
				
			||||||
 | 
					ext x?html?, has vimprobable,    X, flag f = vimprobable -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has vimprobable2,   X, flag f = vimprobable2 -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has qutebrowser,    X, flag f = qutebrowser -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has dwb,            X, flag f = dwb -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has jumanji,        X, flag f = jumanji -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has luakit,         X, flag f = luakit -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has uzbl,           X, flag f = uzbl -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has uzbl-tabbed,    X, flag f = uzbl-tabbed -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has uzbl-browser,   X, flag f = uzbl-browser -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has uzbl-core,      X, flag f = uzbl-core -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has midori,         X, flag f = midori -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has chromium,       X, flag f = chromium -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has opera,          X, flag f = opera -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has firefox,        X, flag f = firefox -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has seamonkey,      X, flag f = seamonkey -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has iceweasel,      X, flag f = iceweasel -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has epiphany,       X, flag f = epiphany -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has konqueror,      X, flag f = konqueror -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has elinks,          terminal = elinks "$@"
 | 
				
			||||||
 | 
					ext x?html?, has links2,          terminal = links2 "$@"
 | 
				
			||||||
 | 
					ext x?html?, has links,           terminal = links "$@"
 | 
				
			||||||
 | 
					ext x?html?, has lynx,            terminal = lynx -- "$@"
 | 
				
			||||||
 | 
					ext x?html?, has w3m,             terminal = w3m "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Misc
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Define the "editor" for text files as first action
 | 
				
			||||||
 | 
					mime ^text,  label editor = myemacs "-nc" -- "$@"
 | 
				
			||||||
 | 
					mime ^text,  label pager  = "$PAGER" -- "$@"
 | 
				
			||||||
 | 
					!mime ^text, label editor, ext xml|json|csv|tex|py|pl|rb|js|sh|php = myemacs "-nc" -- "$@"
 | 
				
			||||||
 | 
					!mime ^text, label pager,  ext xml|json|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ext 1                         = man "$1"
 | 
				
			||||||
 | 
					ext s[wmf]c, has zsnes, X     = zsnes "$1"
 | 
				
			||||||
 | 
					ext s[wmf]c, has snes9x-gtk,X = snes9x-gtk "$1"
 | 
				
			||||||
 | 
					ext nes, has fceux, X         = fceux "$1"
 | 
				
			||||||
 | 
					ext exe                       = wine "$1"
 | 
				
			||||||
 | 
					name ^[mM]akefile$            = make
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#--------------------------------------------
 | 
				
			||||||
 | 
					# Code
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					ext py  = python -- "$1"
 | 
				
			||||||
 | 
					ext pl  = perl -- "$1"
 | 
				
			||||||
 | 
					ext rb  = ruby -- "$1"
 | 
				
			||||||
 | 
					ext js  = node -- "$1"
 | 
				
			||||||
 | 
					ext sh  = sh -- "$1"
 | 
				
			||||||
 | 
					ext php = php -- "$1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#--------------------------------------------
 | 
				
			||||||
 | 
					# Audio without X
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					mime ^audio|ogg$, terminal, has mpv      = mpv -- "$@"
 | 
				
			||||||
 | 
					mime ^audio|ogg$, terminal, has mplayer2 = mplayer2 -- "$@"
 | 
				
			||||||
 | 
					mime ^audio|ogg$, terminal, has mplayer  = mplayer -- "$@"
 | 
				
			||||||
 | 
					ext midi?,        terminal, has wildmidi = wildmidi -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#--------------------------------------------
 | 
				
			||||||
 | 
					# Video/Audio with a GUI
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					mime ^video|audio, has gmplayer, X, flag f = gmplayer -- "$@"
 | 
				
			||||||
 | 
					mime ^video|audio, has smplayer, X, flag f = smplayer "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mpv,      X, flag f = mpv -- "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mpv,      X, flag f = mpv --fs -- "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mplayer2, X, flag f = mplayer2 -- "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mplayer2, X, flag f = mplayer2 -fs -- "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mplayer,  X, flag f = mplayer -- "$@"
 | 
				
			||||||
 | 
					mime ^video,       has mplayer,  X, flag f = mplayer -fs -- "$@"
 | 
				
			||||||
 | 
					mime ^video|audio, has vlc,      X, flag f = vlc -- "$@"
 | 
				
			||||||
 | 
					mime ^video|audio, has totem,    X, flag f = totem -- "$@"
 | 
				
			||||||
 | 
					mime ^video|audio, has totem,    X, flag f = totem --fullscreen -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#--------------------------------------------
 | 
				
			||||||
 | 
					# Video without X:
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					mime ^video, terminal, !X, has mpv       = mpv -- "$@"
 | 
				
			||||||
 | 
					mime ^video, terminal, !X, has mplayer2  = mplayer2 -- "$@"
 | 
				
			||||||
 | 
					mime ^video, terminal, !X, has mplayer   = mplayer -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Documents
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					ext pdf, has llpp,     X, flag f = llpp "$@"
 | 
				
			||||||
 | 
					ext pdf, has zathura,  X, flag f = zathura -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has mupdf,    X, flag f = mupdf "$@"
 | 
				
			||||||
 | 
					ext pdf, has mupdf-x11,X, flag f = mupdf-x11 "$@"
 | 
				
			||||||
 | 
					ext pdf, has apvlv,    X, flag f = apvlv -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has xpdf,     X, flag f = xpdf -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has evince,   X, flag f = evince -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has atril,    X, flag f = atril -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has okular,   X, flag f = okular -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has epdfview, X, flag f = epdfview -- "$@"
 | 
				
			||||||
 | 
					ext pdf, has qpdfview, X, flag f = qpdfview "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ext docx?, has catdoc,       terminal = catdoc -- "$@" | "$PAGER"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ext                        sxc|xlsx?|xlt|xlw|gnm|gnumeric, has gnumeric,    X, flag f = gnumeric -- "$@"
 | 
				
			||||||
 | 
					ext                        sxc|xlsx?|xlt|xlw|gnm|gnumeric, has kspread,     X, flag f = kspread -- "$@"
 | 
				
			||||||
 | 
					ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has libreoffice, X, flag f = libreoffice "$@"
 | 
				
			||||||
 | 
					ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has soffice,     X, flag f = soffice "$@"
 | 
				
			||||||
 | 
					ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has ooffice,     X, flag f = ooffice "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ext djvu, has zathura,X, flag f = zathura -- "$@"
 | 
				
			||||||
 | 
					ext djvu, has evince, X, flag f = evince -- "$@"
 | 
				
			||||||
 | 
					ext djvu, has atril,  X, flag f = atril -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Image Viewing:
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@"
 | 
				
			||||||
 | 
					mime ^image/svg, has display,  X, flag f = display -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mime ^image, has pqiv,      X, flag f = pqiv -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has sxiv,      X, flag f = sxiv -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has feh,       X, flag f = feh -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has mirage,    X, flag f = mirage -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has ristretto, X, flag f = ristretto "$@"
 | 
				
			||||||
 | 
					mime ^image, has eog,       X, flag f = eog -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has eom,       X, flag f = eom -- "$@"
 | 
				
			||||||
 | 
					mime ^image, has gimp,      X, flag f = gimp -- "$@"
 | 
				
			||||||
 | 
					ext xcf,                    X, flag f = gimp -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Archives
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# avoid password prompt by providing empty password
 | 
				
			||||||
 | 
					ext 7z, has 7z = 7z -p l "$@" | "$PAGER"
 | 
				
			||||||
 | 
					# This requires atool
 | 
				
			||||||
 | 
					ext ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz,  has als     = als -- "$@" | "$PAGER"
 | 
				
			||||||
 | 
					ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has als     = als -- "$@" | "$PAGER"
 | 
				
			||||||
 | 
					ext 7z|ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz,  has aunpack = aunpack -- "$@"
 | 
				
			||||||
 | 
					ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has aunpack = aunpack -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fallback:
 | 
				
			||||||
 | 
					ext tar|gz, has tar = tar vvtf "$@" | "$PAGER"
 | 
				
			||||||
 | 
					ext tar|gz, has tar = tar vvxf "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					# Misc
 | 
				
			||||||
 | 
					#-------------------------------------------
 | 
				
			||||||
 | 
					label wallpaper, number 11, mime ^image, has feh, X = feh --bg-scale "$1"
 | 
				
			||||||
 | 
					label wallpaper, number 12, mime ^image, has feh, X = feh --bg-tile "$1"
 | 
				
			||||||
 | 
					label wallpaper, number 13, mime ^image, has feh, X = feh --bg-center "$1"
 | 
				
			||||||
 | 
					label wallpaper, number 14, mime ^image, has feh, X = feh --bg-fill "$1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Define the editor for non-text files + pager as last action
 | 
				
			||||||
 | 
					              !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = ask
 | 
				
			||||||
 | 
					label editor, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = myemacs "-nc" -- "$@"
 | 
				
			||||||
 | 
					label pager,  !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = "$PAGER" -- "$@"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The very last action, so that it's never triggered accidentally, is to execute a program:
 | 
				
			||||||
 | 
					mime application/x-executable = "$1"
 | 
				
			||||||
							
								
								
									
										121
									
								
								ranger/.config/ranger/scope.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										121
									
								
								ranger/.config/ranger/scope.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,121 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env sh
 | 
				
			||||||
 | 
					# ranger supports enhanced previews.  If the option "use_preview_script"
 | 
				
			||||||
 | 
					# is set to True and this file exists, this script will be called and its
 | 
				
			||||||
 | 
					# output is displayed in ranger.  ANSI color codes are supported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# NOTES: This script is considered a configuration file.  If you upgrade
 | 
				
			||||||
 | 
					# ranger, it will be left untouched. (You must update it yourself.)
 | 
				
			||||||
 | 
					# Also, ranger disables STDIN here, so interactive scripts won't work properly
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Meanings of exit codes:
 | 
				
			||||||
 | 
					# code | meaning    | action of ranger
 | 
				
			||||||
 | 
					# -----+------------+-------------------------------------------
 | 
				
			||||||
 | 
					# 0    | success    | success. display stdout as preview
 | 
				
			||||||
 | 
					# 1    | no preview | failure. display no preview at all
 | 
				
			||||||
 | 
					# 2    | plain text | display the plain content of the file
 | 
				
			||||||
 | 
					# 3    | fix width  | success. Don't reload when width changes
 | 
				
			||||||
 | 
					# 4    | fix height | success. Don't reload when height changes
 | 
				
			||||||
 | 
					# 5    | fix both   | success. Don't ever reload
 | 
				
			||||||
 | 
					# 6    | image      | success. display the image $cached points to as an image preview
 | 
				
			||||||
 | 
					# 7    | image      | success. display the file directly as an image
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Meaningful aliases for arguments:
 | 
				
			||||||
 | 
					path="$1"            # Full path of the selected file
 | 
				
			||||||
 | 
					width="$2"           # Width of the preview pane (number of fitting characters)
 | 
				
			||||||
 | 
					height="$3"          # Height of the preview pane (number of fitting characters)
 | 
				
			||||||
 | 
					cached="$4"          # Path that should be used to cache image previews
 | 
				
			||||||
 | 
					preview_images="$5"  # "True" if image previews are enabled, "False" otherwise.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					maxln=200    # Stop after $maxln lines.  Can be used like ls | head -n $maxln
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Find out something about the file:
 | 
				
			||||||
 | 
					mimetype=$(file --mime-type -Lb "$path")
 | 
				
			||||||
 | 
					extension=$(/bin/echo "${path##*.}" | awk '{print tolower($0)}')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Functions:
 | 
				
			||||||
 | 
					# runs a command and saves its output into $output.  Useful if you need
 | 
				
			||||||
 | 
					# the return value AND want to use the output in a pipe
 | 
				
			||||||
 | 
					try() { output=$(eval '"$@"'); }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# writes the output of the previously used "try" command
 | 
				
			||||||
 | 
					dump() { /bin/echo "$output"; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# a common post-processing function used after most commands
 | 
				
			||||||
 | 
					trim() { head -n "$maxln"; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# wraps highlight to treat exit code 141 (killed by SIGPIPE) as success
 | 
				
			||||||
 | 
					safepipe() { "$@"; test $? = 0 -o $? = 141; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Image previews, if enabled in ranger.
 | 
				
			||||||
 | 
					if [ "$preview_images" = "True" ]; then
 | 
				
			||||||
 | 
					    case "$mimetype" in
 | 
				
			||||||
 | 
					        # Image previews for SVG files, disabled by default.
 | 
				
			||||||
 | 
					        ###image/svg+xml)
 | 
				
			||||||
 | 
					        ###   convert "$path" "$cached" && exit 6 || exit 1;;
 | 
				
			||||||
 | 
					        # Image previews for image files. w3mimgdisplay will be called for all
 | 
				
			||||||
 | 
					        # image files (unless overriden as above), but might fail for
 | 
				
			||||||
 | 
					        # unsupported types.
 | 
				
			||||||
 | 
					        image/*)
 | 
				
			||||||
 | 
					            exit 7;;
 | 
				
			||||||
 | 
					        # Image preview for video, disabled by default.:
 | 
				
			||||||
 | 
					        video/*)
 | 
				
			||||||
 | 
					            ffmpegthumbnailer -i "$path" -o "$cached" -s 0 && exit 6 || exit 1;;
 | 
				
			||||||
 | 
					    esac
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					case "$extension" in
 | 
				
			||||||
 | 
					    # Archive extensions:
 | 
				
			||||||
 | 
					    a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\
 | 
				
			||||||
 | 
					    rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)
 | 
				
			||||||
 | 
					        try als "$path" && { dump | trim; exit 0; }
 | 
				
			||||||
 | 
					        try acat "$path" && { dump | trim; exit 3; }
 | 
				
			||||||
 | 
					        try bsdtar -lf "$path" && { dump | trim; exit 0; }
 | 
				
			||||||
 | 
					        exit 1;;
 | 
				
			||||||
 | 
					    rar)
 | 
				
			||||||
 | 
					        # avoid password prompt by providing empty password
 | 
				
			||||||
 | 
					        try unrar -p- lt "$path" && { dump | trim; exit 0; } || exit 1;;
 | 
				
			||||||
 | 
					    7z)
 | 
				
			||||||
 | 
					        # avoid password prompt by providing empty password
 | 
				
			||||||
 | 
					        try 7z -p l "$path" && { dump | trim; exit 0; } || exit 1;;
 | 
				
			||||||
 | 
					    # PDF documents:
 | 
				
			||||||
 | 
					    pdf)
 | 
				
			||||||
 | 
					        try pdftotext -l 10 -nopgbrk -q "$path" - && \
 | 
				
			||||||
 | 
					            { dump | trim | fmt -s -w $width; exit 0; } || exit 1;;
 | 
				
			||||||
 | 
					    # BitTorrent Files
 | 
				
			||||||
 | 
					    torrent)
 | 
				
			||||||
 | 
					        try transmission-show "$path" && { dump | trim; exit 5; } || exit 1;;
 | 
				
			||||||
 | 
					    # ODT Files
 | 
				
			||||||
 | 
					    odt|ods|odp|sxw)
 | 
				
			||||||
 | 
					        try odt2txt "$path" && { dump | trim; exit 5; } || exit 1;;
 | 
				
			||||||
 | 
					    # HTML Pages:
 | 
				
			||||||
 | 
					    htm|html|xhtml)
 | 
				
			||||||
 | 
					        try w3m    -dump "$path" && { dump | trim | fmt -s -w $width; exit 4; }
 | 
				
			||||||
 | 
					        try lynx   -dump "$path" && { dump | trim | fmt -s -w $width; exit 4; }
 | 
				
			||||||
 | 
					        try elinks -dump "$path" && { dump | trim | fmt -s -w $width; exit 4; }
 | 
				
			||||||
 | 
					        ;; # fall back to highlight/cat if the text browsers fail
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					case "$mimetype" in
 | 
				
			||||||
 | 
					    # Syntax highlight for text files:
 | 
				
			||||||
 | 
					    text/* | */xml)
 | 
				
			||||||
 | 
					        if [ "$(tput colors)" -ge 256 ]; then
 | 
				
			||||||
 | 
					            pygmentize_format=terminal256
 | 
				
			||||||
 | 
					            highlight_format=xterm256
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					            pygmentize_format=terminal
 | 
				
			||||||
 | 
					            highlight_format=ansi
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        try safepipe highlight --out-format=${highlight_format} "$path" && { dump | trim; exit 5; }
 | 
				
			||||||
 | 
					        try safepipe pygmentize -f ${pygmentize_format} "$path" && { dump | trim; exit 5; }
 | 
				
			||||||
 | 
					        exit 2;;
 | 
				
			||||||
 | 
					    # Ascii-previews of images:
 | 
				
			||||||
 | 
					    image/*)
 | 
				
			||||||
 | 
					        img2txt --gamma=0.6 --width="$width" "$path" && exit 4 || exit 1;;
 | 
				
			||||||
 | 
					    # Display information about media files:
 | 
				
			||||||
 | 
					    video/* | audio/*)
 | 
				
			||||||
 | 
					        exiftool "$path" && exit 5
 | 
				
			||||||
 | 
					        # Use sed to remove spaces so the output fits into the narrow window
 | 
				
			||||||
 | 
					        try mediainfo "$path" && { dump | trim | sed 's/  \+:/: /;';  exit 5; } || exit 1;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exit 1
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/auto.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/auto.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --auto
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/dual-home.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/dual-home.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output DP1 --off --output VIRTUAL1 --off --output eDP1 --mode 1920x1080 --pos 0x1080 --rotate normal --output HDMI1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output VGA1 --off
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/dual-mirror.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/dual-mirror.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output DP1 --off --output VIRTUAL1 --off --output eDP1 --mode 1920x1080 --rotate normal --output HDMI1 --primary --mode 1920x1080 --same-as eDP1 --output VGA1 --off
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/dual-wide.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/dual-wide.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output eDP1 --mode 1920x1080 --pos 320x1080 --rotate normal --output DP1 --mode 2560x1080 --pos 0x0 --rotate normal --output DP2 --off --output HDMI1 --off --output HDMI2 --off --output VIRTUAL1 --off
 | 
				
			||||||
							
								
								
									
										3
									
								
								screenlayouts/.screenlayout/dual.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								screenlayouts/.screenlayout/dual.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output VIRTUAL1 --off --output DP1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output HDMI1 --off --output eDP1 --mode 1920x1080 --pos 1920x0 --rotate normal --output VGA1 --off
 | 
				
			||||||
 | 
					xrandr --output "DVI-1-0" --off
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/hdmi.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/hdmi.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output eDP1 --off --output DVI-1 --off --output DP1 --off --output HDMI1 --mode 1920x1080 --pos 0x0 --rotate normal --output VGA1 --off
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/single.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/single.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output HDMI1 --off --output DVI-1 --off --output DP-1 --off --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output VGA1 --off --auto
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/threescreens.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/threescreens.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output VIRTUAL1 --off --output eDP1 --primary --mode 1920x1080 --pos 1080x1080 --rotate normal --output DP1 --off --output HDMI2 --off --output HDMI1 --mode 1920x1080 --pos 0x0 --rotate left --output DP2 --mode 2560x1080 --pos 1080x0 --rotate normal
 | 
				
			||||||
							
								
								
									
										2
									
								
								screenlayouts/.screenlayout/triple-screen.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								screenlayouts/.screenlayout/triple-screen.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					xrandr --output eDP-1 --primary --mode 1920x1080 --pos 2240x1080 --rotate normal --output DP-1 --off --output HDMI-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-2 --mode 2560x1080 --pos 1920x0 --rotate normal --output HDMI-2 --off
 | 
				
			||||||
							
								
								
									
										4
									
								
								scripts/.bin/colors.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										4
									
								
								scripts/.bin/colors.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					for i in {0..255} ; do
 | 
				
			||||||
 | 
					    printf "\x1b[38;5;${i}mcolour${i}\n"
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
							
								
								
									
										21
									
								
								scripts/.bin/compose-run
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								scripts/.bin/compose-run
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,21 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CWD=$PWD
 | 
				
			||||||
 | 
					if [ -z "$CONTAINER" ];
 | 
				
			||||||
 | 
					then
 | 
				
			||||||
 | 
					    CONTAINER=main
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					while [ -e "$PWD" -a "$PWD" != "/" ]
 | 
				
			||||||
 | 
					do
 | 
				
			||||||
 | 
					    if [ -e "$PWD/docker-compose.yml" ]; then
 | 
				
			||||||
 | 
					      docker-compose run --rm main $* 
 | 
				
			||||||
 | 
					      exit $?
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					      cd `dirname $PWD`
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cd $CWD
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eval $*
 | 
				
			||||||
							
								
								
									
										4
									
								
								scripts/.bin/copybib
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										4
									
								
								scripts/.bin/copybib
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					cat ~/Exported\ Items.bib | sed -n 's/@.*{\(.*\),/\\cite{\1}/p' | xclip -selection clipboard
 | 
				
			||||||
 | 
					sleep 1
 | 
				
			||||||
 | 
					cat ~/Exported\ Items.bib | xclip -selection clipboard
 | 
				
			||||||
							
								
								
									
										14
									
								
								scripts/.bin/deshake-video.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										14
									
								
								scripts/.bin/deshake-video.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					# Encode a video in DVD quality (-crf 23) and use the video stabilization/deshaking plugin
 | 
				
			||||||
 | 
					# https://ffmpeg.org/ffmpeg-filters.html#toc-vidstabdetect-1
 | 
				
			||||||
 | 
					for VIDEO in "$@";
 | 
				
			||||||
 | 
					do
 | 
				
			||||||
 | 
					    DEST=converted/$VIDEO
 | 
				
			||||||
 | 
					    if [ -f $DEST ]; then
 | 
				
			||||||
 | 
					        echo "File $VIDEO already converted"
 | 
				
			||||||
 | 
					        continue
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    mkdir -p converted
 | 
				
			||||||
 | 
					    ffmpeg -i "$VIDEO" -vf vidstabdetect -f null -
 | 
				
			||||||
 | 
					    ffmpeg -i "$VIDEO" -vf vidstabtransform=smoothing=30:input="transforms.trf" -crf 23 "$DEST"
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
							
								
								
									
										32
									
								
								scripts/.bin/filemenu
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										32
									
								
								scripts/.bin/filemenu
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ "$#" -le 0 ]; then
 | 
				
			||||||
 | 
					    echo "Usage: $0 <FOLDER>"
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    input="$@"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "Input: "$input
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -f "$input" ]; then
 | 
				
			||||||
 | 
					    xdg-open "$input"
 | 
				
			||||||
 | 
					    exit $?
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    if [ -d "$input" ]; then
 | 
				
			||||||
 | 
					        echo "This is a folder" $input
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        >&2 echo 'Invalid argument:"'$input'"'
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if command -v rofi >/dev/null 2>&1;
 | 
				
			||||||
 | 
					then
 | 
				
			||||||
 | 
					    launcher="rofi -dmenu -i -mesg '""$input""'"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    launcher="dmenu -fn  "-*-cure-medium-*-*-*-11-*-*-*-*-*-*-*" -nb "#101010" -nf "#5f5f5f" -sb "#191
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 # find "$input" -maxdepth 1 ! -path "$input" -print | sh -c "$launcher" | xargs $0
 | 
				
			||||||
 | 
					ls -t1 "$input" | sh -c "$launcher" | xargs -I '{}' $0 "$input/{}"
 | 
				
			||||||
							
								
								
									
										14
									
								
								scripts/.bin/find-blob.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										14
									
								
								scripts/.bin/find-blob.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					obj_name="$1"
 | 
				
			||||||
 | 
					shift
 | 
				
			||||||
 | 
					git ls-files --stage \
 | 
				
			||||||
 | 
					    | if grep -q "$obj_name"; then
 | 
				
			||||||
 | 
					    echo Found in staging area. Run git ls-files --stage to see.
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					git log "$@" --pretty=format:'%T %h %s' \
 | 
				
			||||||
 | 
					    | while read tree commit subject ; do
 | 
				
			||||||
 | 
					    if git ls-tree -r $tree | grep -q "$obj_name" ; then
 | 
				
			||||||
 | 
					        echo $commit "$subject"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
							
								
								
									
										20
									
								
								scripts/.bin/gitback
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								scripts/.bin/gitback
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					if [[ "$#" -lt 1 ]]; then
 | 
				
			||||||
 | 
					    echo -e "Usage: $0 <date>"
 | 
				
			||||||
 | 
					    echo -e ""
 | 
				
			||||||
 | 
					    echo -e "\t<date> accepts the same formats as the date -d command"
 | 
				
			||||||
 | 
					    echo -e ""
 | 
				
			||||||
 | 
					    echo -e "Examples:"
 | 
				
			||||||
 | 
					    echo -e "\t$0 -2hour"
 | 
				
			||||||
 | 
					    echo -e "\t$0 -3day"
 | 
				
			||||||
 | 
					    echo -e "\t$0 -2hour25min"
 | 
				
			||||||
 | 
					    echo -e "\t$0 'today 3pm'"
 | 
				
			||||||
 | 
					    echo -e "\t$0 'today 3pm'"
 | 
				
			||||||
 | 
					    exit
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WHEN=$(date -d $1) || exit
 | 
				
			||||||
 | 
					shift
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					GIT_AUTHOR_DATE="$WHEN" GIT_COMMITTER_DATE="$WHEN" git commit --amend --no-edit --date="$WHEN"
 | 
				
			||||||
@@ -1,6 +1,14 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
case "$1" in
 | 
					case "$1" in
 | 
				
			||||||
 | 
					    locknow)
 | 
				
			||||||
 | 
					        scrot /tmp/screen.png
 | 
				
			||||||
 | 
					        convert /tmp/screen.png -scale 10% -scale 1000% /tmp/screen.png
 | 
				
			||||||
 | 
					        i3lock -e -i /tmp/screen.png
 | 
				
			||||||
 | 
					        ;;
 | 
				
			||||||
 | 
					    autolock)
 | 
				
			||||||
 | 
					        xautolock -time 10 -corners "----" -locker "$0 locknow"
 | 
				
			||||||
 | 
					        ;;
 | 
				
			||||||
    lock)
 | 
					    lock)
 | 
				
			||||||
        xautolock -locknow
 | 
					        xautolock -locknow
 | 
				
			||||||
            ;;
 | 
					            ;;
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user